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.



22941
22942
22943
22944
22945
22946
22947
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 22941

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.



22939
22940
22941
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 22939

def emails
  @emails
end

#organization_qObject (readonly)

Returns the value of attribute organization_q.



22939
22940
22941
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 22939

def organization_q
  @organization_q
end

#typeObject (readonly)

Returns the value of attribute type.



22939
22940
22941
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 22939

def type
  @type
end

Instance Method Details

#copy(incoming = {}) ⇒ Object



22953
22954
22955
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 22953

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

#to_hashObject



22957
22958
22959
22960
22961
22962
22963
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 22957

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

#to_jsonObject



22949
22950
22951
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 22949

def to_json
  JSON.dump(to_hash)
end