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.



18888
18889
18890
18891
18892
18893
18894
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 18888

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.



18886
18887
18888
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 18886

def emails
  @emails
end

#organization_qObject (readonly)

Returns the value of attribute organization_q.



18886
18887
18888
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 18886

def organization_q
  @organization_q
end

#typeObject (readonly)

Returns the value of attribute type.



18886
18887
18888
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 18886

def type
  @type
end

Instance Method Details

#copy(incoming = {}) ⇒ Object



18900
18901
18902
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 18900

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

#to_hashObject



18904
18905
18906
18907
18908
18909
18910
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 18904

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

#to_jsonObject



18896
18897
18898
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 18896

def to_json
  JSON.dump(to_hash)
end