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.



13555
13556
13557
13558
13559
13560
13561
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 13555

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.



13553
13554
13555
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 13553

def emails
  @emails
end

#organization_qObject (readonly)

Returns the value of attribute organization_q.



13553
13554
13555
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 13553

def organization_q
  @organization_q
end

#typeObject (readonly)

Returns the value of attribute type.



13553
13554
13555
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 13553

def type
  @type
end

Instance Method Details

#copy(incoming = {}) ⇒ Object



13567
13568
13569
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 13567

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

#to_hashObject



13571
13572
13573
13574
13575
13576
13577
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 13571

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

#to_jsonObject



13563
13564
13565
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 13563

def to_json
  JSON.dump(to_hash)
end