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.



24518
24519
24520
24521
24522
24523
24524
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 24518

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.



24516
24517
24518
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 24516

def emails
  @emails
end

#organization_qObject (readonly)

Returns the value of attribute organization_q.



24516
24517
24518
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 24516

def organization_q
  @organization_q
end

#typeObject (readonly)

Returns the value of attribute type.



24516
24517
24518
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 24516

def type
  @type
end

Instance Method Details

#copy(incoming = {}) ⇒ Object



24530
24531
24532
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 24530

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

#to_hashObject



24534
24535
24536
24537
24538
24539
24540
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 24534

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

#to_jsonObject



24526
24527
24528
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 24526

def to_json
  JSON.dump(to_hash)
end