groupdocs 1.2.9 → 1.2.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/lib/groupdocs/api/request.rb +1 -1
- data/lib/groupdocs/document.rb +18 -1
- data/lib/groupdocs/job.rb +20 -6
- data/lib/groupdocs/version.rb +1 -1
- data/spec/groupdocs/document_spec.rb +12 -0
- data/spec/groupdocs/job_spec.rb +16 -4
- data/spec/support/json/job_documents.json +2 -1
- metadata +4 -4
@@ -25,7 +25,7 @@ module GroupDocs
|
|
25
25
|
# end
|
26
26
|
#
|
27
27
|
# @param [Hash] options
|
28
|
-
# @option options [Symbol] :method HTTP method. One of :GET, :DOWNLOAD, :POST, :PUT or :DELETE.
|
28
|
+
# @option options [Symbol, String] :method HTTP method. One of :GET, :DOWNLOAD, :POST, :PUT or :DELETE.
|
29
29
|
# @option options [String] :path Path to send request to
|
30
30
|
# @option options [Hash] :headers Additional HTTP headers
|
31
31
|
# @option options [Hash] :access Access credentials hash
|
data/lib/groupdocs/document.rb
CHANGED
@@ -814,7 +814,7 @@ module GroupDocs
|
|
814
814
|
# @return [Array<Symbol>]
|
815
815
|
#
|
816
816
|
def set_shared_link_access_rights!(rights, access = {})
|
817
|
-
|
817
|
+
Api::Request.new do |request|
|
818
818
|
request[:access] = access
|
819
819
|
request[:method] = :PUT
|
820
820
|
request[:path] = "/ant/{{client_id}}/files/#{file.guid}/sharedLinkAccessRights"
|
@@ -822,6 +822,23 @@ module GroupDocs
|
|
822
822
|
end.execute!
|
823
823
|
end
|
824
824
|
|
825
|
+
#
|
826
|
+
# Sets session callback URL.
|
827
|
+
#
|
828
|
+
# @param [String] url Callback URL
|
829
|
+
# @param [Hash] access Access credentials
|
830
|
+
# @option access [String] :client_id
|
831
|
+
# @option access [String] :private_key
|
832
|
+
#
|
833
|
+
def set_session_callback!(url, access = {})
|
834
|
+
Api::Request.new do |request|
|
835
|
+
request[:access] = access
|
836
|
+
request[:method] = :PUT
|
837
|
+
request[:path] = "/ant/{{client_id}}/files/#{file.guid}/sessionCallbackUrl"
|
838
|
+
request[:request_body] = url
|
839
|
+
end.execute!
|
840
|
+
end
|
841
|
+
|
825
842
|
#
|
826
843
|
# Pass all unknown methods to file.
|
827
844
|
#
|
data/lib/groupdocs/job.rb
CHANGED
@@ -156,12 +156,12 @@ module GroupDocs
|
|
156
156
|
end
|
157
157
|
|
158
158
|
#
|
159
|
-
# Returns an
|
159
|
+
# Returns an hash of input and output documents associated to job.
|
160
160
|
#
|
161
161
|
# @param [Hash] access Access credentials
|
162
162
|
# @option access [String] :client_id
|
163
163
|
# @option access [String] :private_key
|
164
|
-
# @return [
|
164
|
+
# @return [Hash]
|
165
165
|
#
|
166
166
|
def documents!(access = {})
|
167
167
|
json = Api::Request.new do |request|
|
@@ -171,14 +171,28 @@ module GroupDocs
|
|
171
171
|
end.execute!
|
172
172
|
|
173
173
|
self.status = json[:job_status]
|
174
|
+
documents = {
|
175
|
+
inputs: [],
|
176
|
+
outputs: [],
|
177
|
+
}
|
178
|
+
|
179
|
+
# add input documents
|
174
180
|
if json[:inputs]
|
175
|
-
json[:inputs].
|
181
|
+
json[:inputs].each do |document|
|
176
182
|
document.merge!(file: GroupDocs::Storage::File.new(document))
|
177
|
-
Document.new(document)
|
183
|
+
documents[:inputs] << Document.new(document)
|
178
184
|
end
|
179
|
-
else
|
180
|
-
[]
|
181
185
|
end
|
186
|
+
|
187
|
+
# add output documents
|
188
|
+
if json[:outputs]
|
189
|
+
json[:outputs].each do |document|
|
190
|
+
document.merge!(file: GroupDocs::Storage::File.new(document))
|
191
|
+
documents[:outputs] << Document.new(document)
|
192
|
+
end
|
193
|
+
end
|
194
|
+
|
195
|
+
documents
|
182
196
|
end
|
183
197
|
|
184
198
|
#
|
data/lib/groupdocs/version.rb
CHANGED
@@ -770,6 +770,18 @@ describe GroupDocs::Document do
|
|
770
770
|
end
|
771
771
|
end
|
772
772
|
|
773
|
+
describe '#set_session_callback!' do
|
774
|
+
before(:each) do
|
775
|
+
mock_api_server('{ "status": "Ok", "result": {}}')
|
776
|
+
end
|
777
|
+
|
778
|
+
it 'accepts access credentials hash' do
|
779
|
+
lambda do
|
780
|
+
subject.set_session_callback!('http://www.example.com', client_id: 'client_id', private_key: 'private_key')
|
781
|
+
end.should_not raise_error(ArgumentError)
|
782
|
+
end
|
783
|
+
end
|
784
|
+
|
773
785
|
describe '#method_missing' do
|
774
786
|
it 'passes unknown methods to file object' do
|
775
787
|
-> { subject.name }.should_not raise_error(NoMethodError)
|
data/spec/groupdocs/job_spec.rb
CHANGED
@@ -151,17 +151,29 @@ describe GroupDocs::Job do
|
|
151
151
|
subject.status.should == :archived
|
152
152
|
end
|
153
153
|
|
154
|
-
it 'returns
|
155
|
-
|
154
|
+
it 'returns hash' do
|
155
|
+
subject.documents!.should be_a(Hash)
|
156
|
+
end
|
157
|
+
|
158
|
+
it 'returns array of input documents' do
|
159
|
+
documents = subject.documents![:inputs]
|
160
|
+
documents.should be_an(Array)
|
161
|
+
documents.each do |document|
|
162
|
+
document.should be_a(GroupDocs::Document)
|
163
|
+
end
|
164
|
+
end
|
165
|
+
|
166
|
+
it 'returns array of output documents' do
|
167
|
+
documents = subject.documents![:outputs]
|
156
168
|
documents.should be_an(Array)
|
157
169
|
documents.each do |document|
|
158
170
|
document.should be_a(GroupDocs::Document)
|
159
171
|
end
|
160
172
|
end
|
161
173
|
|
162
|
-
it 'returns empty
|
174
|
+
it 'returns empty arrays if there are no documents' do
|
163
175
|
mock_api_server('{ "status": "Ok", "result": {}}')
|
164
|
-
subject.documents!.should
|
176
|
+
subject.documents!.should == { inputs: [], outputs: [] }
|
165
177
|
end
|
166
178
|
end
|
167
179
|
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: groupdocs
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.2.
|
4
|
+
version: 1.2.10
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2013-02-
|
12
|
+
date: 2013-02-12 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: rest-client
|
@@ -462,7 +462,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
462
462
|
version: '0'
|
463
463
|
segments:
|
464
464
|
- 0
|
465
|
-
hash: -
|
465
|
+
hash: -4205405145410109468
|
466
466
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
467
467
|
none: false
|
468
468
|
requirements:
|
@@ -471,7 +471,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
471
471
|
version: '0'
|
472
472
|
segments:
|
473
473
|
- 0
|
474
|
-
hash: -
|
474
|
+
hash: -4205405145410109468
|
475
475
|
requirements: []
|
476
476
|
rubyforge_project:
|
477
477
|
rubygems_version: 1.8.24
|