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.



23664
23665
23666
23667
23668
23669
23670
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 23664

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.



23662
23663
23664
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 23662

def emails
  @emails
end

#organization_qObject (readonly)

Returns the value of attribute organization_q.



23662
23663
23664
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 23662

def organization_q
  @organization_q
end

#typeObject (readonly)

Returns the value of attribute type.



23662
23663
23664
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 23662

def type
  @type
end

Instance Method Details

#copy(incoming = {}) ⇒ Object



23676
23677
23678
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 23676

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

#to_hashObject



23680
23681
23682
23683
23684
23685
23686
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 23680

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

#to_jsonObject



23672
23673
23674
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 23672

def to_json
  JSON.dump(to_hash)
end