lib/groupdocs/document.rb in groupdocs-0.2 vs lib/groupdocs/document.rb in groupdocs-0.2.1
- old
+ new
@@ -6,13 +6,13 @@
require 'groupdocs/document/field'
require 'groupdocs/document/metadata'
require 'groupdocs/document/rectangle'
require 'groupdocs/document/view'
- extend GroupDocs::Api::Sugar::Lookup
- include GroupDocs::Api::Helpers::Access
- include GroupDocs::Api::Helpers::Status
+ extend Extensions::Lookup
+ include Api::Helpers::AccessMode
+ include Api::Helpers::Status
#
# Returns an array of all documents on server.
#
# @param [String] path Starting path to look for documents
@@ -20,11 +20,11 @@
# @option access [String] :client_id
# @option access [String] :private_key
# @return [Array<GroupDocs::Storage::Document>]
#
def self.all!(path = '/', access = {})
- GroupDocs::Storage::File.all!(path, access).map(&:to_document)
+ Storage::File.all!(path, access).map(&:to_document)
end
#
# Returns an array of views for all documents.
#
@@ -35,20 +35,20 @@
# @option access [String] :client_id
# @option access [String] :private_key
# @return [Array<GroupDocs::Document::View>]
#
def self.views!(options = { page_index: 0 }, access = {})
- api = GroupDocs::Api::Request.new do |request|
+ api = Api::Request.new do |request|
request[:access] = access
request[:method] = :GET
request[:path] = "/doc/{{client_id}}/views"
end
api.add_params(options)
json = api.execute!
json[:views].map do |view|
- GroupDocs::Document::View.new(view)
+ Document::View.new(view)
end
end
# @attr [GroupDocs::Storage::File] file
attr_accessor :file
@@ -90,11 +90,11 @@
# @option access [String] :client_id
# @option access [String] :private_key
# @return [Symbol] One of :private, :restricted or :public access modes
#
def access_mode!(access = {})
- json = GroupDocs::Api::Request.new do |request|
+ json = Api::Request.new do |request|
request[:access] = access
request[:method] = :GET
request[:path] = "/doc/{{client_id}}/files/#{file.id}/accessinfo"
end.execute!
@@ -109,11 +109,11 @@
# @option access [String] :client_id
# @option access [String] :private_key
# @return [Symbol] Set access mode
#
def access_mode_set!(mode, access = {})
- api = GroupDocs::Api::Request.new do |request|
+ api = Api::Request.new do |request|
request[:access] = access
request[:method] = :PUT
request[:path] = "/doc/{{client_id}}/files/#{file.id}/accessinfo"
end
api.add_params(mode: parse_access_mode(mode))
@@ -131,11 +131,11 @@
# @option access [String] :client_id
# @option access [String] :private_key
# @return [Array<Symbol>]
#
def formats!(access = {})
- json = GroupDocs::Api::Request.new do |request|
+ json = Api::Request.new do |request|
request[:access] = access
request[:method] = :GET
request[:path] = "/doc/{{client_id}}/files/#{file.id}/formats"
end.execute!
@@ -151,17 +151,17 @@
# @option access [String] :client_id
# @option access [String] :private_key
# @return [GroupDocs::Document::MetaData]
#
def metadata!(access = {})
- json = GroupDocs::Api::Request.new do |request|
+ json = Api::Request.new do |request|
request[:access] = access
request[:method] = :GET
request[:path] = "/doc/{{client_id}}/files/#{file.id}/metadata"
end.execute!
- GroupDocs::Document::MetaData.new do |metadata|
+ Document::MetaData.new do |metadata|
metadata.id = json[:id]
metadata.guid = json[:guid]
metadata.page_count = json[:page_count]
metadata.views_count = json[:views_count]
if json[:last_view]
@@ -180,20 +180,20 @@
# @option access [String] :client_id
# @option access [String] :private_key
# @return [Array<GroupDocs::Document::Field>]
#
def fields!(options = {}, access = {})
- api = GroupDocs::Api::Request.new do |request|
+ api = Api::Request.new do |request|
request[:access] = access
request[:method] = :GET
request[:path] = "/doc/{{client_id}}/files/#{file.guid}/fields"
end
api.add_params(options)
json = api.execute!
json[:fields].map do |field|
- GroupDocs::Document::Field.new(field)
+ Document::Field.new(field)
end
end
#
# Returns an array of users a document is shared with.
@@ -202,18 +202,18 @@
# @option access [String] :client_id
# @option access [String] :private_key
# @return [Array<GroupDocs::User>]
#
def sharers!(access = {})
- json = GroupDocs::Api::Request.new do |request|
+ json = Api::Request.new do |request|
request[:access] = access
request[:method] = :GET
request[:path] = "/doc/{{client_id}}/files/#{file.id}/accessinfo"
end.execute!
json[:sharers].map do |user|
- GroupDocs::User.new(user)
+ User.new(user)
end
end
#
# Sets document sharers to given emails.
@@ -228,19 +228,19 @@
#
def sharers_set!(emails, access = {})
if emails.nil? || emails.empty?
sharers_clear!(access)
else
- json = GroupDocs::Api::Request.new do |request|
+ json = Api::Request.new do |request|
request[:access] = access
request[:method] = :PUT
request[:path] = "/doc/{{client_id}}/files/#{file.id}/sharers"
request[:request_body] = emails
end.execute!
json[:shared_users].map do |user|
- GroupDocs::User.new(user)
+ User.new(user)
end
end
end
#
@@ -250,11 +250,11 @@
# @option access [String] :client_id
# @option access [String] :private_key
# @return nil
#
def sharers_clear!(access = {})
- GroupDocs::Api::Request.new do |request|
+ Api::Request.new do |request|
request[:access] = access
request[:method] = :DELETE
request[:path] = "/doc/{{client_id}}/files/#{file.id}/sharers"
end.execute![:shared_users]
end
@@ -271,19 +271,19 @@
# @return [GroupDocs::Job] Created job
#
def convert!(format, options = {}, access = {})
options.merge!(new_type: format)
- api = GroupDocs::Api::Request.new do |request|
+ api = Api::Request.new do |request|
request[:access] = access
request[:method] = :POST
request[:path] = "/{{client_id}}/files/#{file.guid}"
end
api.add_params(options)
json = api.execute!
- GroupDocs::Job.new(id: json[:job_id])
+ Job.new(id: json[:job_id])
end
#
# Creates new job to merge datasource into document.
#
@@ -303,19 +303,19 @@
datasource.is_a?(GroupDocs::DataSource) or raise ArgumentError,
"Datasource should be GroupDocs::DataSource object, received: #{datasource.inspect}"
(options[:new_type].nil? || options[:email_results].nil?) and raise ArgumentError,
"Both :new_type and :email_results should be passed, received: #{options.inspect}"
- api = GroupDocs::Api::Request.new do |request|
+ api = Api::Request.new do |request|
request[:access] = access
request[:method] = :POST
request[:path] = "/merge/{{client_id}}/files/#{file.guid}/datasources/#{datasource.id}"
end
api.add_params(options)
json = api.execute!
- GroupDocs::Job.new(id: json[:job_id])
+ Job.new(id: json[:job_id])
end
#
# Returns an array of questionnaires.
#
@@ -323,18 +323,18 @@
# @option access [String] :client_id
# @option access [String] :private_key
# @return [Array<GroupDocs::Questionnaire>]
#
def questionnaires!(access = {})
- json = GroupDocs::Api::Request.new do |request|
+ json = Api::Request.new do |request|
request[:access] = access
request[:method] = :GET
request[:path] = "/merge/{{client_id}}/files/#{file.guid}/questionnaires"
end.execute!
json[:questionnaires].map do |questionnaire|
- GroupDocs::Questionnaire.new(questionnaire)
+ Questionnaire.new(questionnaire)
end
end
#
# Adds questionnaire to document.
@@ -348,11 +348,11 @@
#
def add_questionnaire!(questionnaire, access = {})
questionnaire.is_a?(GroupDocs::Questionnaire) or raise ArgumentError,
"Questionnaire should be GroupDocs::Questionnaire object, received: #{questionnaire.inspect}"
- GroupDocs::Api::Request.new do |request|
+ Api::Request.new do |request|
request[:access] = access
request[:method] = :PUT
request[:path] = "/merge/{{client_id}}/files/#{file.guid}/questionnaires/#{questionnaire.id}"
end.execute!
end
@@ -370,11 +370,11 @@
#
def create_questionnaire!(questionnaire, access = {})
questionnaire.is_a?(GroupDocs::Questionnaire) or raise ArgumentError,
"Questionnaire should be GroupDocs::Questionnaire object, received: #{questionnaire.inspect}"
- json = GroupDocs::Api::Request.new do |request|
+ json = Api::Request.new do |request|
request[:access] = access
request[:method] = :POST
request[:path] = "/merge/{{client_id}}/files/#{file.guid}/questionnaires"
request[:request_body] = questionnaire.to_hash
end.execute!
@@ -395,11 +395,11 @@
#
def remove_questionnaire!(questionnaire, access = {})
questionnaire.is_a?(GroupDocs::Questionnaire) or raise ArgumentError,
"Questionnaire should be GroupDocs::Questionnaire object, received: #{questionnaire.inspect}"
- GroupDocs::Api::Request.new do |request|
+ Api::Request.new do |request|
request[:access] = access
request[:method] = :DELETE
request[:path] = "/merge/{{client_id}}/files/#{file.guid}/questionnaires/#{questionnaire.id}"
end.execute!
end
@@ -411,19 +411,19 @@
# @option access [String] :client_id
# @option access [String] :private_key
# @return [Array<GroupDocs::Document::Annotation>]
#
def annotations!(access = {})
- json = GroupDocs::Api::Request.new do |request|
+ json = Api::Request.new do |request|
request[:access] = access
request[:method] = :GET
request[:path] = "/ant/{{client_id}}/files/#{file.guid}/annotations"
end.execute!
json[:annotations].map do |annotation|
annotation.merge!(document: self)
- GroupDocs::Document::Annotation.new(annotation)
+ Document::Annotation.new(annotation)
end
end
#
# Returns document details.
@@ -432,11 +432,11 @@
# @option access [String] :client_id
# @option access [String] :private_key
# @return [Hash]
#
def details!(access = {})
- api = GroupDocs::Api::Request.new do |request|
+ api = Api::Request.new do |request|
request[:access] = access
request[:method] = :GET
request[:path] = "/comparison/{{client_id}}/comparison/document"
end
api.add_params(guid: file.guid)
@@ -456,19 +456,19 @@
#
def compare!(document, access = {})
document.is_a?(GroupDocs::Document) or raise ArgumentError,
"Document should be GroupDocs::Document object, received: #{document.inspect}"
- api = GroupDocs::Api::Request.new do |request|
+ api = Api::Request.new do |request|
request[:access] = access
request[:method] = :GET
request[:path] = "/comparison/{{client_id}}/comparison/compare"
end
api.add_params(source: file.guid, target: document.file.guid)
json = api.execute!
- GroupDocs::Job.new(id: json[:job_id])
+ Job.new(id: json[:job_id])
end
#
# Returns an array of changes in document.
#
@@ -482,19 +482,19 @@
# @param [Hash] access Access credentials
# @option access [String] :client_id
# @option access [String] :private_key
#
def changes!(access = {})
- api = GroupDocs::Api::Request.new do |request|
+ api = Api::Request.new do |request|
request[:access] = access
request[:method] = :GET
request[:path] = "/comparison/{{client_id}}/comparison/changes"
end
api.add_params(resultFileId: file.guid)
json = api.execute!
json[:changes].map do |change|
- GroupDocs::Document::Change.new(change)
+ Document::Change.new(change)
end
end
#
# Pass all unknown methods to file.