Class: DPay::BankService

Inherits:
Object
  • Object
show all
Defined in:
lib/dpay/bank/bank_service.rb,
sig/dpay/bank/bank_service.rbs

Constant Summary collapse

PATH =

Returns:

  • (String)
"/api/v1/pbl/banks"

Instance Method Summary collapse

Constructor Details

#initialize(api) ⇒ BankService

Returns a new instance of BankService.

Parameters:



7
8
9
# File 'lib/dpay/bank/bank_service.rb', line 7

def initialize(api)
  @api = api
end

Instance Method Details

#allArray[Bank]

Returns:



11
12
13
# File 'lib/dpay/bank/bank_service.rb', line 11

def all
  map_banks(@api.get_json(Internal::BaseUrls::PANEL, PATH))
end

#for_service(timestamp = nil) ⇒ Array[Bank]

Parameters:

  • timestamp (Integer, nil) (defaults to: nil)

Returns:



15
16
17
18
19
20
# File 'lib/dpay/bank/bank_service.rb', line 15

def for_service(timestamp = nil)
  body = { "service" => @api.service, "timestamp" => timestamp || Time.now.to_i }
  body["checksum"] = @api.checksum.ordered_body(body.values)

  map_banks(@api.post_json(Internal::BaseUrls::PANEL, PATH, body))
end

#map_banks(data) ⇒ Array[Bank]

Parameters:

  • data (Object)

Returns:



24
25
26
# File 'lib/dpay/bank/bank_service.rb', line 24

def map_banks(data)
  Internal::Coerce.list(data).map { |bank| Bank.from_api(bank) }
end