class Trackerific::Parsers::FedEx
Protected Instance Methods
events()
click to toggle source
# File lib/trackerific/parsers/fedex.rb, line 16 def events activity.map do |event| Trackerific::Event.new parse_date(event), description(event), location(event) end end
response_error()
click to toggle source
# File lib/trackerific/parsers/fedex.rb, line 4 def response_error @response_error ||= if highest_severity == 'ERROR' Trackerific::Error.new(notifications[:message]) else false end end
summary()
click to toggle source
# File lib/trackerific/parsers/fedex.rb, line 12 def summary description(activity.first) end
Private Instance Methods
activity()
click to toggle source
# File lib/trackerific/parsers/fedex.rb, line 45 def activity @activity ||= begin a = track_details[:events] a.is_a?(Array) ? a : [a] end end
description(event)
click to toggle source
# File lib/trackerific/parsers/fedex.rb, line 24 def description(event) event[:event_description] end
highest_severity()
click to toggle source
# File lib/trackerific/parsers/fedex.rb, line 52 def highest_severity track_reply[:highest_severity] end
location(event)
click to toggle source
# File lib/trackerific/parsers/fedex.rb, line 28 def location(event) a = event[:address] "#{a[:city]}, #{a[:state_or_province_code]} #{a[:country_code]}" end
notifications()
click to toggle source
# File lib/trackerific/parsers/fedex.rb, line 56 def notifications track_reply[:notifications] end
parse_date(event)
click to toggle source
# File lib/trackerific/parsers/fedex.rb, line 33 def parse_date(event) event[:timestamp] end
track_details()
click to toggle source
# File lib/trackerific/parsers/fedex.rb, line 41 def track_details @track_details ||= track_reply[:completed_track_details][:track_details] end
track_reply()
click to toggle source
# File lib/trackerific/parsers/fedex.rb, line 37 def track_reply @response.hash[:envelope][:body][:track_reply] end