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.



23937
23938
23939
23940
23941
23942
23943
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 23937

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.



23935
23936
23937
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 23935

def emails
  @emails
end

#organization_qObject (readonly)

Returns the value of attribute organization_q.



23935
23936
23937
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 23935

def organization_q
  @organization_q
end

#typeObject (readonly)

Returns the value of attribute type.



23935
23936
23937
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 23935

def type
  @type
end

Instance Method Details

#copy(incoming = {}) ⇒ Object



23949
23950
23951
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 23949

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

#to_hashObject



23953
23954
23955
23956
23957
23958
23959
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 23953

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

#to_jsonObject



23945
23946
23947
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 23945

def to_json
  JSON.dump(to_hash)
end