class AIPP::LF::ENR41
ENR Navaids
Public Instance Methods
parse()
click to toggle source
# File lib/aipp/regions/LF/ENR-4.1.rb 10 def parse 11 prepare(html: read).css('tbody').each do |tbody| 12 tbody.css('tr').to_enum.with_index(1).each do |tr, index| 13 tds = tr.css('td') 14 navigational_aid = navigational_aid_from( 15 { 16 name: tds[0], 17 type: tds[1], 18 id: tds[2], 19 f: tds[3], 20 schedule: tds[4], 21 xy: tds[5], 22 z: tds[6] 23 }, 24 source: source(position: tr.line), 25 sections: { 26 range: tds[5].css('span[id*="PORTEE"], span[id*="COUVERTURE"]'), 27 situation: tds[7], 28 observations: tds[9] 29 } 30 ) 31 if navigational_aid && aixm.features.find_by(navigational_aid.class, id: navigational_aid.id, xy: navigational_aid.xy).none? 32 add navigational_aid 33 end 34 rescue => error 35 warn("error parsing navigational aid at ##{index}: #{error.message}", pry: error) 36 end 37 end 38 end