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.



16705
16706
16707
16708
16709
16710
16711
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 16705

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.



16703
16704
16705
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 16703

def emails
  @emails
end

#organization_qObject (readonly)

Returns the value of attribute organization_q.



16703
16704
16705
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 16703

def organization_q
  @organization_q
end

#typeObject (readonly)

Returns the value of attribute type.



16703
16704
16705
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 16703

def type
  @type
end

Instance Method Details

#copy(incoming = {}) ⇒ Object



16717
16718
16719
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 16717

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

#to_hashObject



16721
16722
16723
16724
16725
16726
16727
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 16721

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

#to_jsonObject



16713
16714
16715
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 16713

def to_json
  JSON.dump(to_hash)
end