Class: Io::Flow::V0::Models::ExportForm

Inherits:
Object
  • Object
show all
Defined in:
lib/flow_commerce/flow_api_v0_client.rb

Overview

Export forms are used to create exports. The export type defines both the type of the export (e.g. the CSV File format) and the available parameters for each export (e.g. the filters to apply to select the desired data).

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(incoming = {}) ⇒ ExportForm

Returns a new instance of ExportForm.



32396
32397
32398
32399
32400
32401
32402
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 32396

def initialize(incoming={})
  opts = HttpClient::Helper.symbolize_keys(incoming)
  HttpClient::Preconditions.require_keys(opts, [:type], 'ExportForm')
  @type = (x = opts.delete(:type); x.is_a?(::Io::Flow::V0::Models::ExportType) ? x : ::Io::Flow::V0::Models::ExportType.from_json(x))
  @emails = (x = opts.delete(:emails); x.nil? ? nil : HttpClient::Preconditions.assert_class('emails', x, Array).map { |v| HttpClient::Preconditions.assert_class('emails', v, String) })
  @organization_q = (x = opts.delete(:organization_q); x.nil? ? nil : HttpClient::Preconditions.assert_class('organization_q', x, String))
end

Instance Attribute Details

#emailsObject (readonly)

Returns the value of attribute emails.



32394
32395
32396
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 32394

def emails
  @emails
end

#organization_qObject (readonly)

Returns the value of attribute organization_q.



32394
32395
32396
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 32394

def organization_q
  @organization_q
end

#typeObject (readonly)

Returns the value of attribute type.



32394
32395
32396
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 32394

def type
  @type
end

Instance Method Details

#copy(incoming = {}) ⇒ Object



32408
32409
32410
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 32408

def copy(incoming={})
  ExportForm.new(to_hash.merge(HttpClient::Helper.symbolize_keys(incoming)))
end

#to_hashObject



32412
32413
32414
32415
32416
32417
32418
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 32412

def to_hash
  {
    :type => type.to_hash,
    :emails => emails.nil? ? nil : emails,
    :organization_q => organization_q
  }
end

#to_jsonObject



32404
32405
32406
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 32404

def to_json
  JSON.dump(to_hash)
end