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.



14495
14496
14497
14498
14499
14500
14501
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 14495

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.



14493
14494
14495
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 14493

def emails
  @emails
end

#organization_qObject (readonly)

Returns the value of attribute organization_q.



14493
14494
14495
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 14493

def organization_q
  @organization_q
end

#typeObject (readonly)

Returns the value of attribute type.



14493
14494
14495
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 14493

def type
  @type
end

Instance Method Details

#copy(incoming = {}) ⇒ Object



14507
14508
14509
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 14507

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

#to_hashObject



14511
14512
14513
14514
14515
14516
14517
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 14511

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

#to_jsonObject



14503
14504
14505
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 14503

def to_json
  JSON.dump(to_hash)
end