Class: Io::Flow::V0::Models::ImportForm

Inherits:
Object
  • Object
show all
Defined in:
lib/flow_commerce/flow_api_v0_client.rb

Overview

Import forms create imports. The import type defines both the type of the import (e.g. the CSV File format) and the URL at which the source data are available. If you do not have a URL readily available, you can first upload a file via the Flow API - see the resource named ‘Upload’

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(incoming = {}) ⇒ ImportForm

Returns a new instance of ImportForm.



13999
14000
14001
14002
14003
14004
14005
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 13999

def initialize(incoming={})
  opts = HttpClient::Helper.symbolize_keys(incoming)
  HttpClient::Preconditions.require_keys(opts, [:type, :source_url], 'ImportForm')
  @type = (x = opts.delete(:type); x.is_a?(::Io::Flow::V0::Models::ImportType) ? x : ::Io::Flow::V0::Models::ImportType.apply(x))
  @source_url = HttpClient::Preconditions.assert_class('source_url', opts.delete(:source_url), String)
  @emails = (x = opts.delete(:emails); x.nil? ? nil : HttpClient::Preconditions.assert_class('emails', x, Array).map { |v| HttpClient::Preconditions.assert_class('emails', v, String) })
end

Instance Attribute Details

#emailsObject (readonly)

Returns the value of attribute emails.



13997
13998
13999
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 13997

def emails
  @emails
end

#source_urlObject (readonly)

Returns the value of attribute source_url.



13997
13998
13999
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 13997

def source_url
  @source_url
end

#typeObject (readonly)

Returns the value of attribute type.



13997
13998
13999
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 13997

def type
  @type
end

Instance Method Details

#copy(incoming = {}) ⇒ Object



14011
14012
14013
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 14011

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

#to_hashObject



14015
14016
14017
14018
14019
14020
14021
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 14015

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

#to_jsonObject



14007
14008
14009
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 14007

def to_json
  JSON.dump(to_hash)
end