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.



39665
39666
39667
39668
39669
39670
39671
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 39665

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.



39663
39664
39665
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 39663

def emails
  @emails
end

#organization_qObject (readonly)

Returns the value of attribute organization_q.



39663
39664
39665
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 39663

def organization_q
  @organization_q
end

#typeObject (readonly)

Returns the value of attribute type.



39663
39664
39665
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 39663

def type
  @type
end

Instance Method Details

#copy(incoming = {}) ⇒ Object



39677
39678
39679
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 39677

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

#to_hashObject



39681
39682
39683
39684
39685
39686
39687
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 39681

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

#to_jsonObject



39673
39674
39675
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 39673

def to_json
  JSON.dump(to_hash)
end