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.



32539
32540
32541
32542
32543
32544
32545
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 32539

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.



32537
32538
32539
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 32537

def emails
  @emails
end

#organization_qObject (readonly)

Returns the value of attribute organization_q.



32537
32538
32539
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 32537

def organization_q
  @organization_q
end

#typeObject (readonly)

Returns the value of attribute type.



32537
32538
32539
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 32537

def type
  @type
end

Instance Method Details

#copy(incoming = {}) ⇒ Object



32551
32552
32553
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 32551

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

#to_hashObject



32555
32556
32557
32558
32559
32560
32561
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 32555

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

#to_jsonObject



32547
32548
32549
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 32547

def to_json
  JSON.dump(to_hash)
end