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.



15133
15134
15135
15136
15137
15138
15139
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 15133

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.



15131
15132
15133
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 15131

def emails
  @emails
end

#organization_qObject (readonly)

Returns the value of attribute organization_q.



15131
15132
15133
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 15131

def organization_q
  @organization_q
end

#typeObject (readonly)

Returns the value of attribute type.



15131
15132
15133
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 15131

def type
  @type
end

Instance Method Details

#copy(incoming = {}) ⇒ Object



15145
15146
15147
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 15145

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

#to_hashObject



15149
15150
15151
15152
15153
15154
15155
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 15149

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

#to_jsonObject



15141
15142
15143
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 15141

def to_json
  JSON.dump(to_hash)
end