groupdocs 2.2.0 → 2.3.0
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.
- checksums.yaml +7 -0
- data/.travis.yml +9 -9
- data/CHANGELOG.md +482 -477
- data/Gemfile +3 -3
- data/LICENSE.txt +21 -21
- data/README.md +94 -94
- data/Rakefile +9 -9
- data/examples/README.md +12 -12
- data/examples/api-samples/Gemfile +5 -5
- data/examples/api-samples/Gemfile.lock +49 -49
- data/examples/api-samples/README.md +23 -23
- data/examples/api-samples/public/css/style.css +229 -229
- data/examples/api-samples/public/docs/annotation-sample.html +167 -167
- data/examples/api-samples/public/docs/docco.css +500 -500
- data/examples/api-samples/public/docs/envelope-sample.html +374 -374
- data/examples/api-samples/public/docs/sample01.html +181 -181
- data/examples/api-samples/public/docs/sample02.html +199 -199
- data/examples/api-samples/public/docs/sample03.html +318 -318
- data/examples/api-samples/public/docs/sample04.html +217 -217
- data/examples/api-samples/public/docs/sample05.html +296 -296
- data/examples/api-samples/public/docs/sample06.html +347 -347
- data/examples/api-samples/public/docs/sample07.html +209 -209
- data/examples/api-samples/public/docs/sample08.html +277 -277
- data/examples/api-samples/public/docs/sample09.html +314 -314
- data/examples/api-samples/public/docs/sample10.html +270 -270
- data/examples/api-samples/public/docs/sample11.html +462 -462
- data/examples/api-samples/public/docs/sample12.html +199 -199
- data/examples/api-samples/public/docs/sample13.html +201 -201
- data/examples/api-samples/public/docs/sample14.html +204 -204
- data/examples/api-samples/public/docs/sample15.html +182 -182
- data/examples/api-samples/public/docs/sample16.html +234 -234
- data/examples/api-samples/public/docs/sample17.html +309 -309
- data/examples/api-samples/public/docs/sample18.html +721 -721
- data/examples/api-samples/public/docs/sample19.html +631 -631
- data/examples/api-samples/public/docs/sample20.html +230 -230
- data/examples/api-samples/public/docs/sample21.html +790 -790
- data/examples/api-samples/public/docs/sample22.html +408 -408
- data/examples/api-samples/public/docs/sample25.html +550 -550
- data/examples/api-samples/public/templates/base-simple_source.html +191 -191
- data/examples/api-samples/public/templates/testdocument.html +100 -100
- data/examples/api-samples/public/templates/welcome.htm +137 -137
- data/examples/api-samples/samples/annotation-sample.rb +56 -56
- data/examples/api-samples/samples/envelope-sample.rb +133 -133
- data/examples/api-samples/samples/sample01.rb +44 -44
- data/examples/api-samples/samples/sample02.rb +50 -50
- data/examples/api-samples/samples/sample03.rb +79 -79
- data/examples/api-samples/samples/sample04.rb +54 -54
- data/examples/api-samples/samples/sample05.rb +83 -83
- data/examples/api-samples/samples/sample06.rb +86 -86
- data/examples/api-samples/samples/sample07.rb +59 -59
- data/examples/api-samples/samples/sample08.rb +76 -76
- data/examples/api-samples/samples/sample09.rb +85 -85
- data/examples/api-samples/samples/sample10.rb +70 -70
- data/examples/api-samples/samples/sample11.rb +132 -132
- data/examples/api-samples/samples/sample12.rb +48 -48
- data/examples/api-samples/samples/sample13.rb +49 -49
- data/examples/api-samples/samples/sample14.rb +54 -54
- data/examples/api-samples/samples/sample15.rb +43 -43
- data/examples/api-samples/samples/sample16.rb +57 -57
- data/examples/api-samples/samples/sample17.rb +70 -70
- data/examples/api-samples/samples/sample18.rb +190 -190
- data/examples/api-samples/samples/sample19.rb +188 -188
- data/examples/api-samples/samples/sample20.rb +68 -68
- data/examples/api-samples/samples/sample21.rb +212 -212
- data/examples/api-samples/samples/sample22.rb +109 -109
- data/examples/api-samples/samples/sample25.rb +127 -127
- data/examples/api-samples/views/_others_samples.haml +233 -233
- data/examples/api-samples/views/annotation_sample.haml +63 -63
- data/examples/api-samples/views/envelope_sample.haml +72 -72
- data/examples/api-samples/views/index.haml +235 -235
- data/examples/api-samples/views/layout.haml +3 -3
- data/examples/api-samples/views/sample01.haml +63 -63
- data/examples/api-samples/views/sample02.haml +52 -52
- data/examples/api-samples/views/sample03.haml +87 -87
- data/examples/api-samples/views/sample04.haml +55 -55
- data/examples/api-samples/views/sample05.haml +86 -86
- data/examples/api-samples/views/sample06.haml +58 -58
- data/examples/api-samples/views/sample07.haml +52 -52
- data/examples/api-samples/views/sample08.haml +100 -100
- data/examples/api-samples/views/sample09.haml +95 -95
- data/examples/api-samples/views/sample10.haml +93 -93
- data/examples/api-samples/views/sample11.haml +140 -140
- data/examples/api-samples/views/sample12.haml +68 -68
- data/examples/api-samples/views/sample13.haml +64 -64
- data/examples/api-samples/views/sample14.haml +60 -60
- data/examples/api-samples/views/sample15.haml +51 -51
- data/examples/api-samples/views/sample16.haml +50 -50
- data/examples/api-samples/views/sample17.haml +54 -54
- data/examples/api-samples/views/sample18.haml +143 -143
- data/examples/api-samples/views/sample19.haml +92 -92
- data/examples/api-samples/views/sample20.haml +54 -54
- data/examples/api-samples/views/sample21.haml +123 -123
- data/examples/api-samples/views/sample22.haml +106 -106
- data/examples/api-samples/views/sample25.haml +101 -101
- data/examples/api-samples/views/sample31.haml +2 -2
- data/examples/api-samples/web.rb +20 -20
- data/examples/viewer/Gemfile +5 -5
- data/examples/viewer/app.rb +52 -52
- data/groupdocs.gemspec +31 -31
- data/lib/groupdocs.rb +62 -62
- data/lib/groupdocs/api.rb +6 -6
- data/lib/groupdocs/api/entity.rb +112 -112
- data/lib/groupdocs/api/helpers.rb +11 -11
- data/lib/groupdocs/api/helpers/access_mode_helper.rb +27 -27
- data/lib/groupdocs/api/helpers/access_rights_helper.rb +55 -55
- data/lib/groupdocs/api/helpers/accessor_helper.rb +30 -30
- data/lib/groupdocs/api/helpers/byte_flag_helper.rb +49 -49
- data/lib/groupdocs/api/helpers/credentials_helper.rb +35 -35
- data/lib/groupdocs/api/helpers/mime_helper.rb +21 -21
- data/lib/groupdocs/api/helpers/path_helper.rb +28 -28
- data/lib/groupdocs/api/helpers/rest_helper.rb +99 -99
- data/lib/groupdocs/api/helpers/signature_public_helper.rb +22 -22
- data/lib/groupdocs/api/helpers/status_helper.rb +27 -27
- data/lib/groupdocs/api/helpers/url_helper.rb +101 -101
- data/lib/groupdocs/api/request.rb +91 -91
- data/lib/groupdocs/datasource.rb +249 -249
- data/lib/groupdocs/datasource/field.rb +39 -39
- data/lib/groupdocs/document.rb +1550 -1550
- data/lib/groupdocs/document/annotation.rb +421 -421
- data/lib/groupdocs/document/annotation/reply.rb +173 -173
- data/lib/groupdocs/document/annotation/reviewer.rb +66 -66
- data/lib/groupdocs/document/change.rb +56 -56
- data/lib/groupdocs/document/field.rb +53 -53
- data/lib/groupdocs/document/metadata.rb +32 -32
- data/lib/groupdocs/document/rectangle.rb +18 -18
- data/lib/groupdocs/document/view.rb +36 -36
- data/lib/groupdocs/errors.rb +8 -8
- data/lib/groupdocs/job.rb +468 -468
- data/lib/groupdocs/questionnaire.rb +530 -530
- data/lib/groupdocs/questionnaire/collector.rb +335 -335
- data/lib/groupdocs/questionnaire/execution.rb +181 -181
- data/lib/groupdocs/questionnaire/page.rb +43 -43
- data/lib/groupdocs/questionnaire/question.rb +108 -108
- data/lib/groupdocs/questionnaire/question/answer.rb +15 -15
- data/lib/groupdocs/signature.rb +380 -380
- data/lib/groupdocs/signature/contact.rb +181 -181
- data/lib/groupdocs/signature/envelope.rb +747 -747
- data/lib/groupdocs/signature/envelope/log.rb +20 -20
- data/lib/groupdocs/signature/field.rb +286 -286
- data/lib/groupdocs/signature/field/location.rb +71 -71
- data/lib/groupdocs/signature/form.rb +804 -804
- data/lib/groupdocs/signature/list.rb +92 -92
- data/lib/groupdocs/signature/recipient.rb +79 -79
- data/lib/groupdocs/signature/role.rb +54 -54
- data/lib/groupdocs/signature/shared.rb +6 -6
- data/lib/groupdocs/signature/shared/document_methods.rb +158 -158
- data/lib/groupdocs/signature/shared/entity_fields.rb +76 -76
- data/lib/groupdocs/signature/shared/entity_methods.rb +144 -144
- data/lib/groupdocs/signature/shared/field_methods.rb +354 -354
- data/lib/groupdocs/signature/shared/recipient_methods.rb +75 -75
- data/lib/groupdocs/signature/shared/resource_methods.rb +65 -65
- data/lib/groupdocs/signature/template.rb +124 -124
- data/lib/groupdocs/storage.rb +44 -44
- data/lib/groupdocs/storage/file.rb +432 -432
- data/lib/groupdocs/storage/folder.rb +288 -288
- data/lib/groupdocs/storage/package.rb +48 -48
- data/lib/groupdocs/storage/provider.rb +32 -32
- data/lib/groupdocs/subscription.rb +323 -323
- data/lib/groupdocs/subscription/limit.rb +20 -20
- data/lib/groupdocs/user.rb +955 -930
- data/lib/groupdocs/version.rb +3 -3
- data/spec/groupdocs/api/entity_spec.rb +55 -55
- data/spec/groupdocs/api/helpers/access_mode_helper_spec.rb +21 -21
- data/spec/groupdocs/api/helpers/access_rights_helper_spec.rb +43 -43
- data/spec/groupdocs/api/helpers/accessor_helper_spec.rb +16 -16
- data/spec/groupdocs/api/helpers/byte_flag_helper_spec.rb +23 -23
- data/spec/groupdocs/api/helpers/credentials_helpers_spec.rb +48 -48
- data/spec/groupdocs/api/helpers/mime_helper_spec.rb +16 -16
- data/spec/groupdocs/api/helpers/path_helper_spec.rb +15 -15
- data/spec/groupdocs/api/helpers/rest_helper_spec.rb +161 -161
- data/spec/groupdocs/api/helpers/signature_public_helper_spec.rb +21 -21
- data/spec/groupdocs/api/helpers/status_helper_spec.rb +22 -22
- data/spec/groupdocs/api/helpers/url_helper_spec.rb +112 -112
- data/spec/groupdocs/api/request_spec.rb +112 -112
- data/spec/groupdocs/datasource/field_spec.rb +29 -29
- data/spec/groupdocs/datasource_spec.rb +145 -145
- data/spec/groupdocs/document/annotation/reply_spec.rb +154 -154
- data/spec/groupdocs/document/annotation/reviewer_spec.rb +51 -51
- data/spec/groupdocs/document/annotation_spec.rb +234 -234
- data/spec/groupdocs/document/change_spec.rb +39 -39
- data/spec/groupdocs/document/field_spec.rb +28 -28
- data/spec/groupdocs/document/metadata_spec.rb +21 -21
- data/spec/groupdocs/document/rectangle_spec.rb +14 -14
- data/spec/groupdocs/document/view_spec.rb +33 -33
- data/spec/groupdocs/document_spec.rb +859 -859
- data/spec/groupdocs/errors_spec.rb +7 -7
- data/spec/groupdocs/job_spec.rb +323 -323
- data/spec/groupdocs/questionnaire/collector_spec.rb +197 -197
- data/spec/groupdocs/questionnaire/execution_spec.rb +162 -162
- data/spec/groupdocs/questionnaire/page_spec.rb +47 -47
- data/spec/groupdocs/questionnaire/question/answer_spec.rb +9 -9
- data/spec/groupdocs/questionnaire/question_spec.rb +75 -75
- data/spec/groupdocs/questionnaire_spec.rb +295 -295
- data/spec/groupdocs/signature/contact_spec.rb +142 -142
- data/spec/groupdocs/signature/envelope/log_spec.rb +15 -15
- data/spec/groupdocs/signature/envelope_spec.rb +384 -384
- data/spec/groupdocs/signature/field/location_spec.rb +40 -40
- data/spec/groupdocs/signature/field_spec.rb +235 -235
- data/spec/groupdocs/signature/form_spec.rb +205 -205
- data/spec/groupdocs/signature/list_spec.rb +87 -87
- data/spec/groupdocs/signature/recipient_spec.rb +26 -26
- data/spec/groupdocs/signature/role_spec.rb +47 -47
- data/spec/groupdocs/signature/template_spec.rb +80 -80
- data/spec/groupdocs/signature_spec.rb +194 -194
- data/spec/groupdocs/storage/file_spec.rb +303 -303
- data/spec/groupdocs/storage/folder_spec.rb +270 -270
- data/spec/groupdocs/storage/package_spec.rb +38 -38
- data/spec/groupdocs/storage/provider_spec.rb +21 -21
- data/spec/groupdocs/storage_spec.rb +27 -27
- data/spec/groupdocs/subscription/limit_spec.rb +16 -16
- data/spec/groupdocs/subscription_spec.rb +74 -74
- data/spec/groupdocs/user_spec.rb +257 -257
- data/spec/groupdocs_spec.rb +63 -63
- data/spec/spec_helper.rb +73 -73
- data/spec/support/json/annotation_access_set.json +11 -11
- data/spec/support/json/annotation_collaborators_get.json +16 -16
- data/spec/support/json/annotation_collaborators_set.json +16 -16
- data/spec/support/json/annotation_create.json +12 -12
- data/spec/support/json/annotation_list.json +32 -32
- data/spec/support/json/annotation_marker_move.json +10 -10
- data/spec/support/json/annotation_move.json +8 -8
- data/spec/support/json/annotation_remove.json +9 -9
- data/spec/support/json/annotation_replies_create.json +9 -9
- data/spec/support/json/annotation_replies_get.json +25 -25
- data/spec/support/json/annotation_reviewers_get.json +18 -18
- data/spec/support/json/comparison_changes.json +46 -46
- data/spec/support/json/comparison_compare.json +8 -8
- data/spec/support/json/comparison_document.json +10 -10
- data/spec/support/json/contact_add.json +12 -12
- data/spec/support/json/contacts_get.json +19 -19
- data/spec/support/json/contacts_import.json +8 -8
- data/spec/support/json/datasource_add.json +8 -8
- data/spec/support/json/datasource_get.json +22 -22
- data/spec/support/json/datasource_remove.json +8 -8
- data/spec/support/json/datasource_update.json +8 -8
- data/spec/support/json/delete_account.json +9 -9
- data/spec/support/json/document_access_info_get.json +14 -14
- data/spec/support/json/document_convert.json +8 -8
- data/spec/support/json/document_datasource.json +10 -10
- data/spec/support/json/document_fields.json +34 -34
- data/spec/support/json/document_formats.json +8 -8
- data/spec/support/json/document_metadata.json +15 -15
- data/spec/support/json/document_page_images_get.json +20 -20
- data/spec/support/json/document_questionnaire_create.json +9 -9
- data/spec/support/json/document_questionnaires.json +23 -23
- data/spec/support/json/document_sharers_remove.json +8 -8
- data/spec/support/json/document_sharers_set.json +16 -16
- data/spec/support/json/document_thumbnails.json +24 -24
- data/spec/support/json/document_views.json +32 -32
- data/spec/support/json/envelope_get.json +46 -46
- data/spec/support/json/envelope_logs.json +16 -16
- data/spec/support/json/envelope_recipient_add.json +26 -26
- data/spec/support/json/envelopes_all.json +48 -48
- data/spec/support/json/envelopes_resources.json +31 -31
- data/spec/support/json/file_compress.json +8 -8
- data/spec/support/json/file_copy.json +14 -14
- data/spec/support/json/file_delete.json +5 -5
- data/spec/support/json/file_move.json +14 -14
- data/spec/support/json/file_upload.json +8 -8
- data/spec/support/json/folder_create.json +8 -8
- data/spec/support/json/folder_delete.json +5 -5
- data/spec/support/json/folder_list.json +22 -22
- data/spec/support/json/folder_move.json +8 -8
- data/spec/support/json/folder_sharers_get.json +16 -16
- data/spec/support/json/folder_sharers_remove.json +8 -8
- data/spec/support/json/folder_sharers_set.json +16 -16
- data/spec/support/json/form_get.json +21 -21
- data/spec/support/json/forms_all.json +23 -23
- data/spec/support/json/job_add_url.json +8 -8
- data/spec/support/json/job_create.json +8 -8
- data/spec/support/json/job_documents.json +40 -40
- data/spec/support/json/job_file_add.json +8 -8
- data/spec/support/json/job_get.json +30 -30
- data/spec/support/json/job_update.json +7 -7
- data/spec/support/json/jobs_get.json +58 -58
- data/spec/support/json/list_add.json +12 -12
- data/spec/support/json/lists_get.json +19 -19
- data/spec/support/json/package_create.json +7 -7
- data/spec/support/json/questionnaire_collector.json +17 -17
- data/spec/support/json/questionnaire_collectors.json +38 -38
- data/spec/support/json/questionnaire_collectors_add.json +10 -10
- data/spec/support/json/questionnaire_create.json +10 -10
- data/spec/support/json/questionnaire_datasources.json +26 -26
- data/spec/support/json/questionnaire_execution_add.json +9 -9
- data/spec/support/json/questionnaire_execution_status_set.json +8 -8
- data/spec/support/json/questionnaire_execution_update.json +8 -8
- data/spec/support/json/questionnaire_executions.json +28 -28
- data/spec/support/json/questionnaire_get.json +17 -17
- data/spec/support/json/questionnaire_remove.json +8 -8
- data/spec/support/json/questionnaire_update.json +8 -8
- data/spec/support/json/questionnaires_get.json +40 -40
- data/spec/support/json/sign_documents.json +16 -16
- data/spec/support/json/signature_create.json +12 -12
- data/spec/support/json/signature_field_add.json +25 -25
- data/spec/support/json/signature_fields_get.json +27 -27
- data/spec/support/json/signature_roles_get.json +17 -17
- data/spec/support/json/signatures_get.json +19 -19
- data/spec/support/json/storage_info.json +10 -10
- data/spec/support/json/subscription_plan_get.json +9 -9
- data/spec/support/json/subscription_plans_get.json +17 -17
- data/spec/support/json/template_get.json +35 -35
- data/spec/support/json/template_get_documents.json +15 -15
- data/spec/support/json/template_get_recipients.json +20 -20
- data/spec/support/json/templates_all.json +37 -37
- data/spec/support/json/templates_get.json +21 -21
- data/spec/support/json/update_account.json +10 -10
- data/spec/support/json/user_area.json +67 -67
- data/spec/support/json/user_embed_key.json +38 -38
- data/spec/support/json/user_get_embed_key.json +67 -67
- data/spec/support/json/user_login.json +67 -67
- data/spec/support/json/user_profile_get.json +24 -24
- data/spec/support/json/user_providers.json +31 -31
- data/spec/support/json/user_roles.json +25 -25
- data/spec/support/json/user_users_get.json +27 -27
- data/spec/support/shared_examples/api/entity.rb +39 -39
- data/spec/support/shared_examples/api/helpers/access_mode_helper.rb +11 -11
- data/spec/support/shared_examples/api/helpers/status_helper.rb +11 -11
- data/spec/support/shared_examples/signature/shared/document_methods.rb +68 -68
- data/spec/support/shared_examples/signature/shared/entity_fields.rb +56 -56
- data/spec/support/shared_examples/signature/shared/entity_methods.rb +116 -116
- data/spec/support/shared_examples/signature/shared/field_methods.rb +220 -220
- data/spec/support/shared_examples/signature/shared/recipient_methods.rb +46 -46
- data/spec/support/shared_examples/signature/shared/resource_methods.rb +46 -46
- metadata +35 -55
@@ -1,48 +1,48 @@
|
|
1
|
-
module GroupDocs
|
2
|
-
module Storage
|
3
|
-
class Package < Api::Entity
|
4
|
-
|
5
|
-
include Api::Helpers::Path
|
6
|
-
|
7
|
-
# @attr [String] name Package name
|
8
|
-
attr_accessor :name
|
9
|
-
# @attr [Array<GroupDocs::Storage::File, GroupDocs::Storage::Folder>] objects Storage entities to be packed
|
10
|
-
attr_accessor :objects
|
11
|
-
|
12
|
-
#
|
13
|
-
# Appends object to be packed.
|
14
|
-
#
|
15
|
-
# @param [GroupDocs::Storage::File, GroupDocs::Storage::Folder] object
|
16
|
-
#
|
17
|
-
def add(object)
|
18
|
-
@objects ||= Array.new
|
19
|
-
@objects << object
|
20
|
-
end
|
21
|
-
alias_method :<<, :add
|
22
|
-
|
23
|
-
#
|
24
|
-
# Creates package on server.
|
25
|
-
#
|
26
|
-
# @param [Hash] access Access credentials
|
27
|
-
# @option access [String] :client_id
|
28
|
-
# @option access [String] :private_key
|
29
|
-
# @return [String] URL of package for downloading
|
30
|
-
#
|
31
|
-
def create!(access = {})
|
32
|
-
paths = @objects.map do |object|
|
33
|
-
prepare_path("#{object.path}/#{object.name}")
|
34
|
-
end
|
35
|
-
|
36
|
-
json = Api::Request.new do |request|
|
37
|
-
request[:access] = access
|
38
|
-
request[:method] = :POST
|
39
|
-
request[:path] = "/storage/{{client_id}}/packages/#{name}.zip"
|
40
|
-
request[:request_body] = paths
|
41
|
-
end.execute!
|
42
|
-
|
43
|
-
json[:url]
|
44
|
-
end
|
45
|
-
|
46
|
-
end # Package
|
47
|
-
end # Storage
|
48
|
-
end # GroupDocs
|
1
|
+
module GroupDocs
|
2
|
+
module Storage
|
3
|
+
class Package < Api::Entity
|
4
|
+
|
5
|
+
include Api::Helpers::Path
|
6
|
+
|
7
|
+
# @attr [String] name Package name
|
8
|
+
attr_accessor :name
|
9
|
+
# @attr [Array<GroupDocs::Storage::File, GroupDocs::Storage::Folder>] objects Storage entities to be packed
|
10
|
+
attr_accessor :objects
|
11
|
+
|
12
|
+
#
|
13
|
+
# Appends object to be packed.
|
14
|
+
#
|
15
|
+
# @param [GroupDocs::Storage::File, GroupDocs::Storage::Folder] object
|
16
|
+
#
|
17
|
+
def add(object)
|
18
|
+
@objects ||= Array.new
|
19
|
+
@objects << object
|
20
|
+
end
|
21
|
+
alias_method :<<, :add
|
22
|
+
|
23
|
+
#
|
24
|
+
# Creates package on server.
|
25
|
+
#
|
26
|
+
# @param [Hash] access Access credentials
|
27
|
+
# @option access [String] :client_id
|
28
|
+
# @option access [String] :private_key
|
29
|
+
# @return [String] URL of package for downloading
|
30
|
+
#
|
31
|
+
def create!(access = {})
|
32
|
+
paths = @objects.map do |object|
|
33
|
+
prepare_path("#{object.path}/#{object.name}")
|
34
|
+
end
|
35
|
+
|
36
|
+
json = Api::Request.new do |request|
|
37
|
+
request[:access] = access
|
38
|
+
request[:method] = :POST
|
39
|
+
request[:path] = "/storage/{{client_id}}/packages/#{name}.zip"
|
40
|
+
request[:request_body] = paths
|
41
|
+
end.execute!
|
42
|
+
|
43
|
+
json[:url]
|
44
|
+
end
|
45
|
+
|
46
|
+
end # Package
|
47
|
+
end # Storage
|
48
|
+
end # GroupDocs
|
@@ -1,32 +1,32 @@
|
|
1
|
-
module GroupDocs
|
2
|
-
module Storage
|
3
|
-
class Provider < Api::Entity
|
4
|
-
|
5
|
-
# @attr [Integer] id
|
6
|
-
attr_accessor :id
|
7
|
-
# @attr [String] provider
|
8
|
-
attr_accessor :provider
|
9
|
-
# @attr [String] type
|
10
|
-
attr_accessor :type
|
11
|
-
# @attr [String] token
|
12
|
-
attr_accessor :token
|
13
|
-
# @attr [String] publicKey
|
14
|
-
attr_accessor :publicKey
|
15
|
-
# @attr [String] privateKey
|
16
|
-
attr_accessor :privateKey
|
17
|
-
# @attr [String] rootFolder
|
18
|
-
attr_accessor :rootFolder
|
19
|
-
# @attr [Boolean] isPrimary
|
20
|
-
attr_accessor :isPrimary
|
21
|
-
# @attr [String] serviceHost
|
22
|
-
attr_accessor :serviceHost
|
23
|
-
|
24
|
-
alias_accessor :public_key, :publicKey
|
25
|
-
alias_accessor :private_key, :privateKey
|
26
|
-
alias_accessor :root_folder, :rootFolder
|
27
|
-
alias_accessor :is_primary, :isPrimary
|
28
|
-
alias_accessor :service_host, :serviceHost
|
29
|
-
|
30
|
-
end # Provider
|
31
|
-
end # Storage
|
32
|
-
end # GroupDocs
|
1
|
+
module GroupDocs
|
2
|
+
module Storage
|
3
|
+
class Provider < Api::Entity
|
4
|
+
|
5
|
+
# @attr [Integer] id
|
6
|
+
attr_accessor :id
|
7
|
+
# @attr [String] provider
|
8
|
+
attr_accessor :provider
|
9
|
+
# @attr [String] type
|
10
|
+
attr_accessor :type
|
11
|
+
# @attr [String] token
|
12
|
+
attr_accessor :token
|
13
|
+
# @attr [String] publicKey
|
14
|
+
attr_accessor :publicKey
|
15
|
+
# @attr [String] privateKey
|
16
|
+
attr_accessor :privateKey
|
17
|
+
# @attr [String] rootFolder
|
18
|
+
attr_accessor :rootFolder
|
19
|
+
# @attr [Boolean] isPrimary
|
20
|
+
attr_accessor :isPrimary
|
21
|
+
# @attr [String] serviceHost
|
22
|
+
attr_accessor :serviceHost
|
23
|
+
|
24
|
+
alias_accessor :public_key, :publicKey
|
25
|
+
alias_accessor :private_key, :privateKey
|
26
|
+
alias_accessor :root_folder, :rootFolder
|
27
|
+
alias_accessor :is_primary, :isPrimary
|
28
|
+
alias_accessor :service_host, :serviceHost
|
29
|
+
|
30
|
+
end # Provider
|
31
|
+
end # Storage
|
32
|
+
end # GroupDocs
|
@@ -1,323 +1,323 @@
|
|
1
|
-
module GroupDocs
|
2
|
-
class Subscription < Api::Entity
|
3
|
-
|
4
|
-
require 'groupdocs/subscription/limit'
|
5
|
-
|
6
|
-
LIMITS = {
|
7
|
-
:annotations_limit => 'AnnotationsLimit',
|
8
|
-
:apicalls => 'APICalls',
|
9
|
-
:apiemails => 'APIEmails',
|
10
|
-
:assembly_limit => 'AssemblyLimit',
|
11
|
-
:branded => 'Branded',
|
12
|
-
:comparison_limit => 'ComparisonLimit',
|
13
|
-
:conversion_limit => 'ConversionLimit',
|
14
|
-
:documents_limit => 'DocumentsLimit',
|
15
|
-
:document_history_limit => 'DocumentHistoryLimit',
|
16
|
-
:document_size_limit => 'DocumentSizeLimit',
|
17
|
-
:document_tokens_limit => 'DocumentTokensLimit',
|
18
|
-
:sharing_limit => 'SharingLimit',
|
19
|
-
:signature_limit => 'SignatureLimit',
|
20
|
-
:storage_space_limit => 'StorageSpaceLimit',
|
21
|
-
:users_limit => 'UsersLimit',
|
22
|
-
}
|
23
|
-
|
24
|
-
#
|
25
|
-
# Returns current subscription plan.
|
26
|
-
#
|
27
|
-
# @example
|
28
|
-
# GroupDocs::Subscription.current!.name
|
29
|
-
# #=> 'Free'
|
30
|
-
#
|
31
|
-
# @param [Hash] access Access credentials
|
32
|
-
# @option access [String] :client_id
|
33
|
-
# @option access [String] :private_key
|
34
|
-
# @return [GroupDocs::Subscription]
|
35
|
-
#
|
36
|
-
def self.current!(access = {})
|
37
|
-
json = Api::Request.new do |request|
|
38
|
-
request[:access] = access
|
39
|
-
request[:method] = :GET
|
40
|
-
request[:path] = '/system/{{client_id}}/plan'
|
41
|
-
end.execute!
|
42
|
-
|
43
|
-
new(json)
|
44
|
-
end
|
45
|
-
|
46
|
-
#
|
47
|
-
# Simulate Assess For Pricing Plan.
|
48
|
-
#
|
49
|
-
# @param [String] discount_code Discount code
|
50
|
-
# @param [String] plan_id Subscription Plan Id
|
51
|
-
# @param [Hash] access Access credentials
|
52
|
-
# @option access [String] :client_id
|
53
|
-
# @option access [String] :private_key
|
54
|
-
# @return [Array] Invoices
|
55
|
-
#
|
56
|
-
def self.invoices!(discount_code, plan_id, access = {})
|
57
|
-
json = Api::Request.new do |request|
|
58
|
-
request[:access] = access
|
59
|
-
request[:method] = :GET
|
60
|
-
request[:path] = "/system/{{client_id}}/plans/#{plan_id}/discounts/#{discount_code}"
|
61
|
-
end.execute!
|
62
|
-
|
63
|
-
json[:invoices]
|
64
|
-
end
|
65
|
-
|
66
|
-
#
|
67
|
-
# Returns user subscription plan.
|
68
|
-
#
|
69
|
-
# @param [Hash] access Access credentials
|
70
|
-
# @option access [String] :client_id
|
71
|
-
# @option access [String] :private_key
|
72
|
-
# @return [GroupDocs::Subscription]
|
73
|
-
#
|
74
|
-
def self.subscription!(access = {})
|
75
|
-
Api::Request.new do |request|
|
76
|
-
request[:access] = access
|
77
|
-
request[:method] = :GET
|
78
|
-
request[:path] = '/system/{{client_id}}/subscription'
|
79
|
-
end.execute!
|
80
|
-
end
|
81
|
-
|
82
|
-
#
|
83
|
-
# Set subscription plan user plan.
|
84
|
-
# @param [Hash] plan Subscription Plan Info
|
85
|
-
# @param [String] product_id
|
86
|
-
# @param [Hash] access Access credentials
|
87
|
-
# @option access [String] :client_id
|
88
|
-
# @option access [String] :private_key
|
89
|
-
# @return [GroupDocs::Subscription]
|
90
|
-
#
|
91
|
-
def self.set_subscription!(plan, product_id, access = {})
|
92
|
-
Api::Request.new do |request|
|
93
|
-
request[:access] = access
|
94
|
-
request[:method] = :PUT
|
95
|
-
request[:path] = "/system/{{client_id}}/subscriptions/#{product_id}"
|
96
|
-
request[:request_body] = plan
|
97
|
-
end.execute!
|
98
|
-
end
|
99
|
-
|
100
|
-
#
|
101
|
-
# Set subscription plan user plan.
|
102
|
-
# @param [Hash] plan Update Subscription Plan Info
|
103
|
-
# @param [String] product_id
|
104
|
-
# @param [Hash] access Access credentials
|
105
|
-
# @option access [String] :client_id
|
106
|
-
# @option access [String] :private_key
|
107
|
-
# @return [GroupDocs::Subscription]
|
108
|
-
#
|
109
|
-
def self.update_subscription!(plan, product_id, access = {})
|
110
|
-
Api::Request.new do |request|
|
111
|
-
request[:access] = access
|
112
|
-
request[:method] = :POST
|
113
|
-
request[:path] = "/system/{{client_id}}/subscriptions/#{product_id}"
|
114
|
-
request[:request_body] = plan
|
115
|
-
end.execute!
|
116
|
-
end
|
117
|
-
|
118
|
-
#
|
119
|
-
# Returns countries.
|
120
|
-
#
|
121
|
-
# @param [Hash] access Access credentials
|
122
|
-
# @option access [String] :client_id
|
123
|
-
# @option access [String] :private_key
|
124
|
-
# @return [GroupDocs::Subscription]
|
125
|
-
#
|
126
|
-
def self.get_countries!(access = {})
|
127
|
-
json = Api::Request.new do |request|
|
128
|
-
request[:access] = access
|
129
|
-
request[:method] = :GET
|
130
|
-
request[:path] = '/system/{{client_id}}/countries'
|
131
|
-
end.execute!
|
132
|
-
|
133
|
-
json[:countries]
|
134
|
-
end
|
135
|
-
|
136
|
-
#
|
137
|
-
# Returns states.
|
138
|
-
#
|
139
|
-
# @param [String] name Country name
|
140
|
-
# @param [Hash] access Access credentials
|
141
|
-
# @option access [String] :client_id
|
142
|
-
# @option access [String] :private_key
|
143
|
-
# @return [GroupDocs::Subscription]
|
144
|
-
#
|
145
|
-
def self.get_states!(name, access = {})
|
146
|
-
json = Api::Request.new do |request|
|
147
|
-
request[:access] = access
|
148
|
-
request[:method] = :GET
|
149
|
-
request[:path] = "/system/{{client_id}}/countries/#{name}/states"
|
150
|
-
end.execute!
|
151
|
-
|
152
|
-
json[:states]
|
153
|
-
end
|
154
|
-
|
155
|
-
#
|
156
|
-
# Set user billing address.
|
157
|
-
#
|
158
|
-
# @param [Hash] billing Billing address info
|
159
|
-
# @param [Hash] access Access credentials
|
160
|
-
# @option access [String] :client_id
|
161
|
-
# @option access [String] :private_key
|
162
|
-
# @return [GroupDocs::Subscription]
|
163
|
-
#
|
164
|
-
def self.set_billing!(billing = {}, access = {})
|
165
|
-
json = Api::Request.new do |request|
|
166
|
-
request[:access] = access
|
167
|
-
request[:method] = :GET
|
168
|
-
request[:path] = "/system/{{client_id}}/billingaddress"
|
169
|
-
request[:request_body] = billing
|
170
|
-
end.execute!
|
171
|
-
|
172
|
-
json[:billing_address]
|
173
|
-
end
|
174
|
-
|
175
|
-
#
|
176
|
-
# Get invoices.
|
177
|
-
#
|
178
|
-
# @param [Hash] options
|
179
|
-
# @option options [String] :pageNumber
|
180
|
-
# @option options [String] :pageSize
|
181
|
-
# @param [Hash] access Access credentials
|
182
|
-
# @option access [String] :client_id
|
183
|
-
# @option access [String] :private_key
|
184
|
-
# @return [Array] Invoices
|
185
|
-
#
|
186
|
-
def self.get_invoices!(options = {}, access = {})
|
187
|
-
api = Api::Request.new do |request|
|
188
|
-
request[:access] = access
|
189
|
-
request[:method] = :GET
|
190
|
-
request[:path] = "/system/{{client_id}}/invoices"
|
191
|
-
end
|
192
|
-
api.add_params(options)
|
193
|
-
json = api.execute!
|
194
|
-
|
195
|
-
json[:invoices]
|
196
|
-
end
|
197
|
-
|
198
|
-
#
|
199
|
-
# Get subscription plans.
|
200
|
-
#
|
201
|
-
# @param [Hash] access Access credentials
|
202
|
-
# @option access [String] :client_id
|
203
|
-
# @option access [String] :private_key
|
204
|
-
#
|
205
|
-
def self.get_plans!(access = {})
|
206
|
-
Api::Request.new do |request|
|
207
|
-
request[:access] = access
|
208
|
-
request[:method] = :GET
|
209
|
-
request[:path] = "/system/{{client_id}}/usage"
|
210
|
-
end
|
211
|
-
end
|
212
|
-
|
213
|
-
#
|
214
|
-
# Returns purchase wizard info from billing provider.
|
215
|
-
#
|
216
|
-
# @param [Hash] access Access credentials
|
217
|
-
# @option access [String] :client_id
|
218
|
-
# @option access [String] :private_key
|
219
|
-
# @return [String] Url
|
220
|
-
#
|
221
|
-
def self.get_wizard!(access = {})
|
222
|
-
json = Api::Request.new do |request|
|
223
|
-
request[:access] = access
|
224
|
-
request[:method] = :GET
|
225
|
-
request[:path] = "/system/{{client_id}}/purchase/wizard"
|
226
|
-
end
|
227
|
-
|
228
|
-
json[:url]
|
229
|
-
end
|
230
|
-
|
231
|
-
|
232
|
-
|
233
|
-
|
234
|
-
#
|
235
|
-
# Changed in realise 1.5.8
|
236
|
-
#
|
237
|
-
# Returns all subscription plans for family.
|
238
|
-
#
|
239
|
-
# @param [Boolean] invalidate
|
240
|
-
# @param [Hash] access Access credentials
|
241
|
-
# @option access [String] :client_id
|
242
|
-
# @option access [String] :private_key
|
243
|
-
# @return [Array<GroupDocs::Subscription>]
|
244
|
-
#
|
245
|
-
def self.list!(invalidate, access = {})
|
246
|
-
api = Api::Request.new do |request|
|
247
|
-
request[:access] = access
|
248
|
-
request[:method] = :GET
|
249
|
-
request[:path] = '/system/{{client_id}}/plans/groupdocs'
|
250
|
-
end
|
251
|
-
api.add_params(invalidate: invalidate)
|
252
|
-
json = api.execute!
|
253
|
-
|
254
|
-
json[:metrics].map do |plan|
|
255
|
-
new(plan)
|
256
|
-
end
|
257
|
-
end
|
258
|
-
|
259
|
-
#
|
260
|
-
# Returns suggestions for a specified term
|
261
|
-
#
|
262
|
-
# @param [String] term A term to return suggestions for
|
263
|
-
# @param [Hash] access Access credentials
|
264
|
-
# @option access [String] :client_id
|
265
|
-
# @option access [String] :private_key
|
266
|
-
# @return [Array<GroupDocs::Subscription>]
|
267
|
-
#
|
268
|
-
def self.get_term!(term , access = {})
|
269
|
-
json = Api::Request.new do |request|
|
270
|
-
request[:access] = access
|
271
|
-
request[:method] = :GET
|
272
|
-
request[:path] = "/system/{{client_id}}/terms/#{term}/suggestions"
|
273
|
-
end.execute!
|
274
|
-
|
275
|
-
json[:suggestions].map do |element|
|
276
|
-
new(element)
|
277
|
-
end
|
278
|
-
end
|
279
|
-
|
280
|
-
|
281
|
-
|
282
|
-
# @attr [Integer] Id
|
283
|
-
attr_accessor :Id
|
284
|
-
# @attr [String] Name
|
285
|
-
attr_accessor :Name
|
286
|
-
# @attr [Integer] PricingPlanId
|
287
|
-
attr_accessor :PricingPlanId
|
288
|
-
# @attr [Integer] Price
|
289
|
-
attr_accessor :Price
|
290
|
-
# @attr [String] CurrencyCode
|
291
|
-
attr_accessor :CurrencyCode
|
292
|
-
|
293
|
-
# Human-readable accessors
|
294
|
-
alias_accessor :id, :Id
|
295
|
-
alias_accessor :name, :Name
|
296
|
-
alias_accessor :pricing_plan_id, :PricingPlanId
|
297
|
-
alias_accessor :price, :Price
|
298
|
-
alias_accessor :currency_code, :CurrencyCode
|
299
|
-
|
300
|
-
# Compatibility with response JSON
|
301
|
-
alias_method :ref_id=, :id=
|
302
|
-
|
303
|
-
#
|
304
|
-
# Dynamically generate accessors for existing subscription plan limits.
|
305
|
-
#
|
306
|
-
LIMITS.each do |snake, camel|
|
307
|
-
# @attr [GroupDocs::Subscription::Limit] limit
|
308
|
-
attr_accessor camel
|
309
|
-
|
310
|
-
# Human-readable accessors
|
311
|
-
alias_accessor snake, camel.to_sym
|
312
|
-
|
313
|
-
#
|
314
|
-
# Converts hash to subscription plan limit.
|
315
|
-
# @return [GroupDocs::Subscription::Limit]
|
316
|
-
#
|
317
|
-
define_method(snake) do
|
318
|
-
Limit.new(instance_variable_get(:"@#{camel}"))
|
319
|
-
end
|
320
|
-
end
|
321
|
-
|
322
|
-
end # Subscription
|
323
|
-
end # GroupDocs
|
1
|
+
module GroupDocs
|
2
|
+
class Subscription < Api::Entity
|
3
|
+
|
4
|
+
require 'groupdocs/subscription/limit'
|
5
|
+
|
6
|
+
LIMITS = {
|
7
|
+
:annotations_limit => 'AnnotationsLimit',
|
8
|
+
:apicalls => 'APICalls',
|
9
|
+
:apiemails => 'APIEmails',
|
10
|
+
:assembly_limit => 'AssemblyLimit',
|
11
|
+
:branded => 'Branded',
|
12
|
+
:comparison_limit => 'ComparisonLimit',
|
13
|
+
:conversion_limit => 'ConversionLimit',
|
14
|
+
:documents_limit => 'DocumentsLimit',
|
15
|
+
:document_history_limit => 'DocumentHistoryLimit',
|
16
|
+
:document_size_limit => 'DocumentSizeLimit',
|
17
|
+
:document_tokens_limit => 'DocumentTokensLimit',
|
18
|
+
:sharing_limit => 'SharingLimit',
|
19
|
+
:signature_limit => 'SignatureLimit',
|
20
|
+
:storage_space_limit => 'StorageSpaceLimit',
|
21
|
+
:users_limit => 'UsersLimit',
|
22
|
+
}
|
23
|
+
|
24
|
+
#
|
25
|
+
# Returns current subscription plan.
|
26
|
+
#
|
27
|
+
# @example
|
28
|
+
# GroupDocs::Subscription.current!.name
|
29
|
+
# #=> 'Free'
|
30
|
+
#
|
31
|
+
# @param [Hash] access Access credentials
|
32
|
+
# @option access [String] :client_id
|
33
|
+
# @option access [String] :private_key
|
34
|
+
# @return [GroupDocs::Subscription]
|
35
|
+
#
|
36
|
+
def self.current!(access = {})
|
37
|
+
json = Api::Request.new do |request|
|
38
|
+
request[:access] = access
|
39
|
+
request[:method] = :GET
|
40
|
+
request[:path] = '/system/{{client_id}}/plan'
|
41
|
+
end.execute!
|
42
|
+
|
43
|
+
new(json)
|
44
|
+
end
|
45
|
+
|
46
|
+
#
|
47
|
+
# Simulate Assess For Pricing Plan.
|
48
|
+
#
|
49
|
+
# @param [String] discount_code Discount code
|
50
|
+
# @param [String] plan_id Subscription Plan Id
|
51
|
+
# @param [Hash] access Access credentials
|
52
|
+
# @option access [String] :client_id
|
53
|
+
# @option access [String] :private_key
|
54
|
+
# @return [Array] Invoices
|
55
|
+
#
|
56
|
+
def self.invoices!(discount_code, plan_id, access = {})
|
57
|
+
json = Api::Request.new do |request|
|
58
|
+
request[:access] = access
|
59
|
+
request[:method] = :GET
|
60
|
+
request[:path] = "/system/{{client_id}}/plans/#{plan_id}/discounts/#{discount_code}"
|
61
|
+
end.execute!
|
62
|
+
|
63
|
+
json[:invoices]
|
64
|
+
end
|
65
|
+
|
66
|
+
#
|
67
|
+
# Returns user subscription plan.
|
68
|
+
#
|
69
|
+
# @param [Hash] access Access credentials
|
70
|
+
# @option access [String] :client_id
|
71
|
+
# @option access [String] :private_key
|
72
|
+
# @return [GroupDocs::Subscription]
|
73
|
+
#
|
74
|
+
def self.subscription!(access = {})
|
75
|
+
Api::Request.new do |request|
|
76
|
+
request[:access] = access
|
77
|
+
request[:method] = :GET
|
78
|
+
request[:path] = '/system/{{client_id}}/subscription'
|
79
|
+
end.execute!
|
80
|
+
end
|
81
|
+
|
82
|
+
#
|
83
|
+
# Set subscription plan user plan.
|
84
|
+
# @param [Hash] plan Subscription Plan Info
|
85
|
+
# @param [String] product_id
|
86
|
+
# @param [Hash] access Access credentials
|
87
|
+
# @option access [String] :client_id
|
88
|
+
# @option access [String] :private_key
|
89
|
+
# @return [GroupDocs::Subscription]
|
90
|
+
#
|
91
|
+
def self.set_subscription!(plan, product_id, access = {})
|
92
|
+
Api::Request.new do |request|
|
93
|
+
request[:access] = access
|
94
|
+
request[:method] = :PUT
|
95
|
+
request[:path] = "/system/{{client_id}}/subscriptions/#{product_id}"
|
96
|
+
request[:request_body] = plan
|
97
|
+
end.execute!
|
98
|
+
end
|
99
|
+
|
100
|
+
#
|
101
|
+
# Set subscription plan user plan.
|
102
|
+
# @param [Hash] plan Update Subscription Plan Info
|
103
|
+
# @param [String] product_id
|
104
|
+
# @param [Hash] access Access credentials
|
105
|
+
# @option access [String] :client_id
|
106
|
+
# @option access [String] :private_key
|
107
|
+
# @return [GroupDocs::Subscription]
|
108
|
+
#
|
109
|
+
def self.update_subscription!(plan, product_id, access = {})
|
110
|
+
Api::Request.new do |request|
|
111
|
+
request[:access] = access
|
112
|
+
request[:method] = :POST
|
113
|
+
request[:path] = "/system/{{client_id}}/subscriptions/#{product_id}"
|
114
|
+
request[:request_body] = plan
|
115
|
+
end.execute!
|
116
|
+
end
|
117
|
+
|
118
|
+
#
|
119
|
+
# Returns countries.
|
120
|
+
#
|
121
|
+
# @param [Hash] access Access credentials
|
122
|
+
# @option access [String] :client_id
|
123
|
+
# @option access [String] :private_key
|
124
|
+
# @return [GroupDocs::Subscription]
|
125
|
+
#
|
126
|
+
def self.get_countries!(access = {})
|
127
|
+
json = Api::Request.new do |request|
|
128
|
+
request[:access] = access
|
129
|
+
request[:method] = :GET
|
130
|
+
request[:path] = '/system/{{client_id}}/countries'
|
131
|
+
end.execute!
|
132
|
+
|
133
|
+
json[:countries]
|
134
|
+
end
|
135
|
+
|
136
|
+
#
|
137
|
+
# Returns states.
|
138
|
+
#
|
139
|
+
# @param [String] name Country name
|
140
|
+
# @param [Hash] access Access credentials
|
141
|
+
# @option access [String] :client_id
|
142
|
+
# @option access [String] :private_key
|
143
|
+
# @return [GroupDocs::Subscription]
|
144
|
+
#
|
145
|
+
def self.get_states!(name, access = {})
|
146
|
+
json = Api::Request.new do |request|
|
147
|
+
request[:access] = access
|
148
|
+
request[:method] = :GET
|
149
|
+
request[:path] = "/system/{{client_id}}/countries/#{name}/states"
|
150
|
+
end.execute!
|
151
|
+
|
152
|
+
json[:states]
|
153
|
+
end
|
154
|
+
|
155
|
+
#
|
156
|
+
# Set user billing address.
|
157
|
+
#
|
158
|
+
# @param [Hash] billing Billing address info
|
159
|
+
# @param [Hash] access Access credentials
|
160
|
+
# @option access [String] :client_id
|
161
|
+
# @option access [String] :private_key
|
162
|
+
# @return [GroupDocs::Subscription]
|
163
|
+
#
|
164
|
+
def self.set_billing!(billing = {}, access = {})
|
165
|
+
json = Api::Request.new do |request|
|
166
|
+
request[:access] = access
|
167
|
+
request[:method] = :GET
|
168
|
+
request[:path] = "/system/{{client_id}}/billingaddress"
|
169
|
+
request[:request_body] = billing
|
170
|
+
end.execute!
|
171
|
+
|
172
|
+
json[:billing_address]
|
173
|
+
end
|
174
|
+
|
175
|
+
#
|
176
|
+
# Get invoices.
|
177
|
+
#
|
178
|
+
# @param [Hash] options
|
179
|
+
# @option options [String] :pageNumber
|
180
|
+
# @option options [String] :pageSize
|
181
|
+
# @param [Hash] access Access credentials
|
182
|
+
# @option access [String] :client_id
|
183
|
+
# @option access [String] :private_key
|
184
|
+
# @return [Array] Invoices
|
185
|
+
#
|
186
|
+
def self.get_invoices!(options = {}, access = {})
|
187
|
+
api = Api::Request.new do |request|
|
188
|
+
request[:access] = access
|
189
|
+
request[:method] = :GET
|
190
|
+
request[:path] = "/system/{{client_id}}/invoices"
|
191
|
+
end
|
192
|
+
api.add_params(options)
|
193
|
+
json = api.execute!
|
194
|
+
|
195
|
+
json[:invoices]
|
196
|
+
end
|
197
|
+
|
198
|
+
#
|
199
|
+
# Get subscription plans.
|
200
|
+
#
|
201
|
+
# @param [Hash] access Access credentials
|
202
|
+
# @option access [String] :client_id
|
203
|
+
# @option access [String] :private_key
|
204
|
+
#
|
205
|
+
def self.get_plans!(access = {})
|
206
|
+
Api::Request.new do |request|
|
207
|
+
request[:access] = access
|
208
|
+
request[:method] = :GET
|
209
|
+
request[:path] = "/system/{{client_id}}/usage"
|
210
|
+
end
|
211
|
+
end
|
212
|
+
|
213
|
+
#
|
214
|
+
# Returns purchase wizard info from billing provider.
|
215
|
+
#
|
216
|
+
# @param [Hash] access Access credentials
|
217
|
+
# @option access [String] :client_id
|
218
|
+
# @option access [String] :private_key
|
219
|
+
# @return [String] Url
|
220
|
+
#
|
221
|
+
def self.get_wizard!(access = {})
|
222
|
+
json = Api::Request.new do |request|
|
223
|
+
request[:access] = access
|
224
|
+
request[:method] = :GET
|
225
|
+
request[:path] = "/system/{{client_id}}/purchase/wizard"
|
226
|
+
end
|
227
|
+
|
228
|
+
json[:url]
|
229
|
+
end
|
230
|
+
|
231
|
+
|
232
|
+
|
233
|
+
|
234
|
+
#
|
235
|
+
# Changed in realise 1.5.8
|
236
|
+
#
|
237
|
+
# Returns all subscription plans for family.
|
238
|
+
#
|
239
|
+
# @param [Boolean] invalidate
|
240
|
+
# @param [Hash] access Access credentials
|
241
|
+
# @option access [String] :client_id
|
242
|
+
# @option access [String] :private_key
|
243
|
+
# @return [Array<GroupDocs::Subscription>]
|
244
|
+
#
|
245
|
+
def self.list!(invalidate, access = {})
|
246
|
+
api = Api::Request.new do |request|
|
247
|
+
request[:access] = access
|
248
|
+
request[:method] = :GET
|
249
|
+
request[:path] = '/system/{{client_id}}/plans/groupdocs'
|
250
|
+
end
|
251
|
+
api.add_params(invalidate: invalidate)
|
252
|
+
json = api.execute!
|
253
|
+
|
254
|
+
json[:metrics].map do |plan|
|
255
|
+
new(plan)
|
256
|
+
end
|
257
|
+
end
|
258
|
+
|
259
|
+
#
|
260
|
+
# Returns suggestions for a specified term
|
261
|
+
#
|
262
|
+
# @param [String] term A term to return suggestions for
|
263
|
+
# @param [Hash] access Access credentials
|
264
|
+
# @option access [String] :client_id
|
265
|
+
# @option access [String] :private_key
|
266
|
+
# @return [Array<GroupDocs::Subscription>]
|
267
|
+
#
|
268
|
+
def self.get_term!(term , access = {})
|
269
|
+
json = Api::Request.new do |request|
|
270
|
+
request[:access] = access
|
271
|
+
request[:method] = :GET
|
272
|
+
request[:path] = "/system/{{client_id}}/terms/#{term}/suggestions"
|
273
|
+
end.execute!
|
274
|
+
|
275
|
+
json[:suggestions].map do |element|
|
276
|
+
new(element)
|
277
|
+
end
|
278
|
+
end
|
279
|
+
|
280
|
+
|
281
|
+
|
282
|
+
# @attr [Integer] Id
|
283
|
+
attr_accessor :Id
|
284
|
+
# @attr [String] Name
|
285
|
+
attr_accessor :Name
|
286
|
+
# @attr [Integer] PricingPlanId
|
287
|
+
attr_accessor :PricingPlanId
|
288
|
+
# @attr [Integer] Price
|
289
|
+
attr_accessor :Price
|
290
|
+
# @attr [String] CurrencyCode
|
291
|
+
attr_accessor :CurrencyCode
|
292
|
+
|
293
|
+
# Human-readable accessors
|
294
|
+
alias_accessor :id, :Id
|
295
|
+
alias_accessor :name, :Name
|
296
|
+
alias_accessor :pricing_plan_id, :PricingPlanId
|
297
|
+
alias_accessor :price, :Price
|
298
|
+
alias_accessor :currency_code, :CurrencyCode
|
299
|
+
|
300
|
+
# Compatibility with response JSON
|
301
|
+
alias_method :ref_id=, :id=
|
302
|
+
|
303
|
+
#
|
304
|
+
# Dynamically generate accessors for existing subscription plan limits.
|
305
|
+
#
|
306
|
+
LIMITS.each do |snake, camel|
|
307
|
+
# @attr [GroupDocs::Subscription::Limit] limit
|
308
|
+
attr_accessor camel
|
309
|
+
|
310
|
+
# Human-readable accessors
|
311
|
+
alias_accessor snake, camel.to_sym
|
312
|
+
|
313
|
+
#
|
314
|
+
# Converts hash to subscription plan limit.
|
315
|
+
# @return [GroupDocs::Subscription::Limit]
|
316
|
+
#
|
317
|
+
define_method(snake) do
|
318
|
+
Limit.new(instance_variable_get(:"@#{camel}"))
|
319
|
+
end
|
320
|
+
end
|
321
|
+
|
322
|
+
end # Subscription
|
323
|
+
end # GroupDocs
|