class AsposeCellsCloud::PostMetadataRequest

Attributes

cells_documents[RW]
check_excel_restriction[RW]
file[RW]
out_format[RW]
password[RW]
region[RW]

Public Class Methods

attribute_map() click to toggle source

Attribute mapping from ruby-style variable name to JSON key.

# File lib/aspose_cells_cloud/requests/post_metadata_request.rb, line 68
def self.attribute_map
  {
    :'file' => :'File',
    :'cells_documents' => :'cellsDocuments',
    :'password' => :'password',
    :'check_excel_restriction' => :'checkExcelRestriction',
    :'out_format' => :'outFormat',
    :'region' => :'region'
  }
end
new(attributes = {}) click to toggle source
# File lib/aspose_cells_cloud/requests/post_metadata_request.rb, line 41
def initialize(attributes = {})
  return unless attributes.is_a?(Hash)

  # convert string to symbol for hash key
  attributes = attributes.each_with_object({}){|(k,v), h| h[k.to_sym] = v}

  if attributes.has_key?(:'File')
      self.file = attributes[:'File']
  end
  if attributes.has_key?(:'cellsDocuments')
      self.cells_documents = attributes[:'cellsDocuments']
  end
  if attributes.has_key?(:'password')
      self.password = attributes[:'password']
  end
  if attributes.has_key?(:'checkExcelRestriction')
      self.check_excel_restriction = attributes[:'checkExcelRestriction']
  end
  if attributes.has_key?(:'outFormat')
      self.out_format = attributes[:'outFormat']
  end
  if attributes.has_key?(:'region')
      self.region = attributes[:'region']
  end

end
swagger_types() click to toggle source

Attribute type mapping.

# File lib/aspose_cells_cloud/requests/post_metadata_request.rb, line 80
def self.swagger_types
  {
    :'file' => :'Hash',
    :'cells_documents' => :'Array<CellsDocumentProperty>',
    :'password' => :'String',
    :'check_excel_restriction' => :'BOOLEAN',
    :'out_format' => :'String',
    :'region' => :'String'
  }
end

Public Instance Methods

create_http_request(api_client,opts = {}) click to toggle source
# File lib/aspose_cells_cloud/requests/post_metadata_request.rb, line 91
def create_http_request(api_client,opts = {})
  if api_client.config.debugging
    api_client.config.logger.debug "Calling API: CellsApi.post_metadata ..."
  end
  api_client.request_token_if_needed
  # verify the required parameter 'file' is set
  if api_client.config.client_side_validation && file.nil?
      fail ArgumentError, "Missing the required parameter 'file' when calling CellsApi.post_metadata "
  end 
  # verify the required parameter 'cells_documents' is set
  if api_client.config.client_side_validation && cells_documents.nil?
      fail ArgumentError, "Missing the required parameter 'cells_documents' when calling CellsApi.post_metadata "
  end 

  # resource path
  local_var_path = "/cells/metadata/update"
  # query parameters
  query_params = {}
  query_params[:'password'] = self.password if !self.password.nil? 
  query_params[:'checkExcelRestriction'] = self.check_excel_restriction if !self.check_excel_restriction.nil? 
  query_params[:'outFormat'] = self.out_format if !self.out_format.nil? 
  query_params[:'region'] = self.region if !self.region.nil? 

  # header parameters
  header_params = {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  header_params['Content-Type'] = api_client.select_header_content_type(['application/json'])

  # form parameters
  form_params = {}
  post_body = nil 
      file.each do |filename , context|
        form_params[filename]  = context
      end 
  form_params['cells_documents']  = post_body.to_json
  header_params['Content-Type'] = api_client.select_header_content_type(['multipart/form-data'])
     

  #auth_names = []
  auth_names = ['JWT']
  data, status_code, headers = api_client.call_api(:POST, local_var_path,
    :header_params => header_params,
    :query_params => query_params,
    :form_params => form_params,
    :body => post_body,
    :auth_names => auth_names,
    :return_type => 'FilesResult')
  if api_client.config.debugging
    api_client.config.logger.debug "API called: Specification.Name>Api.post_metadata\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end