class Economic::Proxies::Actions::DebtorContact::All

Public Class Methods

new(caller) click to toggle source
# File lib/economic/proxies/actions/debtor_contact/all.rb, line 8
def initialize(caller)
  @caller = caller
  @session = caller.session
end

Public Instance Methods

call() click to toggle source
# File lib/economic/proxies/actions/debtor_contact/all.rb, line 13
def call
  build_partial_contact_entities(handles_from_endpoint)
end

Private Instance Methods

build(*options) click to toggle source
# File lib/economic/proxies/actions/debtor_contact/all.rb, line 19
def build(*options)
  @caller.build(options)
end
build_partial_contact_entities(handles) click to toggle source
# File lib/economic/proxies/actions/debtor_contact/all.rb, line 23
def build_partial_contact_entities(handles)
  handles.collect do |handle|
    contact = build
    contact.partial = true
    contact.persisted = true
    contact.handle = handle
    contact.id = handle[:id]
    contact.number = handle[:number]
    contact
  end
end
handle_key() click to toggle source
# File lib/economic/proxies/actions/debtor_contact/all.rb, line 39
def handle_key
  (Support::String.underscore(@caller.class.entity_class_name) + "_handle").to_sym
end
handles_from_endpoint() click to toggle source
# File lib/economic/proxies/actions/debtor_contact/all.rb, line 35
def handles_from_endpoint
  [response[handle_key]].flatten.reject(&:blank?)
end
owner() click to toggle source
# File lib/economic/proxies/actions/debtor_contact/all.rb, line 43
def owner
  @caller.owner
end
request(action, data) click to toggle source
# File lib/economic/proxies/actions/debtor_contact/all.rb, line 47
def request(action, data)
  @session.request(
    soap_action_name("Debtor", action),
    data
  )
end
response() click to toggle source
# File lib/economic/proxies/actions/debtor_contact/all.rb, line 54
def response
  request("get_debtor_contacts", "debtorHandle" => {"Number" => owner.number})
end
soap_action_name(entity_class, action) click to toggle source
# File lib/economic/proxies/actions/debtor_contact/all.rb, line 58
def soap_action_name(entity_class, action)
  Endpoint.new.soap_action_name(entity_class, action)
end