class JpBank::Bank
Public Class Methods
codes()
click to toggle source
# File lib/jp_bank/bank.rb, line 5 def self.codes self.load_banks unless @bank_codes @bank_codes.keys end
fetch_bank_from_code(code)
click to toggle source
# File lib/jp_bank/bank.rb, line 10 def self.fetch_bank_from_code(code) self.load_banks unless @bank_codes code = '%04d' % code if code.is_a?(Integer) @bank_codes[code] end
fetch_bank_from_name(name)
click to toggle source
# File lib/jp_bank/bank.rb, line 16 def self.fetch_bank_from_name(name) self.load_banks unless @bank_names @bank_names[name] end
find(code_or_name)
click to toggle source
# File lib/jp_bank/bank.rb, line 21 def self.find(code_or_name) self.fetch_bank_from_code(code_or_name) or self.fetch_bank_from_name(code_or_name) end
find!(code_or_name)
click to toggle source
# File lib/jp_bank/bank.rb, line 26 def self.find!(code_or_name) bank = find(code_or_name) raise NotFound if bank.nil? bank end
new(data)
click to toggle source
# File lib/jp_bank/bank.rb, line 32 def initialize(data) @data = data end
Private Class Methods
data_file_paths()
click to toggle source
# File lib/jp_bank/bank.rb, line 59 def self.data_file_paths [ File.expand_path('../data/banks.yml', __FILE__) ] end
load_banks()
click to toggle source
# File lib/jp_bank/bank.rb, line 45 def self.load_banks require 'yaml' @banks = data_file_paths.inject([]) do |data, data_path| data + YAML.load_file(data_path) end.map { |data| new(data) } @bank_codes = {} @banks.each do |bank| @bank_codes[bank.code] = bank end @bank_names = {} @banks.each { |bank| @bank_names[bank.name] = bank } end
Public Instance Methods
code()
click to toggle source
# File lib/jp_bank/bank.rb, line 36 def code @data['code'] end
name()
click to toggle source
# File lib/jp_bank/bank.rb, line 40 def name @data['name'] end