Class: AsposeWordsCloud::UploadFileRequest
- Inherits:
-
Object
- Object
- AsposeWordsCloud::UploadFileRequest
- Defined in:
- lib/aspose_words_cloud/models/requests/upload_file_request.rb
Overview
Request model for upload_file operation.
Instance Attribute Summary collapse
-
#file_content ⇒ Object
File to upload.
-
#path ⇒ Object
Path where to upload including filename and extension e.g.
-
#storage_name ⇒ Object
Storage name.
Instance Method Summary collapse
- #create_http_request(api_client) ⇒ Object
-
#downcase_first_letter(str) ⇒ Object
Helper method to convert first letter to downcase.
-
#get_response_type ⇒ Object
Get response type.
-
#initialize(file_content:, path:, storage_name: nil) ⇒ UploadFileRequest
constructor
Initializes a new instance.
-
#to_batch_part(api_client, requestId, parentRequestId = nil) ⇒ Object
Creating batch part from request.
Constructor Details
#initialize(file_content:, path:, storage_name: nil) ⇒ UploadFileRequest
Initializes a new instance.
49 50 51 52 53 |
# File 'lib/aspose_words_cloud/models/requests/upload_file_request.rb', line 49 def initialize(file_content:, path:, storage_name: nil) self.file_content = file_content self.path = path self.storage_name = storage_name end |
Instance Attribute Details
#file_content ⇒ Object
File to upload.
33 34 35 |
# File 'lib/aspose_words_cloud/models/requests/upload_file_request.rb', line 33 def file_content @file_content end |
#path ⇒ Object
Path where to upload including filename and extension e.g. /file.ext or /Folder 1/file.ext If the content is multipart and path does not contains the file name it tries to get them from filename parameter from Content-Disposition header.
38 39 40 |
# File 'lib/aspose_words_cloud/models/requests/upload_file_request.rb', line 38 def path @path end |
#storage_name ⇒ Object
Storage name.
41 42 43 |
# File 'lib/aspose_words_cloud/models/requests/upload_file_request.rb', line 41 def storage_name @storage_name end |
Instance Method Details
#create_http_request(api_client) ⇒ Object
118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 |
# File 'lib/aspose_words_cloud/models/requests/upload_file_request.rb', line 118 def create_http_request(api_client) # verify the required parameter 'file_content' is set raise ArgumentError, 'Missing the required parameter file_content when calling WordsApi.upload_file' if api_client.config.client_side_validation && self.file_content.nil? # verify the required parameter 'path' is set raise ArgumentError, 'Missing the required parameter path when calling WordsApi.upload_file' if api_client.config.client_side_validation && self.path.nil? # resource path local_var_path = '/words/storage/file/{path}'[1..-1] local_var_path = local_var_path.sub('{' + downcase_first_letter('Path') + '}', self.path.nil? ? '' : self.path.to_s) local_var_path = local_var_path.sub('//', '/') # query parameters query_params = {} query_params[downcase_first_letter('StorageName')] = self.storage_name unless self.storage_name.nil? # header parameters header_params = {} # HTTP header 'Content-Type' header_params['Content-Type'] = api_client.select_header_content_type(['multipart/form-data']) # form parameters form_params = [] files_content = [] if self.file_content.nil? raise "Parameter FileContent is required." end unless self.file_content.nil? form_params.push({:'Name' => 'fileContent', :'Data' => self.file_content, :'MimeType' =>'application/octet-stream'}) end body = api_client.build_request_body(header_params, form_params, files_content) { 'method': :PUT, 'path': local_var_path, 'header_params': header_params, 'query_params': query_params, 'body': body, 'auth_names': ['JWT'] } end |
#downcase_first_letter(str) ⇒ Object
Helper method to convert first letter to downcase
162 163 164 |
# File 'lib/aspose_words_cloud/models/requests/upload_file_request.rb', line 162 def downcase_first_letter(str) str[0].downcase + str[1..-1] end |
#get_response_type ⇒ Object
Get response type
167 168 169 |
# File 'lib/aspose_words_cloud/models/requests/upload_file_request.rb', line 167 def get_response_type 'FilesUploadResult' end |
#to_batch_part(api_client, requestId, parentRequestId = nil) ⇒ Object
Creating batch part from request
56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 |
# File 'lib/aspose_words_cloud/models/requests/upload_file_request.rb', line 56 def to_batch_part(api_client, requestId, parentRequestId = nil) # verify the required parameter 'file_content' is set raise ArgumentError, 'Missing the required parameter file_content when calling WordsApi.upload_file' if api_client.config.client_side_validation && self.file_content.nil? # verify the required parameter 'path' is set raise ArgumentError, 'Missing the required parameter path when calling WordsApi.upload_file' if api_client.config.client_side_validation && self.path.nil? # resource path local_var_path = '/words/storage/file/{path}'[7..-1] local_var_path = local_var_path.sub('{' + downcase_first_letter('Path') + '}', self.path.nil? ? '' : self.path.to_s) local_var_path = local_var_path.sub('//', '/') # query parameters query_params = {} query_params[downcase_first_letter('StorageName')] = self.storage_name unless self.storage_name.nil? if query_params query_params.each { |key, value| local_var_path = api_client.add_param_to_query(local_var_path, key, value) } end header_params = {} # header parameters # HTTP header 'Content-Type' header_params['Content-Type'] = api_client.select_header_content_type(['multipart/form-data']) header_params['RequestId'] = requestId if parentRequestId != nil header_params['DependsOn'] = parentRequestId end # form parameters form_params = [] files_content = [] if self.file_content.nil? raise "Parameter FileContent is required." end unless self.file_content.nil? form_params.push({:'Name' => 'fileContent', :'Data' => self.file_content, :'MimeType' =>'application/octet-stream'}) end # http body (model) body = api_client.build_request_body_batch(header_params, form_params, files_content) part = "" part.concat("PUT".force_encoding('UTF-8')) part.concat(" ".force_encoding('UTF-8')) part.concat(local_var_path.force_encoding('UTF-8')) part.concat(" \r\n".force_encoding('UTF-8')) header_params.each_pair {|key, value| part.concat(key.dup.force_encoding('UTF-8') , ": ".force_encoding('UTF-8'), value.dup.force_encoding('UTF-8'), "\r\n".force_encoding('UTF-8')) } part.concat("\r\n".force_encoding('UTF-8')) if body if body.is_a?(Hash) body.each do |key, value| part.concat(value, "\r\n") end else part.concat(body) end end part end |