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.



31865
31866
31867
31868
31869
31870
31871
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 31865

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.



31863
31864
31865
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 31863

def emails
  @emails
end

#organization_qObject (readonly)

Returns the value of attribute organization_q.



31863
31864
31865
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 31863

def organization_q
  @organization_q
end

#typeObject (readonly)

Returns the value of attribute type.



31863
31864
31865
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 31863

def type
  @type
end

Instance Method Details

#copy(incoming = {}) ⇒ Object



31877
31878
31879
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 31877

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

#to_hashObject



31881
31882
31883
31884
31885
31886
31887
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 31881

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

#to_jsonObject



31873
31874
31875
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 31873

def to_json
  JSON.dump(to_hash)
end