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.



33452
33453
33454
33455
33456
33457
33458
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 33452

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.



33450
33451
33452
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 33450

def emails
  @emails
end

#organization_qObject (readonly)

Returns the value of attribute organization_q.



33450
33451
33452
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 33450

def organization_q
  @organization_q
end

#typeObject (readonly)

Returns the value of attribute type.



33450
33451
33452
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 33450

def type
  @type
end

Instance Method Details

#copy(incoming = {}) ⇒ Object



33464
33465
33466
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 33464

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

#to_hashObject



33468
33469
33470
33471
33472
33473
33474
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 33468

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

#to_jsonObject



33460
33461
33462
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 33460

def to_json
  JSON.dump(to_hash)
end