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.



16613
16614
16615
16616
16617
16618
16619
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 16613

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.



16611
16612
16613
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 16611

def emails
  @emails
end

#organization_qObject (readonly)

Returns the value of attribute organization_q.



16611
16612
16613
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 16611

def organization_q
  @organization_q
end

#typeObject (readonly)

Returns the value of attribute type.



16611
16612
16613
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 16611

def type
  @type
end

Instance Method Details

#copy(incoming = {}) ⇒ Object



16625
16626
16627
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 16625

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

#to_hashObject



16629
16630
16631
16632
16633
16634
16635
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 16629

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

#to_jsonObject



16621
16622
16623
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 16621

def to_json
  JSON.dump(to_hash)
end