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.



37880
37881
37882
37883
37884
37885
37886
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 37880

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.



37878
37879
37880
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 37878

def emails
  @emails
end

#organization_qObject (readonly)

Returns the value of attribute organization_q.



37878
37879
37880
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 37878

def organization_q
  @organization_q
end

#typeObject (readonly)

Returns the value of attribute type.



37878
37879
37880
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 37878

def type
  @type
end

Instance Method Details

#copy(incoming = {}) ⇒ Object



37892
37893
37894
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 37892

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

#to_hashObject



37896
37897
37898
37899
37900
37901
37902
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 37896

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

#to_jsonObject



37888
37889
37890
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 37888

def to_json
  JSON.dump(to_hash)
end