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.



25736
25737
25738
25739
25740
25741
25742
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 25736

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.



25734
25735
25736
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 25734

def emails
  @emails
end

#organization_qObject (readonly)

Returns the value of attribute organization_q.



25734
25735
25736
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 25734

def organization_q
  @organization_q
end

#typeObject (readonly)

Returns the value of attribute type.



25734
25735
25736
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 25734

def type
  @type
end

Instance Method Details

#copy(incoming = {}) ⇒ Object



25748
25749
25750
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 25748

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

#to_hashObject



25752
25753
25754
25755
25756
25757
25758
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 25752

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

#to_jsonObject



25744
25745
25746
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 25744

def to_json
  JSON.dump(to_hash)
end