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.



16606
16607
16608
16609
16610
16611
16612
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 16606

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.



16604
16605
16606
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 16604

def emails
  @emails
end

#organization_qObject (readonly)

Returns the value of attribute organization_q.



16604
16605
16606
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 16604

def organization_q
  @organization_q
end

#typeObject (readonly)

Returns the value of attribute type.



16604
16605
16606
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 16604

def type
  @type
end

Instance Method Details

#copy(incoming = {}) ⇒ Object



16618
16619
16620
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 16618

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

#to_hashObject



16622
16623
16624
16625
16626
16627
16628
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 16622

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

#to_jsonObject



16614
16615
16616
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 16614

def to_json
  JSON.dump(to_hash)
end