class SynergyWholesale::Adapter

Attributes

client[R]

Public Class Methods

new() click to toggle source
# File lib/synergy_wholesale/adapter.rb, line 8
def initialize
  @client = Savon.client(
    wsdl:       SynergyWholesale.wsdl_path,
    namespaces: { 'xmlns:enc' => 'http://schemas.xmlsoap.org/soap/encoding/' }
  )
end

Public Instance Methods

add_param(key, value) click to toggle source
# File lib/synergy_wholesale/adapter.rb, line 15
def add_param(key, value)
  params[key] = value
end
add_params(*params) click to toggle source
# File lib/synergy_wholesale/adapter.rb, line 19
def add_params(*params)
  return if params.blank?

  if params.size == 1 && params.first.is_a?(Hash)
    params.first.each { |key, value| add_param key, value }
  else
    raise 'params are required to be key/value combinations'
  end
end
call(action) click to toggle source
# File lib/synergy_wholesale/adapter.rb, line 36
def call(action)
  client.call(action, message: { request: params })
end
params() click to toggle source
# File lib/synergy_wholesale/adapter.rb, line 29
def params
  @params ||= {
    'resellerID' => SynergyWholesale.reseller_id,
    'apiKey'     => SynergyWholesale.api_key
  }
end