Class: Hotfile::Record::BKI62
- Defined in:
- lib/hotfile/record/BKI62.rb
Overview
Unticketed Point Information Record
Instance Method Summary collapse
-
#initialize(line) ⇒ BKI62
constructor
A new instance of BKI62.
Methods inherited from Record
Constructor Details
#initialize(line) ⇒ BKI62
Returns a new instance of BKI62.
7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 |
# File 'lib/hotfile/record/BKI62.rb', line 7 def initialize(line) super segment, departure_airport, departure_date, departure_time, departure_terminal, arrival_airport, arrival_date, arrival_time, arrival_terminal, reserved = line.scan(/ (\d) ([A-Z0-9 ]{5}) ([A-Z0-9 ]{7}) ([\d ]{5}) ([A-Z0-9 ]{5}) ([A-Z0-9 ]{5}) ([A-Z0-9 ]{7}) ([\d ]{5}) ([A-Z0-9 ]{5}) (.{51}) /x).flatten departure_time = departure_time.strip departure_time = departure_time.insert(2, ':') if departure_time.length > 2 departure_datetime = DateTime.parse("#{Hotfile::Date.new(departure_date).to_date} #{departure_time}") if departure_date.strip.length > 0 arrival_time = arrival_time.strip arrival_time = arrival_time.insert(2, ':') if arrival_time.length > 2 arrival_datetime = DateTime.parse("#{Hotfile::Date.new(arrival_date).to_date} #{arrival_time}") if arrival_date.strip.length > 0 @data = { segment: segment.to_i, departure: { airport: departure_airport.strip, datetime: departure_datetime, terminal: departure_terminal.strip }, arrival: { airport: arrival_airport.strip, datetime: arrival_datetime, terminal: arrival_terminal.strip }, reserved: reserved.strip } end |