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.



15719
15720
15721
15722
15723
15724
15725
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 15719

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.



15717
15718
15719
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 15717

def emails
  @emails
end

#organization_qObject (readonly)

Returns the value of attribute organization_q.



15717
15718
15719
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 15717

def organization_q
  @organization_q
end

#typeObject (readonly)

Returns the value of attribute type.



15717
15718
15719
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 15717

def type
  @type
end

Instance Method Details

#copy(incoming = {}) ⇒ Object



15731
15732
15733
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 15731

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

#to_hashObject



15735
15736
15737
15738
15739
15740
15741
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 15735

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

#to_jsonObject



15727
15728
15729
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 15727

def to_json
  JSON.dump(to_hash)
end