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.



22867
22868
22869
22870
22871
22872
22873
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 22867

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.



22865
22866
22867
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 22865

def emails
  @emails
end

#organization_qObject (readonly)

Returns the value of attribute organization_q.



22865
22866
22867
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 22865

def organization_q
  @organization_q
end

#typeObject (readonly)

Returns the value of attribute type.



22865
22866
22867
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 22865

def type
  @type
end

Instance Method Details

#copy(incoming = {}) ⇒ Object



22879
22880
22881
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 22879

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

#to_hashObject



22883
22884
22885
22886
22887
22888
22889
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 22883

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

#to_jsonObject



22875
22876
22877
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 22875

def to_json
  JSON.dump(to_hash)
end