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.



32490
32491
32492
32493
32494
32495
32496
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 32490

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.



32488
32489
32490
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 32488

def emails
  @emails
end

#organization_qObject (readonly)

Returns the value of attribute organization_q.



32488
32489
32490
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 32488

def organization_q
  @organization_q
end

#typeObject (readonly)

Returns the value of attribute type.



32488
32489
32490
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 32488

def type
  @type
end

Instance Method Details

#copy(incoming = {}) ⇒ Object



32502
32503
32504
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 32502

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

#to_hashObject



32506
32507
32508
32509
32510
32511
32512
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 32506

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

#to_jsonObject



32498
32499
32500
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 32498

def to_json
  JSON.dump(to_hash)
end