class AsposeEmailCloud::UploadFileRequest

Request model for upload_file operation.

Attributes

file[RW]

File to upload @return [File]

path[RW]

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.

@return [String]

storage_name[RW]

Storage name @return [String]

Public Class Methods

new(path:, file:, storage_name: nil) click to toggle source

Upload file @param [String] path 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.

@param [File] file File to upload @param [String] storage_name Storage name

# File lib/aspose-email-cloud/models/upload_file_request.rb, line 46
def initialize(path:, file:, storage_name: nil)
  self.path = path if path
  self.file = file if file
  self.storage_name = storage_name if storage_name
end

Public Instance Methods

to_http_info(api_client) click to toggle source
# File lib/aspose-email-cloud/models/upload_file_request.rb, line 52
def to_http_info(api_client)
  # verify the required parameter 'path' is set
  if api_client.config.client_side_validation && self.path.nil?
    raise ArgumentError, "Missing the required parameter 'path' when calling FileApi.upload_file"
  end
  # verify the required parameter 'file' is set
  if api_client.config.client_side_validation && self.file.nil?
    raise ArgumentError, "Missing the required parameter 'file' when calling FileApi.upload_file"
  end
  # resource path
  local_var_path = '/email/storage/file/{path}'.sub('{' + 'path' + '}', self.path.to_s)

  # query parameters
  query_params = {}
  query_params[:storageName] = self.storage_name unless self.storage_name.nil?

  # form parameters
  form_params = {}
  form_params['File'] = self.file

  # http body (model)
  auth_names = ['JWT']

  # header parameters
  header_params = {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = EmailRequest.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  header_params['Content-Type'] = form_params.any? ? 'multipart/form-data' : EmailRequest.select_header_content_type(['multipart/form-data'])

  AsposeEmailCloud::HttpRequest.new(resource_path: local_var_path,
                                    header_params: header_params,
                                    query_params: query_params,
                                    form_params: form_params,
                                    auth_names: auth_names)
end