Class: K2ConnectRuby::K2Entity::ExternalRecipient

Inherits:
K2Entity
  • Object
show all
Defined in:
lib/k2-connect-ruby/k2_entity/k2_financial_entities/external_recipient.rb

Instance Attribute Summary collapse

Attributes inherited from K2Entity

#access_token, #k2_response_body, #location_url, #query_hash

Instance Method Summary collapse

Methods inherited from K2Entity

#initialize, #query

Constructor Details

This class inherits a constructor from K2ConnectRuby::K2Entity::K2Entity

Instance Attribute Details

#recipients_location_urlObject

Returns the value of attribute recipients_location_url.



7
8
9
# File 'lib/k2-connect-ruby/k2_entity/k2_financial_entities/external_recipient.rb', line 7

def recipients_location_url
  @recipients_location_url
end

Instance Method Details

#add_external_recipient(params) ⇒ Object

Raises:

  • (ArgumentError)


9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
# File 'lib/k2-connect-ruby/k2_entity/k2_financial_entities/external_recipient.rb', line 9

def add_external_recipient(params)
  params = params.with_indifferent_access
  external_recipient = build_recipient(params)
  raise(ArgumentError, external_recipient.errors.full_messages.first) unless external_recipient.valid?

  result = K2ConnectRuby::K2Services::SendK2ConnectPostRequestService.call(
    access_token,
    external_recipient.endpoint,
    external_recipient.request_body,
  )
  if result.success?
    @recipients_location_url = result.data[:response_headers][:location]
  else
    raise(result.errors.first)
  end
end

#query_resource(url) ⇒ Object

Query specific URL



32
33
34
# File 'lib/k2-connect-ruby/k2_entity/k2_financial_entities/external_recipient.rb', line 32

def query_resource(url)
  super(url)
end

#query_statusObject

Query/Check the status of a recently initiated Send money request



27
28
29
# File 'lib/k2-connect-ruby/k2_entity/k2_financial_entities/external_recipient.rb', line 27

def query_status
  super(recipients_location_url)
end