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.



16083
16084
16085
16086
16087
16088
16089
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 16083

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.



16081
16082
16083
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 16081

def emails
  @emails
end

#organization_qObject (readonly)

Returns the value of attribute organization_q.



16081
16082
16083
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 16081

def organization_q
  @organization_q
end

#typeObject (readonly)

Returns the value of attribute type.



16081
16082
16083
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 16081

def type
  @type
end

Instance Method Details

#copy(incoming = {}) ⇒ Object



16095
16096
16097
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 16095

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

#to_hashObject



16099
16100
16101
16102
16103
16104
16105
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 16099

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

#to_jsonObject



16091
16092
16093
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 16091

def to_json
  JSON.dump(to_hash)
end