class GoogleAnalyticsFeeds::RowParser
Parses rows from the GA feed via SAX. Clients shouldn’t have to use this - use a RowHandler
instead.
@api private
Public Class Methods
new(handler)
click to toggle source
# File lib/google_analytics_feeds.rb, line 126 def initialize(handler) @handler = handler end
Public Instance Methods
attr(name, value)
click to toggle source
# File lib/google_analytics_feeds.rb, line 140 def attr(name, value) if @property @property[name] = value end end
end_element(element)
click to toggle source
# File lib/google_analytics_feeds.rb, line 146 def end_element(element) case element when :entry handle_complete_row @row = nil when :"dxp:dimension", :"dxp:metric" handle_complete_property @property = nil end end
start_element(element)
click to toggle source
# File lib/google_analytics_feeds.rb, line 130 def start_element(element) case element when :entry @row = {} when :"dxp:dimension", :"dxp:metric" @property = {} end end
Private Instance Methods
handle_complete_property()
click to toggle source
# File lib/google_analytics_feeds.rb, line 163 def handle_complete_property if @row value = @property[:value] if @property[:type] == "integer" value = Integer(value) end name = name_to_symbol(@property[:name]) @row[name] = value end end
handle_complete_row()
click to toggle source
# File lib/google_analytics_feeds.rb, line 159 def handle_complete_row @handler.row(@row) end