Module: TurkishBanks

Defined in:
lib/turkish_banks.rb,
lib/turkish_banks/bank.rb,
lib/turkish_banks/branch.rb,
lib/turkish_banks/version.rb,
lib/turkish_banks/turkish_banks.rb

Defined Under Namespace

Classes: Bank, BankNotFoundError, Branch

Constant Summary collapse

VERSION =
"1.0.0"
BANKS_URL =
'http://eftemkt.tcmb.gov.tr/bankasubelistesi/bankaSubeTumListe.xml'.freeze
DOC =
Nokogiri
.XML(::OpenURI.open_uri(BANKS_URL), nil, 'UTF-8')
.remove_namespaces!.freeze
LAST_UPDATE =
DOC.at_xpath('//bankaSubeTumListe')['tarih'].freeze

Class Method Summary collapse

Class Method Details

.banksObject



21
22
23
24
# File 'lib/turkish_banks/turkish_banks.rb', line 21

def self.banks
  nodes = DOC.xpath('//banka')
  nodes.each.map { |node| Hash.from_xml(node.to_s)['banka'] }
end

.get_bank_params(bank_name) ⇒ Object

Raises:



14
15
16
17
18
19
# File 'lib/turkish_banks/turkish_banks.rb', line 14

def self.get_bank_params(bank_name)
  node = DOC.at_xpath("//banka[bAd= '#{bank_name.upcase(:turkic)}']")
  raise BankNotFoundError if node.nil?

  Hash.from_xml(node.to_s)['banka']
end