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.



16685
16686
16687
16688
16689
16690
16691
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 16685

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.



16683
16684
16685
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 16683

def emails
  @emails
end

#organization_qObject (readonly)

Returns the value of attribute organization_q.



16683
16684
16685
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 16683

def organization_q
  @organization_q
end

#typeObject (readonly)

Returns the value of attribute type.



16683
16684
16685
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 16683

def type
  @type
end

Instance Method Details

#copy(incoming = {}) ⇒ Object



16697
16698
16699
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 16697

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

#to_hashObject



16701
16702
16703
16704
16705
16706
16707
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 16701

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

#to_jsonObject



16693
16694
16695
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 16693

def to_json
  JSON.dump(to_hash)
end