Class: GroupDocs::DataSource
- Inherits:
-
Api::Entity
- Object
- Api::Entity
- GroupDocs::DataSource
- Defined in:
- lib/groupdocs/datasource.rb
Defined Under Namespace
Classes: Field
Instance Attribute Summary collapse
-
#created_on ⇒ Time
Converts timestamp which is return by API server to Time object.
- #descr ⇒ Object (also: #description)
- #fields ⇒ Object
- #id ⇒ Object
-
#modified_on ⇒ Time
Converts timestamp which is return by API server to Time object.
- #questionnaire_id ⇒ Object
Class Method Summary collapse
-
.get!(id, options = {}, access = {}) ⇒ GroupDocs::DataSource?
Returns datasource by given identifier.
Instance Method Summary collapse
-
#add!(access = {}) ⇒ Object
Adds datasource.
-
#add_field(field) ⇒ Object
Adds field to datasource.
-
#remove!(access = {}) ⇒ Object
Removes datasource.
-
#update!(access = {}) ⇒ Object
Updates datasource.
Methods inherited from Api::Entity
#initialize, #inspect, #to_hash
Constructor Details
This class inherits a constructor from GroupDocs::Api::Entity
Instance Attribute Details
#created_on ⇒ Time
Converts timestamp which is return by API server to Time object.
38 39 40 |
# File 'lib/groupdocs/datasource.rb', line 38 def created_on @created_on end |
#descr ⇒ Object Also known as: description
34 35 36 |
# File 'lib/groupdocs/datasource.rb', line 34 def descr @descr end |
#fields ⇒ Object
42 43 44 |
# File 'lib/groupdocs/datasource.rb', line 42 def fields @fields end |
#id ⇒ Object
32 33 34 |
# File 'lib/groupdocs/datasource.rb', line 32 def id @id end |
#modified_on ⇒ Time
Converts timestamp which is return by API server to Time object.
40 41 42 |
# File 'lib/groupdocs/datasource.rb', line 40 def modified_on @modified_on end |
#questionnaire_id ⇒ Object
36 37 38 |
# File 'lib/groupdocs/datasource.rb', line 36 def questionnaire_id @questionnaire_id end |
Class Method Details
.get!(id, options = {}, access = {}) ⇒ GroupDocs::DataSource?
Returns datasource by given identifier.
17 18 19 20 21 22 23 24 25 26 27 28 29 |
# File 'lib/groupdocs/datasource.rb', line 17 def self.get!(id, = {}, access = {}) api = Api::Request.new do |request| request[:access] = access request[:method] = :GET request[:path] = "/merge/{{client_id}}/datasources/#{id}" end api.add_params() json = api.execute! DataSource.new(json[:datasource]) rescue BadResponseError nil end |
Instance Method Details
#add!(access = {}) ⇒ Object
Adds datasource.
110 111 112 113 114 115 116 117 118 119 |
# File 'lib/groupdocs/datasource.rb', line 110 def add!(access = {}) json = Api::Request.new do |request| request[:access] = access request[:method] = :POST request[:path] = '/merge/{{client_id}}/datasources' request[:request_body] = to_hash end.execute! self.id = json[:datasource_id] end |
#add_field(field) ⇒ Object
Adds field to datasource.
89 90 91 92 93 94 95 |
# File 'lib/groupdocs/datasource.rb', line 89 def add_field(field) field.is_a?(GroupDocs::DataSource::Field) or raise ArgumentError, "Field should be GroupDocs::DataSource::Field object, received: #{field.inspect}" @fields ||= Array.new @fields << field end |
#remove!(access = {}) ⇒ Object
Removes datasource.
150 151 152 153 154 155 156 157 158 159 |
# File 'lib/groupdocs/datasource.rb', line 150 def remove!(access = {}) Api::Request.new do |request| request[:access] = access request[:method] = :DELETE request[:path] = "/merge/{{client_id}}/datasources/#{id}" end.execute! # TODO: fix this in API rescue RestClient::BadRequest nil end |
#update!(access = {}) ⇒ Object
Updates datasource.
134 135 136 137 138 139 140 141 |
# File 'lib/groupdocs/datasource.rb', line 134 def update!(access = {}) Api::Request.new do |request| request[:access] = access request[:method] = :PUT request[:path] = "/merge/{{client_id}}/datasources/#{id}" request[:request_body] = to_hash end.execute! end |