aspose_storage_cloud 1.0.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.
@@ -0,0 +1,63 @@
1
+ module AsposeStorageCloud
2
+ #
3
+ class FileVersionsResponse < BaseObject
4
+ attr_accessor :file_versions, :code, :status
5
+ # attribute mapping from ruby-style variable name to JSON key
6
+ def self.attribute_map
7
+ {
8
+
9
+ #
10
+ :'file_versions' => :'FileVersions',
11
+
12
+ #
13
+ :'code' => :'Code',
14
+
15
+ #
16
+ :'status' => :'Status'
17
+
18
+ }
19
+ end
20
+
21
+ # attribute type
22
+ def self.swagger_types
23
+ {
24
+ :'file_versions' => :'Array<FileVersion>',
25
+ :'code' => :'String',
26
+ :'status' => :'String'
27
+
28
+ }
29
+ end
30
+
31
+ def initialize(attributes = {})
32
+ return if !attributes.is_a?(Hash) || attributes.empty?
33
+
34
+ # convert string to symbol for hash key
35
+ attributes = attributes.inject({}){|memo,(k,v)| memo[k.to_sym] = v; memo}
36
+
37
+
38
+ if attributes[:'FileVersions']
39
+ if (value = attributes[:'FileVersions']).is_a?(Array)
40
+ self.file_versions = value
41
+ end
42
+ end
43
+
44
+ if attributes[:'Code']
45
+ self.code = attributes[:'Code']
46
+ end
47
+
48
+ if attributes[:'Status']
49
+ self.status = attributes[:'Status']
50
+ end
51
+
52
+ end
53
+
54
+ def status=(status)
55
+ allowed_values = ["Continue", "SwitchingProtocols", "OK", "Created", "Accepted", "NonAuthoritativeInformation", "NoContent", "ResetContent", "PartialContent", "MultipleChoices", "Ambiguous", "MovedPermanently", "Moved", "Found", "Redirect", "SeeOther", "RedirectMethod", "NotModified", "UseProxy", "Unused", "TemporaryRedirect", "RedirectKeepVerb", "BadRequest", "Unauthorized", "PaymentRequired", "Forbidden", "NotFound", "MethodNotAllowed", "NotAcceptable", "ProxyAuthenticationRequired", "RequestTimeout", "Conflict", "Gone", "LengthRequired", "PreconditionFailed", "RequestEntityTooLarge", "RequestUriTooLong", "UnsupportedMediaType", "RequestedRangeNotSatisfiable", "ExpectationFailed", "UpgradeRequired", "InternalServerError", "NotImplemented", "BadGateway", "ServiceUnavailable", "GatewayTimeout", "HttpVersionNotSupported"]
56
+ if status && !allowed_values.include?(status)
57
+ fail "invalid value for 'status', must be one of #{allowed_values}"
58
+ end
59
+ @status = status
60
+ end
61
+
62
+ end
63
+ end
@@ -0,0 +1,63 @@
1
+ module AsposeStorageCloud
2
+ #
3
+ class FolderResponse < BaseObject
4
+ attr_accessor :files, :code, :status
5
+ # attribute mapping from ruby-style variable name to JSON key
6
+ def self.attribute_map
7
+ {
8
+
9
+ #
10
+ :'files' => :'Files',
11
+
12
+ #
13
+ :'code' => :'Code',
14
+
15
+ #
16
+ :'status' => :'Status'
17
+
18
+ }
19
+ end
20
+
21
+ # attribute type
22
+ def self.swagger_types
23
+ {
24
+ :'files' => :'Array<FileResponse>',
25
+ :'code' => :'String',
26
+ :'status' => :'String'
27
+
28
+ }
29
+ end
30
+
31
+ def initialize(attributes = {})
32
+ return if !attributes.is_a?(Hash) || attributes.empty?
33
+
34
+ # convert string to symbol for hash key
35
+ attributes = attributes.inject({}){|memo,(k,v)| memo[k.to_sym] = v; memo}
36
+
37
+
38
+ if attributes[:'Files']
39
+ if (value = attributes[:'Files']).is_a?(Array)
40
+ self.files = value
41
+ end
42
+ end
43
+
44
+ if attributes[:'Code']
45
+ self.code = attributes[:'Code']
46
+ end
47
+
48
+ if attributes[:'Status']
49
+ self.status = attributes[:'Status']
50
+ end
51
+
52
+ end
53
+
54
+ def status=(status)
55
+ allowed_values = ["Continue", "SwitchingProtocols", "OK", "Created", "Accepted", "NonAuthoritativeInformation", "NoContent", "ResetContent", "PartialContent", "MultipleChoices", "Ambiguous", "MovedPermanently", "Moved", "Found", "Redirect", "SeeOther", "RedirectMethod", "NotModified", "UseProxy", "Unused", "TemporaryRedirect", "RedirectKeepVerb", "BadRequest", "Unauthorized", "PaymentRequired", "Forbidden", "NotFound", "MethodNotAllowed", "NotAcceptable", "ProxyAuthenticationRequired", "RequestTimeout", "Conflict", "Gone", "LengthRequired", "PreconditionFailed", "RequestEntityTooLarge", "RequestUriTooLong", "UnsupportedMediaType", "RequestedRangeNotSatisfiable", "ExpectationFailed", "UpgradeRequired", "InternalServerError", "NotImplemented", "BadGateway", "ServiceUnavailable", "GatewayTimeout", "HttpVersionNotSupported"]
56
+ if status && !allowed_values.include?(status)
57
+ fail "invalid value for 'status', must be one of #{allowed_values}"
58
+ end
59
+ @status = status
60
+ end
61
+
62
+ end
63
+ end
@@ -0,0 +1,61 @@
1
+ module AsposeStorageCloud
2
+ #
3
+ class StorageExistResponse < BaseObject
4
+ attr_accessor :is_exist, :code, :status
5
+ # attribute mapping from ruby-style variable name to JSON key
6
+ def self.attribute_map
7
+ {
8
+
9
+ #
10
+ :'is_exist' => :'IsExist',
11
+
12
+ #
13
+ :'code' => :'Code',
14
+
15
+ #
16
+ :'status' => :'Status'
17
+
18
+ }
19
+ end
20
+
21
+ # attribute type
22
+ def self.swagger_types
23
+ {
24
+ :'is_exist' => :'BOOLEAN',
25
+ :'code' => :'String',
26
+ :'status' => :'String'
27
+
28
+ }
29
+ end
30
+
31
+ def initialize(attributes = {})
32
+ return if !attributes.is_a?(Hash) || attributes.empty?
33
+
34
+ # convert string to symbol for hash key
35
+ attributes = attributes.inject({}){|memo,(k,v)| memo[k.to_sym] = v; memo}
36
+
37
+
38
+ if attributes[:'IsExist']
39
+ self.is_exist = attributes[:'IsExist']
40
+ end
41
+
42
+ if attributes[:'Code']
43
+ self.code = attributes[:'Code']
44
+ end
45
+
46
+ if attributes[:'Status']
47
+ self.status = attributes[:'Status']
48
+ end
49
+
50
+ end
51
+
52
+ def status=(status)
53
+ allowed_values = ["Continue", "SwitchingProtocols", "OK", "Created", "Accepted", "NonAuthoritativeInformation", "NoContent", "ResetContent", "PartialContent", "MultipleChoices", "Ambiguous", "MovedPermanently", "Moved", "Found", "Redirect", "SeeOther", "RedirectMethod", "NotModified", "UseProxy", "Unused", "TemporaryRedirect", "RedirectKeepVerb", "BadRequest", "Unauthorized", "PaymentRequired", "Forbidden", "NotFound", "MethodNotAllowed", "NotAcceptable", "ProxyAuthenticationRequired", "RequestTimeout", "Conflict", "Gone", "LengthRequired", "PreconditionFailed", "RequestEntityTooLarge", "RequestUriTooLong", "UnsupportedMediaType", "RequestedRangeNotSatisfiable", "ExpectationFailed", "UpgradeRequired", "InternalServerError", "NotImplemented", "BadGateway", "ServiceUnavailable", "GatewayTimeout", "HttpVersionNotSupported"]
54
+ if status && !allowed_values.include?(status)
55
+ fail "invalid value for 'status', must be one of #{allowed_values}"
56
+ end
57
+ @status = status
58
+ end
59
+
60
+ end
61
+ end
@@ -0,0 +1,3 @@
1
+ module AsposeStorageCloud
2
+ VERSION = "1.0.0"
3
+ end
Binary file
@@ -0,0 +1,49 @@
1
+ <?xml version="1.0" encoding="utf-8"?>
2
+ <Orders xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="OrdersSchema.xsd">
3
+ <Order>
4
+ <Address>
5
+ <Number>23</Number>
6
+ <Street>Nelson Street</Street>
7
+ <Suburb>Howick</Suburb>
8
+ <City>Auckland</City>
9
+ </Address>
10
+ <PhoneNumber>543 1234</PhoneNumber>
11
+ <Date>03/01/2010</Date>
12
+ <Total>14.00</Total>
13
+ <Item>
14
+ <Name>BBQ Chicken Pizza</Name>
15
+ <Price>6.00</Price>
16
+ <Quantity>1</Quantity>
17
+ <ItemTotal>6.00</ItemTotal>
18
+ </Item>
19
+ <Item>
20
+ <Name>1.5 Litre Coke</Name>
21
+ <Price>4.00</Price>
22
+ <Quantity>2</Quantity>
23
+ <ItemTotal>8.00</ItemTotal>
24
+ </Item>
25
+ </Order>
26
+ <Order>
27
+ <Address>
28
+ <Number>10</Number>
29
+ <Street>Parkville Avenue</Street>
30
+ <Suburb>Pakuranga</Suburb>
31
+ <City>Auckland</City>
32
+ </Address>
33
+ <PhoneNumber>548 7342</PhoneNumber>
34
+ <Date>05/03/2010</Date>
35
+ <Total>6.00</Total>
36
+ <Item>
37
+ <Name>Hawaiian Pizza</Name>
38
+ <Price>4.00</Price>
39
+ <Quantity>1</Quantity>
40
+ <ItemTotal>4.00</ItemTotal>
41
+ </Item>
42
+ <Item>
43
+ <Name>Fries</Name>
44
+ <Price>1.00</Price>
45
+ <Quantity>2</Quantity>
46
+ <ItemTotal>2.00</ItemTotal>
47
+ </Item>
48
+ </Order>
49
+ </Orders>
Binary file
Binary file
@@ -0,0 +1 @@
1
+ Hello This is a test file.
@@ -0,0 +1,134 @@
1
+ require "minitest/autorun"
2
+ require "minitest/unit"
3
+
4
+ require_relative '../lib/aspose_storage_cloud'
5
+
6
+ class StorageTests < Minitest::Test
7
+ include MiniTest::Assertions
8
+ include AsposeStorageCloud
9
+
10
+ def setup
11
+ #Get App key and App SID from https://cloud.aspose.com
12
+ AsposeApp.app_key_and_sid("APP_KEY", "APP_SID")
13
+ @storage_api = StorageApi.new
14
+ end
15
+
16
+ def teardown
17
+ end
18
+
19
+ def upload_file(file_name)
20
+ response = @storage_api.put_create(file_name, File.open("data/" << file_name,"r") { |io| io.read } )
21
+ assert(response, message="Failed to upload {file_name} file.")
22
+ end
23
+
24
+ def create_folder(folder_name)
25
+ response = @storage_api.put_create_folder(folder_name)
26
+ assert(response, message="Failed to create the folder.")
27
+ end
28
+
29
+ def test_get_disc_usage
30
+ response = @storage_api.get_disc_usage()
31
+ assert(response, message="Failed to check the disk usage of the current account.")
32
+ end
33
+
34
+ def test_get_is_exist
35
+ file_name = "SampleWordDocument.docx"
36
+ upload_file(file_name)
37
+ response = @storage_api.get_is_exist(file_name)
38
+ assert(response, message="Failed to check if a specific file or folder exists.")
39
+ end
40
+
41
+ def test_get_download
42
+ file_name = "SampleWordDocument.docx"
43
+ upload_file(file_name)
44
+
45
+ response = @storage_api.get_download(file_name)
46
+ assert(response, message="Failed to download file.")
47
+ end
48
+
49
+ def test_put_create
50
+ file_name = "SampleWordDocument.docx"
51
+ response = @storage_api.put_create(file_name, File.open("data/" << file_name,"r") { |io| io.read } )
52
+ assert(response, message="Failed to upload {file_name} file.")
53
+ end
54
+
55
+ def test_delete_file
56
+ file_name = "SampleWordDocument.docx"
57
+ response = @storage_api.delete_file(file_name)
58
+ assert(response, message="Failed to delete {file_name} file.")
59
+ end
60
+
61
+ def test_post_move_file
62
+ file_name = "SampleWordDocument.docx"
63
+ upload_file(file_name)
64
+ dest_folder = "documents"
65
+ create_folder(dest_folder)
66
+
67
+ response = @storage_api.post_move_file(file_name, dest_folder)
68
+ assert(response, message="Failed to move a specific file.")
69
+ end
70
+
71
+ def test_get_list_files
72
+ response = @storage_api.get_list_files("")
73
+ assert(response, message="Failed to get the file listing of a specific folder.")
74
+ end
75
+
76
+ def test_put_create_folder
77
+ folder_name = "newFolder"
78
+ response = @storage_api.put_create_folder(folder_name)
79
+ assert(response, message="Failed to create the folder.")
80
+ end
81
+
82
+ def test_delete_folder
83
+ folder_name = "pictures"
84
+ create_folder(folder_name)
85
+
86
+ response = @storage_api.delete_folder(folder_name)
87
+ assert(response, message="Failed to delete {folder_name} folder.")
88
+ end
89
+
90
+ def test_post_move_folder
91
+ src_folder = "moveFrom"
92
+ dest_folder = "moveTo"
93
+ create_folder(src_folder)
94
+ create_folder(dest_folder)
95
+
96
+ response = @storage_api.post_move_folder(src_folder, dest_folder)
97
+ assert(response, message="Failed to move a specific folder.")
98
+ end
99
+
100
+ def test_get_list_file_versions
101
+ file_name = "buzz.png"
102
+ upload_file(file_name)
103
+
104
+ response = @storage_api.get_list_file_versions(file_name)
105
+ assert(response, message="Failed to get the file's versions list.")
106
+ end
107
+
108
+ def test_get_is_storage_exist
109
+ storage_name = "MyDropboxStorage"
110
+ response = @storage_api.get_is_storage_exist(storage_name)
111
+ assert(response, message="Failed to check if a specific storage exists.")
112
+ end
113
+
114
+ def test_put_copy
115
+ file_name = "buzz.png"
116
+ upload_file(file_name)
117
+ newdest = "pictures"
118
+ create_folder(newdest)
119
+
120
+ response = @storage_api.put_copy(file_name, newdest)
121
+ assert(response, message="Failed to copy a specific file.")
122
+ end
123
+
124
+ def test_put_copy_folder
125
+ src_folder = "/copyFrom"
126
+ create_folder(src_folder)
127
+ dest_folder = "/copyTo"
128
+ create_folder(dest_folder)
129
+
130
+ response = @storage_api.put_copy_folder(src_folder, dest_folder)
131
+ assert(response, message="Failed to copy a folder.")
132
+ end
133
+
134
+ end
metadata ADDED
@@ -0,0 +1,122 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: aspose_storage_cloud
3
+ version: !ruby/object:Gem::Version
4
+ version: 1.0.0
5
+ platform: ruby
6
+ authors:
7
+ - M. Sohail Ismail
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2015-12-25 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: typhoeus
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: '0.8'
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: '0.8'
27
+ - !ruby/object:Gem::Dependency
28
+ name: json
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - "~>"
32
+ - !ruby/object:Gem::Version
33
+ version: '1.7'
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - "~>"
39
+ - !ruby/object:Gem::Version
40
+ version: '1.7'
41
+ - !ruby/object:Gem::Dependency
42
+ name: minitest
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - "~>"
46
+ - !ruby/object:Gem::Version
47
+ version: '5.8'
48
+ type: :development
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - "~>"
53
+ - !ruby/object:Gem::Version
54
+ version: '5.8'
55
+ description: This SDK allows you to perform storage operations like download a specific
56
+ file, upload a specific file, remove a specific file, move a specific file, get
57
+ the file listing of a specific folder etc. on Aspose Cloud Storage.
58
+ email:
59
+ - muhammad.sohail@aspose.com
60
+ executables: []
61
+ extensions: []
62
+ extra_rdoc_files: []
63
+ files:
64
+ - ".gitignore"
65
+ - LICENSE
66
+ - README.md
67
+ - aspose_storage_cloud.gemspec
68
+ - lib/aspose_storage_cloud.rb
69
+ - lib/aspose_storage_cloud/api/storage_api.rb
70
+ - lib/aspose_storage_cloud/api_client.rb
71
+ - lib/aspose_storage_cloud/api_error.rb
72
+ - lib/aspose_storage_cloud/aspose_app.rb
73
+ - lib/aspose_storage_cloud/configuration.rb
74
+ - lib/aspose_storage_cloud/models/base_object.rb
75
+ - lib/aspose_storage_cloud/models/base_response.rb
76
+ - lib/aspose_storage_cloud/models/disc_usage.rb
77
+ - lib/aspose_storage_cloud/models/disc_usage_response.rb
78
+ - lib/aspose_storage_cloud/models/file_exist.rb
79
+ - lib/aspose_storage_cloud/models/file_exist_response.rb
80
+ - lib/aspose_storage_cloud/models/file_response.rb
81
+ - lib/aspose_storage_cloud/models/file_version.rb
82
+ - lib/aspose_storage_cloud/models/file_versions_response.rb
83
+ - lib/aspose_storage_cloud/models/folder_response.rb
84
+ - lib/aspose_storage_cloud/models/storage_exist_response.rb
85
+ - lib/aspose_storage_cloud/version.rb
86
+ - test/data/SampleExecuteTemplate.doc
87
+ - test/data/SampleExecuteTemplateData.txt
88
+ - test/data/SampleWordDocument.docx
89
+ - test/data/buzz.png
90
+ - test/data/testfile.txt
91
+ - test/storage_tests.rb
92
+ homepage: http://www.aspose.com/cloud/total-api.aspx
93
+ licenses:
94
+ - MIT
95
+ metadata: {}
96
+ post_install_message:
97
+ rdoc_options: []
98
+ require_paths:
99
+ - lib
100
+ required_ruby_version: !ruby/object:Gem::Requirement
101
+ requirements:
102
+ - - ">="
103
+ - !ruby/object:Gem::Version
104
+ version: '0'
105
+ required_rubygems_version: !ruby/object:Gem::Requirement
106
+ requirements:
107
+ - - ">="
108
+ - !ruby/object:Gem::Version
109
+ version: '0'
110
+ requirements: []
111
+ rubyforge_project:
112
+ rubygems_version: 2.4.8
113
+ signing_key:
114
+ specification_version: 4
115
+ summary: A powerful API for web apps that work with files.
116
+ test_files:
117
+ - test/data/SampleExecuteTemplate.doc
118
+ - test/data/SampleExecuteTemplateData.txt
119
+ - test/data/SampleWordDocument.docx
120
+ - test/data/buzz.png
121
+ - test/data/testfile.txt
122
+ - test/storage_tests.rb