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.



30649
30650
30651
30652
30653
30654
30655
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 30649

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.



30647
30648
30649
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 30647

def emails
  @emails
end

#organization_qObject (readonly)

Returns the value of attribute organization_q.



30647
30648
30649
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 30647

def organization_q
  @organization_q
end

#typeObject (readonly)

Returns the value of attribute type.



30647
30648
30649
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 30647

def type
  @type
end

Instance Method Details

#copy(incoming = {}) ⇒ Object



30661
30662
30663
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 30661

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

#to_hashObject



30665
30666
30667
30668
30669
30670
30671
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 30665

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

#to_jsonObject



30657
30658
30659
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 30657

def to_json
  JSON.dump(to_hash)
end