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.



30197
30198
30199
30200
30201
30202
30203
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 30197

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.



30195
30196
30197
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 30195

def emails
  @emails
end

#organization_qObject (readonly)

Returns the value of attribute organization_q.



30195
30196
30197
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 30195

def organization_q
  @organization_q
end

#typeObject (readonly)

Returns the value of attribute type.



30195
30196
30197
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 30195

def type
  @type
end

Instance Method Details

#copy(incoming = {}) ⇒ Object



30209
30210
30211
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 30209

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

#to_hashObject



30213
30214
30215
30216
30217
30218
30219
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 30213

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

#to_jsonObject



30205
30206
30207
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 30205

def to_json
  JSON.dump(to_hash)
end