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.



14766
14767
14768
14769
14770
14771
14772
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 14766

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.



14764
14765
14766
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 14764

def emails
  @emails
end

#organization_qObject (readonly)

Returns the value of attribute organization_q.



14764
14765
14766
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 14764

def organization_q
  @organization_q
end

#typeObject (readonly)

Returns the value of attribute type.



14764
14765
14766
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 14764

def type
  @type
end

Instance Method Details

#copy(incoming = {}) ⇒ Object



14778
14779
14780
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 14778

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

#to_hashObject



14782
14783
14784
14785
14786
14787
14788
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 14782

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

#to_jsonObject



14774
14775
14776
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 14774

def to_json
  JSON.dump(to_hash)
end