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.



33090
33091
33092
33093
33094
33095
33096
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 33090

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.



33088
33089
33090
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 33088

def emails
  @emails
end

#organization_qObject (readonly)

Returns the value of attribute organization_q.



33088
33089
33090
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 33088

def organization_q
  @organization_q
end

#typeObject (readonly)

Returns the value of attribute type.



33088
33089
33090
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 33088

def type
  @type
end

Instance Method Details

#copy(incoming = {}) ⇒ Object



33102
33103
33104
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 33102

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

#to_hashObject



33106
33107
33108
33109
33110
33111
33112
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 33106

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

#to_jsonObject



33098
33099
33100
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 33098

def to_json
  JSON.dump(to_hash)
end