App42_Ruby_API 0.8.4
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/.gitignore +21 -0
- data/App42_Ruby_API.gemspec +33 -0
- data/Gemfile +3 -0
- data/LICENSE.txt +22 -0
- data/README.md +29 -0
- data/Rakefile +1 -0
- data/TODO.rb +3 -0
- data/lib/App42_Ruby_API.rb +232 -0
- data/lib/App42_Ruby_API/App42BadParameterException.rb +31 -0
- data/lib/App42_Ruby_API/App42Exception.rb +39 -0
- data/lib/App42_Ruby_API/App42LimitException.rb +15 -0
- data/lib/App42_Ruby_API/App42NotFoundException.rb +15 -0
- data/lib/App42_Ruby_API/App42Response.rb +13 -0
- data/lib/App42_Ruby_API/App42ResponseBuilder.rb +67 -0
- data/lib/App42_Ruby_API/App42SecurityException.rb +15 -0
- data/lib/App42_Ruby_API/version.rb +3 -0
- data/lib/connection/RESTConnection.rb +713 -0
- data/lib/email/Email.rb +51 -0
- data/lib/email/EmailMIME.rb +51 -0
- data/lib/email/EmailResponseBuilder.rb +76 -0
- data/lib/email/EmailService.rb +244 -0
- data/lib/gallery/Album.rb +56 -0
- data/lib/gallery/AlbumResponseBuilder.rb +168 -0
- data/lib/gallery/AlbumService.rb +337 -0
- data/lib/gallery/PhotoService.rb +591 -0
- data/lib/game/Game.rb +39 -0
- data/lib/game/GameResponseBuilder.rb +106 -0
- data/lib/game/GameService.rb +268 -0
- data/lib/game/Reward.rb +24 -0
- data/lib/game/RewardResponseBuilder.rb +85 -0
- data/lib/game/RewardService.rb +440 -0
- data/lib/game/ScoreBoardService.rb +433 -0
- data/lib/game/ScoreService.rb +157 -0
- data/lib/geo/Geo.rb +51 -0
- data/lib/geo/GeoPoint.rb +43 -0
- data/lib/geo/GeoResponseBuilder.rb +145 -0
- data/lib/geo/GeoService.rb +505 -0
- data/lib/imageProcessor/Image.rb +42 -0
- data/lib/imageProcessor/ImageProcessorResponseBuilder.rb +40 -0
- data/lib/imageProcessor/ImageProcessorService.rb +1054 -0
- data/lib/log/Log.rb +49 -0
- data/lib/log/LogResponseBuilder.rb +61 -0
- data/lib/log/LogService.rb +920 -0
- data/lib/message/Queue.rb +50 -0
- data/lib/message/QueueResponseBuilder.rb +64 -0
- data/lib/message/QueueService.rb +469 -0
- data/lib/push/DeviceType.rb +56 -0
- data/lib/push/PushNotification.rb +38 -0
- data/lib/push/PushNotificationResposneBuilder.rb +74 -0
- data/lib/push/PushNotificationService.rb +458 -0
- data/lib/recommend/PreferenceData.rb +25 -0
- data/lib/recommend/Recommender.rb +48 -0
- data/lib/recommend/RecommenderResponseBuilder.rb +70 -0
- data/lib/recommend/RecommenderService.rb +1092 -0
- data/lib/recommend/RecommenderSimilarity.rb +52 -0
- data/lib/review/Review.rb +38 -0
- data/lib/review/ReviewResponseBuilder.rb +76 -0
- data/lib/review/ReviewService.rb +590 -0
- data/lib/session/Session.rb +43 -0
- data/lib/session/SessionResponseBuilder.rb +70 -0
- data/lib/session/SessionService.rb +427 -0
- data/lib/shopping/Cart.rb +77 -0
- data/lib/shopping/CartResponseBuilder.rb +118 -0
- data/lib/shopping/CartService.rb +902 -0
- data/lib/shopping/Catalogue.rb +79 -0
- data/lib/shopping/CatalogueResponseBuilder.rb +170 -0
- data/lib/shopping/CatalogueService.rb +649 -0
- data/lib/shopping/ItemData.rb +29 -0
- data/lib/shopping/PaymentStatus.rb +60 -0
- data/lib/social/Social.rb +35 -0
- data/lib/social/SocialResponseBuilder.rb +38 -0
- data/lib/social/SocialService.rb +585 -0
- data/lib/storage/OrderByType.rb +29 -0
- data/lib/storage/Query.rb +39 -0
- data/lib/storage/QueryBuilder.rb +118 -0
- data/lib/storage/Storage.rb +45 -0
- data/lib/storage/StorageResponseBuilder.rb +86 -0
- data/lib/storage/StorageService.rb +775 -0
- data/lib/upload/Upload.rb +40 -0
- data/lib/upload/UploadFileType.rb +83 -0
- data/lib/upload/UploadResponseBuilder.rb +58 -0
- data/lib/upload/UploadService.rb +960 -0
- data/lib/user/User.rb +102 -0
- data/lib/user/UserResponseBuilder.rb +105 -0
- data/lib/user/UserService.rb +1209 -0
- data/lib/util/util.rb +244 -0
- data/question.rb +79 -0
- metadata +204 -0
@@ -0,0 +1,40 @@
|
|
1
|
+
# -----------------------------------------------------------------------
|
2
|
+
# Copyright © 2012 ShepHertz Technologies Pvt Ltd. All rights reserved.
|
3
|
+
# -----------------------------------------------------------------------
|
4
|
+
|
5
|
+
require 'App42_Ruby_API/App42Response'
|
6
|
+
|
7
|
+
#
|
8
|
+
#
|
9
|
+
# This Upload object is the value object which contains the properties of
|
10
|
+
# Upload along with the setter & getter for those properties.
|
11
|
+
#
|
12
|
+
#
|
13
|
+
|
14
|
+
module App42
|
15
|
+
module Upload
|
16
|
+
class Upload < App42Response
|
17
|
+
attr_accessor :fileList
|
18
|
+
@fileList = Array.new
|
19
|
+
end
|
20
|
+
|
21
|
+
class File
|
22
|
+
attr_accessor :name, :userName, :type, :description, :url, :tinyUrl
|
23
|
+
|
24
|
+
@userName
|
25
|
+
@name
|
26
|
+
@type
|
27
|
+
@url
|
28
|
+
@description
|
29
|
+
@tinyUrl
|
30
|
+
|
31
|
+
#
|
32
|
+
# This is constructor that take no parameters
|
33
|
+
#
|
34
|
+
def initialize(upload)
|
35
|
+
upload.fileList.push(self)
|
36
|
+
end
|
37
|
+
|
38
|
+
end
|
39
|
+
end
|
40
|
+
end
|
@@ -0,0 +1,83 @@
|
|
1
|
+
# -----------------------------------------------------------------------
|
2
|
+
# Copyright © 2012 ShepHertz Technologies Pvt Ltd. All rights reserved.
|
3
|
+
# -----------------------------------------------------------------------
|
4
|
+
|
5
|
+
require 'App42_Ruby_API/App42Response'
|
6
|
+
|
7
|
+
#
|
8
|
+
# An enum that defines the type of the file to be uploaded on cloud.
|
9
|
+
#
|
10
|
+
|
11
|
+
module App42
|
12
|
+
module Upload
|
13
|
+
class UploadFileType < App42Response
|
14
|
+
unless (const_defined?(:AUDIO))
|
15
|
+
AUDIO = "AUDIO"
|
16
|
+
end
|
17
|
+
unless (const_defined?(:VIDEO))
|
18
|
+
VIDEO = "VIDEO"
|
19
|
+
end
|
20
|
+
unless (const_defined?(:IMAGE))
|
21
|
+
IMAGE = "IMAGE"
|
22
|
+
end
|
23
|
+
unless (const_defined?(:BINARY))
|
24
|
+
BINARY = "BINARY"
|
25
|
+
end
|
26
|
+
unless (const_defined?(:TXT))
|
27
|
+
TXT = "TXT"
|
28
|
+
end
|
29
|
+
unless (const_defined?(:XML))
|
30
|
+
XML = "XML"
|
31
|
+
end
|
32
|
+
unless (const_defined?(:CSV))
|
33
|
+
CSV = "CSV"
|
34
|
+
end
|
35
|
+
unless (const_defined?(:JSON))
|
36
|
+
JSON = "JSON"
|
37
|
+
end
|
38
|
+
unless (const_defined?(:OTHER))
|
39
|
+
OTHER = "OTHER"
|
40
|
+
end
|
41
|
+
|
42
|
+
#
|
43
|
+
# Sets the value of the UploadFileType.
|
44
|
+
#
|
45
|
+
# @param string
|
46
|
+
# - the string of UploadFileType.
|
47
|
+
#
|
48
|
+
def enum(string)
|
49
|
+
return UploadFileType.const_get(string)
|
50
|
+
end
|
51
|
+
|
52
|
+
#
|
53
|
+
# Returns the value of the UploadFileType.
|
54
|
+
#
|
55
|
+
# @return the value of UploadFileType.
|
56
|
+
#
|
57
|
+
|
58
|
+
def isAvailable(string)
|
59
|
+
if(string == "AUDIO")
|
60
|
+
return "AUDIO"
|
61
|
+
elsif(string == "VIDEO")
|
62
|
+
return "VIDEO"
|
63
|
+
elsif(string == "IMAGE")
|
64
|
+
return "IMAGE"
|
65
|
+
elsif(string == "BINARY")
|
66
|
+
return "BINARY"
|
67
|
+
elsif(string == "TXT")
|
68
|
+
return "TXT"
|
69
|
+
elsif(string == "XML")
|
70
|
+
return "XML"
|
71
|
+
elsif(string == "CSV")
|
72
|
+
return "CSV"
|
73
|
+
elsif(string == "JSON")
|
74
|
+
return "JSON"
|
75
|
+
elsif(string == "OTHER")
|
76
|
+
return "OTHER";
|
77
|
+
else
|
78
|
+
return nil
|
79
|
+
end
|
80
|
+
end
|
81
|
+
end
|
82
|
+
end
|
83
|
+
end
|
@@ -0,0 +1,58 @@
|
|
1
|
+
# -----------------------------------------------------------------------
|
2
|
+
# Copyright © 2012 ShepHertz Technologies Pvt Ltd. All rights reserved.
|
3
|
+
# -----------------------------------------------------------------------
|
4
|
+
|
5
|
+
require 'json/pure'
|
6
|
+
require 'App42_Ruby_API/App42ResponseBuilder'
|
7
|
+
require 'upload/Upload'
|
8
|
+
|
9
|
+
module App42
|
10
|
+
module Upload
|
11
|
+
|
12
|
+
#
|
13
|
+
#
|
14
|
+
# UploadResponseBuilder class converts the JSON response retrieved from the
|
15
|
+
# server to the value object i.e User
|
16
|
+
#
|
17
|
+
#
|
18
|
+
class UploadResponseBuilder < App42ResponseBuilder
|
19
|
+
|
20
|
+
#
|
21
|
+
# Converts the response in JSON format to the value object i.e Upload
|
22
|
+
#
|
23
|
+
# @param json
|
24
|
+
# - response in JSON format
|
25
|
+
#
|
26
|
+
# @return Upload object filled with json data
|
27
|
+
#
|
28
|
+
#
|
29
|
+
def buildResponse(json)
|
30
|
+
puts "testing #{json}"
|
31
|
+
uploadObj = Upload.new()
|
32
|
+
|
33
|
+
fileList = Array.new
|
34
|
+
uploadObj.fileList=fileList
|
35
|
+
|
36
|
+
uploadObj.strResponse=json
|
37
|
+
uploadObj.isResponseSuccess = isResponseSuccess(json)
|
38
|
+
jsonObjUpload = getServiceJSONObject("upload", json)
|
39
|
+
jsonObjFiles = jsonObjUpload.fetch("files");
|
40
|
+
|
41
|
+
if jsonObjFiles.fetch("file").instance_of?(Hash)
|
42
|
+
jsonObjFile = jsonObjFiles.fetch("file")
|
43
|
+
fileObj = App42::Upload::File.new(uploadObj)
|
44
|
+
buildObjectFromJSONTree(fileObj, jsonObjFile);
|
45
|
+
else
|
46
|
+
jsonObjFileArray = jsonObjFiles["file"]
|
47
|
+
|
48
|
+
jsonObjFileArray.length.times do |i|
|
49
|
+
fileObj = App42::Upload::File.new(uploadObj)
|
50
|
+
jsonObjFile = jsonObjFileArray[i]
|
51
|
+
buildObjectFromJSONTree(fileObj, jsonObjFile);
|
52
|
+
end
|
53
|
+
end
|
54
|
+
return uploadObj
|
55
|
+
end
|
56
|
+
end
|
57
|
+
end
|
58
|
+
end
|
@@ -0,0 +1,960 @@
|
|
1
|
+
# -----------------------------------------------------------------------
|
2
|
+
# Copyright © 2012 ShepHertz Technologies Pvt Ltd. All rights reserved.
|
3
|
+
# -----------------------------------------------------------------------
|
4
|
+
|
5
|
+
require 'rubygems'
|
6
|
+
require 'connection/RESTConnection'
|
7
|
+
require 'util/util'
|
8
|
+
require 'json/pure'
|
9
|
+
require 'App42_Ruby_API/App42Response'
|
10
|
+
require 'upload/UploadResponseBuilder'
|
11
|
+
require 'upload/Upload'
|
12
|
+
require 'upload/UploadFileType'
|
13
|
+
|
14
|
+
module App42
|
15
|
+
module Upload
|
16
|
+
#
|
17
|
+
# Uploads file on the cloud. Allows access to the files through url.
|
18
|
+
# Its especially useful for Mobile/Device apps. It minimizes the App footprint
|
19
|
+
# on the device.
|
20
|
+
#
|
21
|
+
# @see Upload
|
22
|
+
# @see App42Response
|
23
|
+
#
|
24
|
+
class UploadService
|
25
|
+
#
|
26
|
+
# this is a constructor that takes
|
27
|
+
#
|
28
|
+
# @param apiKey
|
29
|
+
# @param secretKey
|
30
|
+
# @param baseURL
|
31
|
+
#
|
32
|
+
def initialize(api_key, secret_key, base_url)
|
33
|
+
puts "File Upload->initialize"
|
34
|
+
@api_key = api_key
|
35
|
+
@secret_key = secret_key
|
36
|
+
@base_url = base_url
|
37
|
+
@resource = "upload"
|
38
|
+
@version = "1.0"
|
39
|
+
end
|
40
|
+
|
41
|
+
#
|
42
|
+
# Uploads file on the cloud.
|
43
|
+
#
|
44
|
+
# @param name
|
45
|
+
# - The name for the file which has to be saved. It is used to retrieve the file
|
46
|
+
# @param filePath
|
47
|
+
# - The local path for the file
|
48
|
+
# @param fileType
|
49
|
+
# - The type of the file. File can be either Audio, Video, Image, Binary, Txt, xml, json, csv or other
|
50
|
+
# Use the static constants e.g. Upload.AUDIO, Upload.XML etc.
|
51
|
+
# @param description
|
52
|
+
# - Description of the file to be uploaded.
|
53
|
+
#
|
54
|
+
# @return Upload object
|
55
|
+
#
|
56
|
+
# @raise App42Exception
|
57
|
+
#
|
58
|
+
|
59
|
+
def upload_file(name, filePath, fileType, description)
|
60
|
+
puts "upload File Called "
|
61
|
+
puts "Base url #{@base_url}"
|
62
|
+
response = nil;
|
63
|
+
uploadObj = nil;
|
64
|
+
uploadObj = Upload.new
|
65
|
+
util = Util.new
|
66
|
+
util.throwExceptionIfNullOrBlank(name, "Name");
|
67
|
+
util.throwExceptionIfNullOrBlank(filePath, "Filepath");
|
68
|
+
util.throwExceptionIfNullOrBlank(fileType, "fileType");
|
69
|
+
util.throwExceptionIfNullOrBlank(description, "Description");
|
70
|
+
if (FileTest.exists?(filePath) == false)
|
71
|
+
raise App42Exception.new("The file with the name #{filePath} not found")
|
72
|
+
end
|
73
|
+
begin
|
74
|
+
if (UploadFileType.new.isAvailable(fileType) == nil)
|
75
|
+
raise App42NotFoundException.new("Upload File Type #{fileType} does not Exist ");
|
76
|
+
end
|
77
|
+
connection = App42::Connection::RESTConnection.new(@base_url)
|
78
|
+
params = Hash.new
|
79
|
+
query_params = Hash.new
|
80
|
+
query_params = {
|
81
|
+
'apiKey'=> @api_key,
|
82
|
+
'version' => @version,
|
83
|
+
'timeStamp' => util.get_timestamp_utc
|
84
|
+
}
|
85
|
+
params = query_params.clone
|
86
|
+
post_params = Hash.new
|
87
|
+
upload = UploadFileType.new()
|
88
|
+
post_params.store("name", name);
|
89
|
+
post_params.store("type", upload.enum(fileType))
|
90
|
+
post_params.store("description", description);
|
91
|
+
params = params.merge(post_params)
|
92
|
+
signature = util.sign(@secret_key, params)
|
93
|
+
resource_url = "#{@version}/#{@resource}"
|
94
|
+
response = connection.multipart(signature, resource_url, query_params, params, filePath)
|
95
|
+
upload = UploadResponseBuilder.new()
|
96
|
+
uploadObj = upload.buildResponse(response)
|
97
|
+
rescue App42Exception =>e
|
98
|
+
raise e
|
99
|
+
rescue Exception => e
|
100
|
+
raise App42Exception.new(e)
|
101
|
+
end
|
102
|
+
return uploadObj
|
103
|
+
end
|
104
|
+
|
105
|
+
#
|
106
|
+
# Uploads file on the cloud.
|
107
|
+
#
|
108
|
+
# @param name
|
109
|
+
# - The name for the file which has to be saved. It is used to
|
110
|
+
# retrieve the file
|
111
|
+
# @param inputStream
|
112
|
+
# - InputStream of the file to be uploaded.
|
113
|
+
# @param fileType
|
114
|
+
# - The type of the file. File can be either Audio, Video, Image,
|
115
|
+
# Binary, Txt, xml, json, csv or other Use the static constants
|
116
|
+
# e.g. Upload.AUDIO, Upload.XML etc.
|
117
|
+
# @param description
|
118
|
+
# - Description of the file to be uploaded.
|
119
|
+
#
|
120
|
+
# @return Upload object
|
121
|
+
#
|
122
|
+
# @raise App42Exception
|
123
|
+
#
|
124
|
+
|
125
|
+
def upload_file_by_stream(name, inputStream, fileType, description)
|
126
|
+
puts "upload File Called "
|
127
|
+
puts "Base url #{@base_url}"
|
128
|
+
response = nil;
|
129
|
+
uploadObj = nil;
|
130
|
+
uploadObj = Upload.new
|
131
|
+
util = Util.new
|
132
|
+
util.throwExceptionIfNullOrBlank(name, "Name");
|
133
|
+
util.throwExceptionIfNotValidExtension(name, "File Name");
|
134
|
+
util.throwExceptionIfNullOrBlank(fileType, "fileType");
|
135
|
+
util.throwExceptionIfNullOrBlank(description, "Description");
|
136
|
+
begin
|
137
|
+
connection = App42::Connection::RESTConnection.new(@base_url)
|
138
|
+
params = Hash.new
|
139
|
+
query_params = Hash.new
|
140
|
+
query_params = {
|
141
|
+
'apiKey'=> @api_key,
|
142
|
+
'version' => @version,
|
143
|
+
'timeStamp' => util.get_timestamp_utc
|
144
|
+
}
|
145
|
+
params = query_params.clone
|
146
|
+
post_params = Hash.new
|
147
|
+
upload = UploadFileType.new()
|
148
|
+
post_params.store("name", name);
|
149
|
+
post_params.store("type", upload.enum(fileType))
|
150
|
+
post_params.store("description", description);
|
151
|
+
params = params.merge(post_params)
|
152
|
+
signature = util.sign(@secret_key, params)
|
153
|
+
resource_url = "#{@version}/#{@resource}"
|
154
|
+
response = connection.multipartStream(signature, resource_url, query_params, params, inputStream)
|
155
|
+
upload = UploadResponseBuilder.new()
|
156
|
+
uploadObj = upload.buildResponse(response)
|
157
|
+
rescue App42Exception =>e
|
158
|
+
raise e
|
159
|
+
rescue Exception => e
|
160
|
+
raise App42Exception.new(e)
|
161
|
+
end
|
162
|
+
return uploadObj
|
163
|
+
end
|
164
|
+
|
165
|
+
#
|
166
|
+
# Uploads file on the cloud for given user.
|
167
|
+
#
|
168
|
+
# @param name
|
169
|
+
# - The name for the file which has to be saved. It is used to
|
170
|
+
# retrieve the file
|
171
|
+
# @param userName
|
172
|
+
# - The name for the user for which file has to be saved.
|
173
|
+
# @param filePath
|
174
|
+
# - The local path for the file
|
175
|
+
# @param fileType
|
176
|
+
# - The type of the file. File can be either Audio, Video, Image,
|
177
|
+
# Binary, Txt, xml, json, csv or other Use the static constants
|
178
|
+
# e.g. Upload.AUDIO, Upload.XML etc.
|
179
|
+
# @param description
|
180
|
+
# - Description of the file to be uploaded.
|
181
|
+
#
|
182
|
+
# @return Upload object
|
183
|
+
#
|
184
|
+
# @raise App42Exception
|
185
|
+
#
|
186
|
+
|
187
|
+
def upload_file_for_user(name, userName, filePath, fileType, description)
|
188
|
+
puts "upload File for user Called "
|
189
|
+
puts "Base url #{@base_url}"
|
190
|
+
response = nil;
|
191
|
+
uploadObj = nil;
|
192
|
+
uploadObj = Upload.new
|
193
|
+
util = Util.new
|
194
|
+
util.throwExceptionIfNullOrBlank(name, "File Name");
|
195
|
+
util.throwExceptionIfNullOrBlank(userName, "User Name");
|
196
|
+
util.throwExceptionIfNullOrBlank(filePath, "Filepath");
|
197
|
+
util.throwExceptionIfNullOrBlank(fileType, "fileType");
|
198
|
+
util.throwExceptionIfNullOrBlank(description, "Description");
|
199
|
+
begin
|
200
|
+
connection = App42::Connection::RESTConnection.new(@base_url)
|
201
|
+
params = Hash.new
|
202
|
+
query_params = Hash.new
|
203
|
+
query_params = {
|
204
|
+
'apiKey'=> @api_key,
|
205
|
+
'version' => @version,
|
206
|
+
'timeStamp' => util.get_timestamp_utc
|
207
|
+
}
|
208
|
+
params = query_params.clone
|
209
|
+
post_params = Hash.new
|
210
|
+
upload = UploadFileType.new()
|
211
|
+
post_params.store("name", name);
|
212
|
+
post_params.store("userName", userName);
|
213
|
+
post_params.store("type", upload.enum(fileType))
|
214
|
+
post_params.store("description", description);
|
215
|
+
params = params.merge(post_params)
|
216
|
+
signature = util.sign(@secret_key, params)
|
217
|
+
resource_url = "#{@version}/#{@resource}/#{userName}"
|
218
|
+
response = connection.multipart(signature, resource_url, query_params, params, filePath)
|
219
|
+
upload = UploadResponseBuilder.new()
|
220
|
+
uploadObj = upload.buildResponse(response)
|
221
|
+
rescue App42Exception =>e
|
222
|
+
raise e
|
223
|
+
rescue Exception => e
|
224
|
+
raise App42Exception.new(e)
|
225
|
+
end
|
226
|
+
return uploadObj
|
227
|
+
end
|
228
|
+
|
229
|
+
#
|
230
|
+
# Uploads file on the cloud.
|
231
|
+
#
|
232
|
+
# @param name
|
233
|
+
# - The name for the file which has to be saved. It is used to retrieve the file
|
234
|
+
# @param userName
|
235
|
+
# - The name for the user for which file has to be saved.
|
236
|
+
# @param filePath
|
237
|
+
# - The local path for the file
|
238
|
+
# @param uploadFileType
|
239
|
+
# - The type of the file. File can be either Audio, Video, Image, Binary, Txt, xml, json, csv or other
|
240
|
+
# Use the static constants e.g. Upload.AUDIO, Upload.XML etc.
|
241
|
+
# @param description
|
242
|
+
# - Description of the file to be uploaded.
|
243
|
+
#
|
244
|
+
# @return Upload object
|
245
|
+
#
|
246
|
+
# @raise App42Exception
|
247
|
+
#
|
248
|
+
|
249
|
+
def upload_file_for_user_by_stream(name, userName, inputStream, fileType, description)
|
250
|
+
puts "upload File Called "
|
251
|
+
puts "Base url #{@base_url}"
|
252
|
+
response = nil;
|
253
|
+
uploadObj = nil;
|
254
|
+
uploadObj = Upload.new
|
255
|
+
util = Util.new
|
256
|
+
util.throwExceptionIfNullOrBlank(name, "File Name");
|
257
|
+
util.throwExceptionIfNullOrBlank(userName, "User Name");
|
258
|
+
util.throwExceptionIfNotValidExtension(name, "File Name");
|
259
|
+
util.throwExceptionIfNullOrBlank(fileType, "fileType");
|
260
|
+
util.throwExceptionIfNullOrBlank(description, "Description");
|
261
|
+
if (FileTest.exists?(filePath) == false)
|
262
|
+
raise App42Exception.new("The file with the name #{filePath} not found")
|
263
|
+
end
|
264
|
+
begin
|
265
|
+
if (UploadFileType.new.isAvailable(fileType) == nil)
|
266
|
+
raise App42NotFoundException.new("Upload File Type #{fileType} does not Exist ");
|
267
|
+
end
|
268
|
+
connection = App42::Connection::RESTConnection.new(@base_url)
|
269
|
+
params = Hash.new
|
270
|
+
query_params = Hash.new
|
271
|
+
query_params = {
|
272
|
+
'apiKey'=> @api_key,
|
273
|
+
'version' => @version,
|
274
|
+
'timeStamp' => util.get_timestamp_utc
|
275
|
+
}
|
276
|
+
params = query_params.clone
|
277
|
+
post_params = Hash.new
|
278
|
+
upload = UploadFileType.new()
|
279
|
+
post_params.store("name", name);
|
280
|
+
post_params.store("type", upload.enum(fileType))
|
281
|
+
post_params.store("description", description);
|
282
|
+
signature = util.sign(@secret_key, params)
|
283
|
+
resource_url = "#{@version}/#{@resource}"
|
284
|
+
response = connection.multipartStream(signature, resource_url, query_params, params, inputStream)
|
285
|
+
upload = UploadResponseBuilder.new()
|
286
|
+
uploadObj = upload.buildResponse(response)
|
287
|
+
rescue App42Exception =>e
|
288
|
+
raise e
|
289
|
+
rescue Exception => e
|
290
|
+
raise App42Exception.new(e)
|
291
|
+
end
|
292
|
+
return uploadObj
|
293
|
+
end
|
294
|
+
|
295
|
+
# Gets all the files By Paging for the App
|
296
|
+
#
|
297
|
+
# @param max
|
298
|
+
# - Maximum number of records to be fetched
|
299
|
+
# @param offset
|
300
|
+
# - From where the records are to be fetched
|
301
|
+
#
|
302
|
+
# @return Upload object
|
303
|
+
#
|
304
|
+
# @raise App42Exception
|
305
|
+
#
|
306
|
+
|
307
|
+
def get_all_files_by_paging(max, offset)
|
308
|
+
puts "getAllFilesByPaging Called "
|
309
|
+
puts "Base url #{@base_url}"
|
310
|
+
response = nil;
|
311
|
+
uploadObj = nil;
|
312
|
+
uploadObj = Upload.new
|
313
|
+
util = Util.new
|
314
|
+
util.validateMax(max);
|
315
|
+
util.throwExceptionIfNullOrBlank(max, "Max");
|
316
|
+
util.throwExceptionIfNullOrBlank(offset, "Offset");
|
317
|
+
begin
|
318
|
+
connection = App42::Connection::RESTConnection.new(@base_url)
|
319
|
+
query_params = Hash.new
|
320
|
+
params = {
|
321
|
+
'apiKey'=> @api_key,
|
322
|
+
'version' => @version,
|
323
|
+
'timeStamp' => util.get_timestamp_utc,
|
324
|
+
}
|
325
|
+
query_params = params.clone
|
326
|
+
params.store("max", "" + (max.to_i).to_s)
|
327
|
+
params.store("offset", "" + (offset.to_i).to_s)
|
328
|
+
signature = util.sign(@secret_key, params)
|
329
|
+
resource_url = "#{@version}/#{@resource}/paging/#{(max.to_i).to_s}/#{(offset.to_i).to_s}"
|
330
|
+
response = connection.get(signature, resource_url, query_params)
|
331
|
+
upload = UploadResponseBuilder.new
|
332
|
+
uploadObj = upload.buildResponse(response)
|
333
|
+
rescue App42Exception =>e
|
334
|
+
raise e
|
335
|
+
rescue Exception => e
|
336
|
+
raise App42Exception.new(e)
|
337
|
+
end
|
338
|
+
return uploadObj
|
339
|
+
end
|
340
|
+
|
341
|
+
#
|
342
|
+
# Gets the file based on user name by Paging.
|
343
|
+
#
|
344
|
+
# @param userName
|
345
|
+
# - The name of the user for which file has to be retrieved
|
346
|
+
# @param max
|
347
|
+
# - Maximum number of records to be fetched
|
348
|
+
# @param offset
|
349
|
+
# - From where the records are to be fetched
|
350
|
+
#
|
351
|
+
# @return Upload object
|
352
|
+
#
|
353
|
+
# @raise App42Exception
|
354
|
+
#
|
355
|
+
|
356
|
+
def get_all_files_by_user_by_paging(userName, max, offset)
|
357
|
+
puts "getAllFilesByPaging Called "
|
358
|
+
puts "Base url #{@base_url}"
|
359
|
+
response = nil;
|
360
|
+
uploadObj = nil;
|
361
|
+
uploadObj = Upload.new
|
362
|
+
util = Util.new
|
363
|
+
util.validateMax(max);
|
364
|
+
util.throwExceptionIfNullOrBlank(userName, "User Name");
|
365
|
+
util.throwExceptionIfNullOrBlank(max, "Max");
|
366
|
+
util.throwExceptionIfNullOrBlank(offset, "Offset");
|
367
|
+
begin
|
368
|
+
connection = App42::Connection::RESTConnection.new(@base_url)
|
369
|
+
query_params = Hash.new
|
370
|
+
params = {
|
371
|
+
'apiKey'=> @api_key,
|
372
|
+
'version' => @version,
|
373
|
+
'timeStamp' => util.get_timestamp_utc,
|
374
|
+
}
|
375
|
+
query_params = params.clone
|
376
|
+
params.store("userName", userName);
|
377
|
+
params.store("max", "" + (max.to_i).to_s)
|
378
|
+
params.store("offset", "" + (offset.to_i).to_s)
|
379
|
+
signature = util.sign(@secret_key, params)
|
380
|
+
resource_url = "#{@version}/#{@resource}/user/#{userName}/#{(max.to_i).to_s}/#{(offset.to_i).to_s}"
|
381
|
+
response = connection.get(signature, resource_url, query_params)
|
382
|
+
upload = UploadResponseBuilder.new
|
383
|
+
uploadObj = upload.buildResponse(response)
|
384
|
+
rescue App42Exception =>e
|
385
|
+
raise e
|
386
|
+
rescue Exception => e
|
387
|
+
raise App42Exception.new(e)
|
388
|
+
end
|
389
|
+
return uploadObj
|
390
|
+
end
|
391
|
+
|
392
|
+
#
|
393
|
+
# Get the files based on file type by Paging.
|
394
|
+
#
|
395
|
+
# @param uploadFileType
|
396
|
+
# - Type of the file e.g. Upload.AUDIO, Upload.XML etc.
|
397
|
+
# @param
|
398
|
+
# - max Maximum number of records to be fetched
|
399
|
+
# @param offset
|
400
|
+
# - From where the records are to be fetched
|
401
|
+
#
|
402
|
+
# @return Upload object
|
403
|
+
#
|
404
|
+
# @raise App42Exception
|
405
|
+
#
|
406
|
+
|
407
|
+
def get_files_by_type_by_paging(uploadFileType, max, offset)
|
408
|
+
puts "get_files_by_type_by_paging Called "
|
409
|
+
puts "Base url #{@base_url}"
|
410
|
+
response = nil;
|
411
|
+
uploadObj = nil;
|
412
|
+
uploadObj = Upload.new
|
413
|
+
util = Util.new
|
414
|
+
util.validateMax(max);
|
415
|
+
util.throwExceptionIfNullOrBlank(uploadFileType, "uploadFileType");
|
416
|
+
util.throwExceptionIfNullOrBlank(max, "Max");
|
417
|
+
util.throwExceptionIfNullOrBlank(offset, "Offset");
|
418
|
+
begin
|
419
|
+
if (UploadFileType.new.isAvailable(uploadFileType) == nil)
|
420
|
+
raise App42NotFoundException.new("Upload File Type #{uploadFileType} does not Exist ");
|
421
|
+
end
|
422
|
+
connection = App42::Connection::RESTConnection.new(@base_url)
|
423
|
+
query_params = Hash.new
|
424
|
+
params = {
|
425
|
+
'apiKey'=> @api_key,
|
426
|
+
'version' => @version,
|
427
|
+
'timeStamp' => util.get_timestamp_utc,
|
428
|
+
}
|
429
|
+
query_params = params.clone
|
430
|
+
params.store("type", uploadFileType)
|
431
|
+
params.store("max", "" + (max.to_i).to_s)
|
432
|
+
params.store("offset", "" + (offset.to_i).to_s)
|
433
|
+
signature = util.sign(@secret_key, params)
|
434
|
+
resource_url = "#{@version}/#{@resource}/type/#{uploadFileType}/#{(max.to_i).to_s}/#{(offset.to_i).to_s}"
|
435
|
+
response = connection.get(signature, resource_url, query_params)
|
436
|
+
upload = UploadResponseBuilder.new
|
437
|
+
uploadObj = upload.buildResponse(response)
|
438
|
+
rescue App42Exception =>e
|
439
|
+
raise e
|
440
|
+
rescue Exception => e
|
441
|
+
raise App42Exception.new(e)
|
442
|
+
end
|
443
|
+
return uploadObj
|
444
|
+
end
|
445
|
+
|
446
|
+
#
|
447
|
+
# Gets all the files for the App
|
448
|
+
#
|
449
|
+
# @return Upload object
|
450
|
+
#
|
451
|
+
# @raise App42Exception
|
452
|
+
#
|
453
|
+
|
454
|
+
def get_all_files()
|
455
|
+
puts "Get All Files Called "
|
456
|
+
puts "Base url #{@base_url}"
|
457
|
+
response = nil;
|
458
|
+
uploadObj = nil;
|
459
|
+
uploadObj = Upload.new
|
460
|
+
util = Util.new
|
461
|
+
begin
|
462
|
+
connection = App42::Connection::RESTConnection.new(@base_url)
|
463
|
+
params = Hash.new
|
464
|
+
query_params = Hash.new
|
465
|
+
params = {
|
466
|
+
'apiKey'=> @api_key,
|
467
|
+
'version' => @version,
|
468
|
+
'timeStamp' => util.get_timestamp_utc,
|
469
|
+
}
|
470
|
+
query_params = params.clone
|
471
|
+
signature = util.sign(@secret_key, params)
|
472
|
+
resource_url = "#{@version}/#{@resource}"
|
473
|
+
response = connection.get(signature, resource_url, query_params)
|
474
|
+
puts "Response is #{response}"
|
475
|
+
upload = UploadResponseBuilder.new()
|
476
|
+
uploadObj = upload.buildResponse(response)
|
477
|
+
rescue App42Exception =>e
|
478
|
+
raise e
|
479
|
+
rescue Exception => e
|
480
|
+
raise App42Exception.new(e)
|
481
|
+
end
|
482
|
+
return uploadObj
|
483
|
+
end
|
484
|
+
|
485
|
+
#
|
486
|
+
# Gets the file based on user name.
|
487
|
+
#
|
488
|
+
# @param name
|
489
|
+
# - The name of the file which has to be retrieved
|
490
|
+
# @param userName
|
491
|
+
# - The name of the user for which file has to be retrieved
|
492
|
+
#
|
493
|
+
# @return Upload object
|
494
|
+
#
|
495
|
+
# @raise App42Exception
|
496
|
+
#
|
497
|
+
|
498
|
+
def get_file_by_user(name, userName)
|
499
|
+
puts "Get File By User Called "
|
500
|
+
puts "Base url #{@base_url}"
|
501
|
+
response = nil;
|
502
|
+
uploadObj = nil;
|
503
|
+
uploadObj = Upload.new
|
504
|
+
util = Util.new
|
505
|
+
util.throwExceptionIfNullOrBlank(name, "File Name");
|
506
|
+
util.throwExceptionIfNullOrBlank(userName, "User Name");
|
507
|
+
begin
|
508
|
+
connection = App42::Connection::RESTConnection.new(@base_url)
|
509
|
+
query_params = Hash.new
|
510
|
+
params = {
|
511
|
+
'apiKey'=> @api_key,
|
512
|
+
'version' => @version,
|
513
|
+
'timeStamp' => util.get_timestamp_utc,
|
514
|
+
}
|
515
|
+
query_params = params.clone
|
516
|
+
params.store("name", name);
|
517
|
+
params.store("userName", userName);
|
518
|
+
puts query_params
|
519
|
+
signature = util.sign(@secret_key, params)
|
520
|
+
resource_url = "#{@version}/#{@resource}/#{userName}/#{name}"
|
521
|
+
response = connection.get(signature, resource_url, query_params)
|
522
|
+
puts "Response is #{response}"
|
523
|
+
upload = UploadResponseBuilder.new()
|
524
|
+
uploadObj = upload.buildResponse(response)
|
525
|
+
rescue App42Exception =>e
|
526
|
+
raise e
|
527
|
+
rescue Exception => e
|
528
|
+
raise App42Exception.new(e)
|
529
|
+
end
|
530
|
+
return uploadObj
|
531
|
+
end
|
532
|
+
|
533
|
+
#
|
534
|
+
# Gets the file based on user name.
|
535
|
+
#
|
536
|
+
# @param userName
|
537
|
+
# - The name of the user for which file has to be retrieved
|
538
|
+
#
|
539
|
+
# @return Upload object
|
540
|
+
#
|
541
|
+
# @raise App42Exception
|
542
|
+
#
|
543
|
+
|
544
|
+
def get_all_files_by_user(userName)
|
545
|
+
puts "getAllFilesByUser Called "
|
546
|
+
puts "Base url #{@base_url}"
|
547
|
+
response = nil;
|
548
|
+
uploadObj = nil;
|
549
|
+
uploadObj = Upload.new
|
550
|
+
util = Util.new
|
551
|
+
util.throwExceptionIfNullOrBlank(userName, "userName");
|
552
|
+
begin
|
553
|
+
connection = App42::Connection::RESTConnection.new(@base_url)
|
554
|
+
query_params = Hash.new
|
555
|
+
params = {
|
556
|
+
'apiKey'=> @api_key,
|
557
|
+
'version' => @version,
|
558
|
+
'timeStamp' => util.get_timestamp_utc,
|
559
|
+
}
|
560
|
+
query_params = params.clone
|
561
|
+
params.store("userName", userName);
|
562
|
+
puts query_params
|
563
|
+
signature = util.sign(@secret_key, params)
|
564
|
+
resource_url = "#{@version}/#{@resource}/user/#{userName}"
|
565
|
+
response = connection.get(signature, resource_url, query_params)
|
566
|
+
puts "Response is #{response}"
|
567
|
+
upload = UploadResponseBuilder.new()
|
568
|
+
uploadObj = upload.buildResponse(response)
|
569
|
+
rescue App42Exception =>e
|
570
|
+
raise e
|
571
|
+
rescue Exception => e
|
572
|
+
raise App42Exception.new(e)
|
573
|
+
end
|
574
|
+
return uploadObj
|
575
|
+
end
|
576
|
+
|
577
|
+
#
|
578
|
+
# Gets the file based on file name.
|
579
|
+
#
|
580
|
+
# @param name
|
581
|
+
# - The name of the file which has to be retrieved
|
582
|
+
#
|
583
|
+
# @return Upload object
|
584
|
+
#
|
585
|
+
# @raise App42Exception
|
586
|
+
#
|
587
|
+
|
588
|
+
def get_file_by_name(name)
|
589
|
+
puts "Get File By Name Called "
|
590
|
+
puts "Base url #{@base_url}"
|
591
|
+
response = nil;
|
592
|
+
uploadObj = nil;
|
593
|
+
uploadObj = Upload.new
|
594
|
+
util = Util.new
|
595
|
+
util.throwExceptionIfNullOrBlank(name, "File Name");
|
596
|
+
begin
|
597
|
+
connection = App42::Connection::RESTConnection.new(@base_url)
|
598
|
+
query_params = Hash.new
|
599
|
+
params = {
|
600
|
+
'apiKey'=> @api_key,
|
601
|
+
'version' => @version,
|
602
|
+
'timeStamp' => util.get_timestamp_utc,
|
603
|
+
}
|
604
|
+
query_params = params.clone
|
605
|
+
params.store("name", name)
|
606
|
+
puts query_params
|
607
|
+
signature = util.sign(@secret_key, params)
|
608
|
+
resource_url = "#{@version}/#{@resource}/#{name}"
|
609
|
+
response = connection.get(signature, resource_url, query_params)
|
610
|
+
upload = UploadResponseBuilder.new()
|
611
|
+
uploadObj = upload.buildResponse(response)
|
612
|
+
rescue App42Exception =>e
|
613
|
+
raise e
|
614
|
+
rescue Exception => e
|
615
|
+
raise App42Exception.new(e)
|
616
|
+
end
|
617
|
+
return uploadObj
|
618
|
+
end
|
619
|
+
|
620
|
+
#
|
621
|
+
# Removes the file based on file name and user name.
|
622
|
+
#
|
623
|
+
# @param name
|
624
|
+
# - The name of the file which has to be removed
|
625
|
+
# @param userName
|
626
|
+
# - The name of the user for which file has to be removed
|
627
|
+
#
|
628
|
+
# @return App42Response if deleted successfully
|
629
|
+
#
|
630
|
+
# @raise App42Exception
|
631
|
+
#
|
632
|
+
|
633
|
+
def remove_file_by_user(name, userName)
|
634
|
+
puts "remove_file_by_user Called "
|
635
|
+
puts "Base url #{@base_url}"
|
636
|
+
response = nil;
|
637
|
+
responseObj = App42Response.new()
|
638
|
+
util = Util.new
|
639
|
+
util.throwExceptionIfNullOrBlank(name, "File Name");
|
640
|
+
util.throwExceptionIfNullOrBlank(userName, "User Name");
|
641
|
+
begin
|
642
|
+
connection = App42::Connection::RESTConnection.new(@base_url)
|
643
|
+
query_params = Hash.new
|
644
|
+
params = {
|
645
|
+
'apiKey'=> @api_key,
|
646
|
+
'version' => @version,
|
647
|
+
'timeStamp' => util.get_timestamp_utc,
|
648
|
+
}
|
649
|
+
query_params = params.clone
|
650
|
+
params.store("name", name);
|
651
|
+
params.store("userName", userName);
|
652
|
+
puts query_params
|
653
|
+
signature = util.sign(@secret_key, params)
|
654
|
+
resource_url = "#{@version}/#{@resource}/#{userName}/#{name}"
|
655
|
+
response = connection.delete(signature, resource_url, query_params)
|
656
|
+
responseObj.strResponse=(response)
|
657
|
+
responseObj.isResponseSuccess=(true)
|
658
|
+
rescue App42Exception =>e
|
659
|
+
raise e
|
660
|
+
rescue Exception => e
|
661
|
+
raise App42Exception.new(e)
|
662
|
+
end
|
663
|
+
return responseObj
|
664
|
+
end
|
665
|
+
|
666
|
+
#
|
667
|
+
# Removes the file based on user name.
|
668
|
+
#
|
669
|
+
# @param userName
|
670
|
+
# - The name of the user for which file has to be removed
|
671
|
+
#
|
672
|
+
# @return App42Response if deleted successfully
|
673
|
+
#
|
674
|
+
# @raise App42Exception
|
675
|
+
#
|
676
|
+
|
677
|
+
def remove_all_files_by_user(userName)
|
678
|
+
puts "remove_all_files_by_user Called "
|
679
|
+
puts "Base url #{@base_url}"
|
680
|
+
response = nil;
|
681
|
+
responseObj = App42Response.new()
|
682
|
+
util = Util.new
|
683
|
+
util.throwExceptionIfNullOrBlank(userName, "User Name");
|
684
|
+
begin
|
685
|
+
connection = App42::Connection::RESTConnection.new(@base_url)
|
686
|
+
query_params = Hash.new
|
687
|
+
params = {
|
688
|
+
'apiKey'=> @api_key,
|
689
|
+
'version' => @version,
|
690
|
+
'timeStamp' => util.get_timestamp_utc,
|
691
|
+
}
|
692
|
+
query_params = params.clone
|
693
|
+
params.store("userName", userName);
|
694
|
+
puts query_params
|
695
|
+
signature = util.sign(@secret_key, params)
|
696
|
+
resource_url = "#{@version}/#{@resource}/user/#{userName}"
|
697
|
+
response = connection.delete(signature, resource_url, query_params)
|
698
|
+
responseObj.strResponse=(response)
|
699
|
+
responseObj.isResponseSuccess=(true)
|
700
|
+
rescue App42Exception =>e
|
701
|
+
raise e
|
702
|
+
rescue Exception => e
|
703
|
+
raise App42Exception.new(e)
|
704
|
+
end
|
705
|
+
return responseObj
|
706
|
+
end
|
707
|
+
|
708
|
+
#
|
709
|
+
# Removes the file based on file name.
|
710
|
+
#
|
711
|
+
# @param name
|
712
|
+
# - The name of the file which has to be removed
|
713
|
+
#
|
714
|
+
# @return App42Response if deleted successfully
|
715
|
+
#
|
716
|
+
# @raise App42Exception
|
717
|
+
#
|
718
|
+
|
719
|
+
def remove_file_by_name(name)
|
720
|
+
puts "Remove File By Name Called "
|
721
|
+
puts "Base url #{@base_url}"
|
722
|
+
response = nil;
|
723
|
+
responseObj = App42Response.new();
|
724
|
+
util = Util.new
|
725
|
+
util.throwExceptionIfNullOrBlank(name, "Name");
|
726
|
+
begin
|
727
|
+
connection = App42::Connection::RESTConnection.new(@base_url)
|
728
|
+
query_params = Hash.new
|
729
|
+
params = {
|
730
|
+
'apiKey'=> @api_key,
|
731
|
+
'version' => @version,
|
732
|
+
'timeStamp' => util.get_timestamp_utc,
|
733
|
+
}
|
734
|
+
query_params = params.clone
|
735
|
+
params.store("name", name)
|
736
|
+
puts query_params
|
737
|
+
signature = util.sign(@secret_key, params)
|
738
|
+
resource_url = "#{@version}/#{@resource}/#{name}"
|
739
|
+
response = connection.delete(signature, resource_url, query_params)
|
740
|
+
responseObj.strResponse=(response)
|
741
|
+
responseObj.isResponseSuccess=(true)
|
742
|
+
rescue App42Exception =>e
|
743
|
+
raise e
|
744
|
+
rescue Exception => e
|
745
|
+
raise App42Exception.new(e)
|
746
|
+
end
|
747
|
+
return responseObj
|
748
|
+
end
|
749
|
+
|
750
|
+
#
|
751
|
+
# Removes all the files for the App
|
752
|
+
#
|
753
|
+
# @return App42Response if deleted successfully
|
754
|
+
#
|
755
|
+
# @raise App42Exception
|
756
|
+
#
|
757
|
+
|
758
|
+
def remove_all_files()
|
759
|
+
puts "Remove File By Name Called "
|
760
|
+
puts "Base url #{@base_url}"
|
761
|
+
response = nil;
|
762
|
+
responseObj = App42Response.new();
|
763
|
+
util = Util.new
|
764
|
+
begin
|
765
|
+
connection = App42::Connection::RESTConnection.new(@base_url)
|
766
|
+
query_params = Hash.new
|
767
|
+
params = {
|
768
|
+
'apiKey'=> @api_key,
|
769
|
+
'version' => @version,
|
770
|
+
'timeStamp' => util.get_timestamp_utc,
|
771
|
+
}
|
772
|
+
query_params = params.clone
|
773
|
+
signature = util.sign(@secret_key, params)
|
774
|
+
resource_url = "#{@version}/#{@resource}"
|
775
|
+
response = connection.delete(signature, resource_url, query_params)
|
776
|
+
responseObj.strResponse=(response)
|
777
|
+
responseObj.isResponseSuccess=(true)
|
778
|
+
rescue App42Exception =>e
|
779
|
+
raise e
|
780
|
+
rescue Exception => e
|
781
|
+
raise App42Exception.new(e)
|
782
|
+
end
|
783
|
+
return responseObj
|
784
|
+
end
|
785
|
+
|
786
|
+
#
|
787
|
+
# Get the files based on file type.
|
788
|
+
#
|
789
|
+
# @param uploadFileType
|
790
|
+
# - Type of the file e.g. Upload.AUDIO, Upload.XML etc.
|
791
|
+
#
|
792
|
+
# @return Upload object
|
793
|
+
#
|
794
|
+
# @raise App42Exception
|
795
|
+
#
|
796
|
+
|
797
|
+
def get_files_by_type(uploadFileType)
|
798
|
+
puts "get Files By Type Called "
|
799
|
+
puts "Base url #{@base_url}"
|
800
|
+
response = nil;
|
801
|
+
uploadObj = nil;
|
802
|
+
uploadObj = Upload.new
|
803
|
+
util = Util.new
|
804
|
+
util.throwExceptionIfNullOrBlank(uploadFileType, "uploadFileType");
|
805
|
+
begin
|
806
|
+
if (UploadFileType.new.isAvailable(uploadFileType) == nil)
|
807
|
+
raise App42NotFoundException.new("Upload File Type #{uploadFileType} does not Exist ");
|
808
|
+
end
|
809
|
+
connection = App42::Connection::RESTConnection.new(@base_url)
|
810
|
+
query_params = Hash.new
|
811
|
+
params = {
|
812
|
+
'apiKey'=> @api_key,
|
813
|
+
'version' => @version,
|
814
|
+
'timeStamp' => util.get_timestamp_utc,
|
815
|
+
}
|
816
|
+
query_params = params.clone
|
817
|
+
params.store("type", uploadFileType)
|
818
|
+
puts query_params
|
819
|
+
signature = util.sign(@secret_key, params)
|
820
|
+
resource_url = "#{@version}/#{@resource}/type/#{uploadFileType}"
|
821
|
+
response = connection.get(signature, resource_url, query_params)
|
822
|
+
upload = UploadResponseBuilder.new()
|
823
|
+
uploadObj = upload.buildResponse(response)
|
824
|
+
rescue App42Exception =>e
|
825
|
+
raise e
|
826
|
+
rescue Exception => e
|
827
|
+
raise App42Exception.new(e)
|
828
|
+
end
|
829
|
+
return uploadObj
|
830
|
+
end
|
831
|
+
|
832
|
+
#
|
833
|
+
# Gets count of all the files for the App
|
834
|
+
#
|
835
|
+
# @return App42Response object
|
836
|
+
#
|
837
|
+
# @raise App42Exception
|
838
|
+
#
|
839
|
+
|
840
|
+
def get_all_files_count()
|
841
|
+
puts "get_all_files_count Called "
|
842
|
+
puts "Base url #{@base_url}"
|
843
|
+
response = nil;
|
844
|
+
responseObj = App42Response.new
|
845
|
+
util = Util.new
|
846
|
+
begin
|
847
|
+
connection = App42::Connection::RESTConnection.new(@base_url)
|
848
|
+
query_params = Hash.new
|
849
|
+
params = {
|
850
|
+
'apiKey'=> @api_key,
|
851
|
+
'version' => @version,
|
852
|
+
'timeStamp' => util.get_timestamp_utc,
|
853
|
+
}
|
854
|
+
query_params = params.clone
|
855
|
+
puts query_params
|
856
|
+
signature = util.sign(@secret_key, params)
|
857
|
+
resource_url = "#{@version}/#{@resource}/count"
|
858
|
+
response = connection.get(signature, resource_url, query_params)
|
859
|
+
responseObj.strResponse=(response)
|
860
|
+
responseObj.isResponseSuccess=(true)
|
861
|
+
responseObj = UploadResponseBuilder.new()
|
862
|
+
responseObj.getTotalRecords(response);
|
863
|
+
rescue App42Exception =>e
|
864
|
+
raise e
|
865
|
+
rescue Exception => e
|
866
|
+
raise App42Exception.new(e)
|
867
|
+
end
|
868
|
+
return responseObj
|
869
|
+
end
|
870
|
+
|
871
|
+
# Gets the count of file based on user name.
|
872
|
+
#
|
873
|
+
# @param userName
|
874
|
+
# - The name of the user for which count of the file has to be retrieved
|
875
|
+
#
|
876
|
+
# @return App42Response object
|
877
|
+
#
|
878
|
+
# @raise App42Exception
|
879
|
+
#
|
880
|
+
|
881
|
+
def get_all_files_count_by_user(userName)
|
882
|
+
puts "get_all_files_count_by_user Called "
|
883
|
+
puts "Base url #{@base_url}"
|
884
|
+
response = nil;
|
885
|
+
responseObj = App42Response.new
|
886
|
+
util = Util.new
|
887
|
+
util.throwExceptionIfNullOrBlank(userName, "User Name");
|
888
|
+
begin
|
889
|
+
connection = App42::Connection::RESTConnection.new(@base_url)
|
890
|
+
query_params = Hash.new
|
891
|
+
params = {
|
892
|
+
'apiKey'=> @api_key,
|
893
|
+
'version' => @version,
|
894
|
+
'timeStamp' => util.get_timestamp_utc,
|
895
|
+
}
|
896
|
+
query_params = params.clone
|
897
|
+
params.store("userName", userName);
|
898
|
+
puts query_params
|
899
|
+
signature = util.sign(@secret_key, params)
|
900
|
+
resource_url = "#{@version}/#{@resource}/user/#{userName}/count"
|
901
|
+
response = connection.get(signature, resource_url, query_params)
|
902
|
+
responseObj.strResponse=(response)
|
903
|
+
responseObj.isResponseSuccess=(true)
|
904
|
+
responseObj = UploadResponseBuilder.new()
|
905
|
+
responseObj.getTotalRecords(response);
|
906
|
+
rescue App42Exception =>e
|
907
|
+
raise e
|
908
|
+
rescue Exception => e
|
909
|
+
raise App42Exception.new(e)
|
910
|
+
end
|
911
|
+
return responseObj
|
912
|
+
end
|
913
|
+
|
914
|
+
#
|
915
|
+
# Get the count of files based on file type.
|
916
|
+
#
|
917
|
+
# @param uploadFileType
|
918
|
+
# - Type of the file e.g. Upload.AUDIO, Upload.XML etc.
|
919
|
+
#
|
920
|
+
# @return App42Response object
|
921
|
+
#
|
922
|
+
# @raise App42Exception
|
923
|
+
#
|
924
|
+
|
925
|
+
def get_files_count_by_type(uploadFileType)
|
926
|
+
puts "getFilesCountByType Called "
|
927
|
+
puts "Base url #{@base_url}"
|
928
|
+
response = nil;
|
929
|
+
responseObj = App42Response.new
|
930
|
+
util = Util.new
|
931
|
+
util.throwExceptionIfNullOrBlank(uploadFileType, "uploadFileType");
|
932
|
+
begin
|
933
|
+
connection = App42::Connection::RESTConnection.new(@base_url)
|
934
|
+
query_params = Hash.new
|
935
|
+
params = {
|
936
|
+
'apiKey'=> @api_key,
|
937
|
+
'version' => @version,
|
938
|
+
'timeStamp' => util.get_timestamp_utc,
|
939
|
+
}
|
940
|
+
query_params = params.clone
|
941
|
+
params.store("type", uploadFileType);
|
942
|
+
puts query_params
|
943
|
+
signature = util.sign(@secret_key, params)
|
944
|
+
resource_url = "#{@version}/#{@resource}/type/#{uploadFileType}/count"
|
945
|
+
response = connection.get(signature, resource_url, query_params)
|
946
|
+
responseObj.strResponse=(response)
|
947
|
+
responseObj.isResponseSuccess=(true)
|
948
|
+
responseObj = UploadResponseBuilder.new()
|
949
|
+
responseObj.getTotalRecords(response);
|
950
|
+
rescue App42Exception =>e
|
951
|
+
raise e
|
952
|
+
rescue Exception => e
|
953
|
+
raise App42Exception.new(e)
|
954
|
+
end
|
955
|
+
return responseObj
|
956
|
+
end
|
957
|
+
|
958
|
+
end
|
959
|
+
end
|
960
|
+
end
|