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.



19554
19555
19556
19557
19558
19559
19560
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 19554

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.



19552
19553
19554
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 19552

def emails
  @emails
end

#organization_qObject (readonly)

Returns the value of attribute organization_q.



19552
19553
19554
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 19552

def organization_q
  @organization_q
end

#typeObject (readonly)

Returns the value of attribute type.



19552
19553
19554
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 19552

def type
  @type
end

Instance Method Details

#copy(incoming = {}) ⇒ Object



19566
19567
19568
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 19566

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

#to_hashObject



19570
19571
19572
19573
19574
19575
19576
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 19570

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

#to_jsonObject



19562
19563
19564
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 19562

def to_json
  JSON.dump(to_hash)
end