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.



19207
19208
19209
19210
19211
19212
19213
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 19207

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.



19205
19206
19207
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 19205

def emails
  @emails
end

#organization_qObject (readonly)

Returns the value of attribute organization_q.



19205
19206
19207
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 19205

def organization_q
  @organization_q
end

#typeObject (readonly)

Returns the value of attribute type.



19205
19206
19207
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 19205

def type
  @type
end

Instance Method Details

#copy(incoming = {}) ⇒ Object



19219
19220
19221
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 19219

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

#to_hashObject



19223
19224
19225
19226
19227
19228
19229
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 19223

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

#to_jsonObject



19215
19216
19217
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 19215

def to_json
  JSON.dump(to_hash)
end