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.



28365
28366
28367
28368
28369
28370
28371
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 28365

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.



28363
28364
28365
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 28363

def emails
  @emails
end

#organization_qObject (readonly)

Returns the value of attribute organization_q.



28363
28364
28365
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 28363

def organization_q
  @organization_q
end

#typeObject (readonly)

Returns the value of attribute type.



28363
28364
28365
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 28363

def type
  @type
end

Instance Method Details

#copy(incoming = {}) ⇒ Object



28377
28378
28379
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 28377

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

#to_hashObject



28381
28382
28383
28384
28385
28386
28387
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 28381

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

#to_jsonObject



28373
28374
28375
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 28373

def to_json
  JSON.dump(to_hash)
end