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.



15558
15559
15560
15561
15562
15563
15564
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 15558

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.



15556
15557
15558
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 15556

def emails
  @emails
end

#organization_qObject (readonly)

Returns the value of attribute organization_q.



15556
15557
15558
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 15556

def organization_q
  @organization_q
end

#typeObject (readonly)

Returns the value of attribute type.



15556
15557
15558
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 15556

def type
  @type
end

Instance Method Details

#copy(incoming = {}) ⇒ Object



15570
15571
15572
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 15570

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

#to_hashObject



15574
15575
15576
15577
15578
15579
15580
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 15574

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

#to_jsonObject



15566
15567
15568
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 15566

def to_json
  JSON.dump(to_hash)
end