class P1MeterReader::Models::MeasurementParser
Public Class Methods
new()
click to toggle source
Calls superclass method
# File lib/p1_meter_reader/models/measurement_parser.rb, line 14 def initialize super @chain = P1MeterReader::DataParsing::ParseChain::StroomDalChain.new( P1MeterReader::DataParsing::ParseChain::StroomPiekChain.new( P1MeterReader::DataParsing::ParseChain::StroomCurrentChain.new( P1MeterReader::DataParsing::ParseChain::GasChain.new( P1MeterReader::DataParsing::ParseChain::SkipLineChain.new)))) end
Public Instance Methods
parse(input)
click to toggle source
# File lib/p1_meter_reader/models/measurement_parser.rb, line 24 def parse(input) output = Models::Measurement.new input = input.lines.to_enum output.time_stamp = DateTime.now # Convert to UTC before storing output.time_stamp_utc = DateTime.now.new_offset(0) while (true) @chain.try(input, output) end rescue StopIteration return output end