class Burglar::Heist
Collection of banks
Public Class Methods
new(params = {})
click to toggle source
# File lib/burglar/heist.rb, line 11 def initialize(params = {}) @options = load_options(params) end
Public Instance Methods
banks()
click to toggle source
# File lib/burglar/heist.rb, line 15 def banks @banks ||= @options[:banks].transform_values do |v| Burglar::Bank.new(@options.merge(v)) end end
transactions()
click to toggle source
# File lib/burglar/heist.rb, line 21 def transactions @transactions ||= Ledger.new( entries: banks.map { |_, v| v.transactions.entries }.flatten.sort ) end
Private Instance Methods
load_config(file)
click to toggle source
# File lib/burglar/heist.rb, line 29 def load_config(file) file ||= DEFAULT_CONFIG_FILE file = File.expand_path file Cymbal.symbolize YAML.safe_load(File.read(file)) end
load_options(params)
click to toggle source
# File lib/burglar/heist.rb, line 35 def load_options(params) load_config(params[:config]).merge(params) end