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.



12599
12600
12601
12602
12603
12604
12605
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 12599

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.



12597
12598
12599
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 12597

def emails
  @emails
end

#organization_qObject (readonly)

Returns the value of attribute organization_q.



12597
12598
12599
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 12597

def organization_q
  @organization_q
end

#typeObject (readonly)

Returns the value of attribute type.



12597
12598
12599
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 12597

def type
  @type
end

Instance Method Details

#copy(incoming = {}) ⇒ Object



12611
12612
12613
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 12611

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

#to_hashObject



12615
12616
12617
12618
12619
12620
12621
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 12615

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

#to_jsonObject



12607
12608
12609
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 12607

def to_json
  JSON.dump(to_hash)
end