class Staccato::Subscribers::Page
Public Class Methods
call(*args)
click to toggle source
# File lib/staccato/subscribers/page.rb, line 4 def self.call(*args) new(args).track! end
new(args)
click to toggle source
# File lib/staccato/subscribers/page.rb, line 8 def initialize(args) @args = args end
Public Instance Methods
get?()
click to toggle source
# File lib/staccato/subscribers/page.rb, line 12 def get? payload[:method] == "GET" end
hostname()
click to toggle source
# File lib/staccato/subscribers/page.rb, line 20 def hostname Rails.configuration.staccato.hostname end
path()
click to toggle source
# File lib/staccato/subscribers/page.rb, line 16 def path path_prefix + payload[:path] end
track!()
click to toggle source
# File lib/staccato/subscribers/page.rb, line 24 def track! return unless get? tracker.pageview(context.merge(path: path, hostname: hostname)) end
Private Instance Methods
context()
click to toggle source
# File lib/staccato/subscribers/page.rb, line 42 def context @context ||= payload['staccato.context'] end
event()
click to toggle source
# File lib/staccato/subscribers/page.rb, line 30 def event @event ||= ActiveSupport::Notifications::Event.new(*@args) end
path_prefix()
click to toggle source
# File lib/staccato/subscribers/page.rb, line 46 def path_prefix Rails.application.config.staccato.pageview_prefix.to_s end
payload()
click to toggle source
# File lib/staccato/subscribers/page.rb, line 34 def payload @payload ||= event.payload end
tracker()
click to toggle source
# File lib/staccato/subscribers/page.rb, line 38 def tracker @tracker ||= payload['staccato.tracker'] end