Class: MT940Structured::Header

Inherits:
Object
  • Object
show all
Defined in:
lib/mt940_structured/header.rb

Constant Summary collapse

R_RABOBANK =
/^:940:/
R_ABN_AMRO =
/ABNANL/
R_TRIODOS =
/^:25:TRIODOSBANK/
R_ING =
/INGBNL/

Instance Method Summary collapse

Constructor Details

#initialize(raw_lines) ⇒ Header

Returns a new instance of Header.



8
9
10
# File 'lib/mt940_structured/header.rb', line 8

def initialize(raw_lines)
  @raw_lines = raw_lines
end

Instance Method Details

#parserObject



12
13
14
15
16
17
18
19
20
21
22
23
24
# File 'lib/mt940_structured/header.rb', line 12

def parser
  if @raw_lines[0].match(R_RABOBANK)
    MT940Structured::Parsers::Rabobank::Parser.new
  elsif @raw_lines[0].match(R_ABN_AMRO)
    MT940Structured::Parsers::Abnamro::Parser.new
  elsif @raw_lines[1] && @raw_lines[1].match(R_TRIODOS)
    MT940Structured::Parsers::Triodos::Parser.new
  elsif @raw_lines[0].match(R_ING)
    MT940Structured::Parsers::Ing::Parser.new
  else
    raise UnsupportedBankError.new
  end
end