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.



23191
23192
23193
23194
23195
23196
23197
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 23191

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.



23189
23190
23191
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 23189

def emails
  @emails
end

#organization_qObject (readonly)

Returns the value of attribute organization_q.



23189
23190
23191
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 23189

def organization_q
  @organization_q
end

#typeObject (readonly)

Returns the value of attribute type.



23189
23190
23191
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 23189

def type
  @type
end

Instance Method Details

#copy(incoming = {}) ⇒ Object



23203
23204
23205
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 23203

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

#to_hashObject



23207
23208
23209
23210
23211
23212
23213
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 23207

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

#to_jsonObject



23199
23200
23201
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 23199

def to_json
  JSON.dump(to_hash)
end