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.



16550
16551
16552
16553
16554
16555
16556
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 16550

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.



16548
16549
16550
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 16548

def emails
  @emails
end

#organization_qObject (readonly)

Returns the value of attribute organization_q.



16548
16549
16550
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 16548

def organization_q
  @organization_q
end

#typeObject (readonly)

Returns the value of attribute type.



16548
16549
16550
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 16548

def type
  @type
end

Instance Method Details

#copy(incoming = {}) ⇒ Object



16562
16563
16564
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 16562

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

#to_hashObject



16566
16567
16568
16569
16570
16571
16572
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 16566

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

#to_jsonObject



16558
16559
16560
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 16558

def to_json
  JSON.dump(to_hash)
end