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.



16163
16164
16165
16166
16167
16168
16169
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 16163

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.



16161
16162
16163
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 16161

def emails
  @emails
end

#organization_qObject (readonly)

Returns the value of attribute organization_q.



16161
16162
16163
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 16161

def organization_q
  @organization_q
end

#typeObject (readonly)

Returns the value of attribute type.



16161
16162
16163
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 16161

def type
  @type
end

Instance Method Details

#copy(incoming = {}) ⇒ Object



16175
16176
16177
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 16175

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

#to_hashObject



16179
16180
16181
16182
16183
16184
16185
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 16179

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

#to_jsonObject



16171
16172
16173
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 16171

def to_json
  JSON.dump(to_hash)
end