class Firehose::Rack::Consumer::HttpLongPoll::DefaultHandler

Public Instance Methods

handle_request(request, env) click to toggle source
# File lib/firehose/rack/consumer/http_long_poll.rb, line 123
def handle_request(request, env)
  # Get the Last Message Sequence from the query string.
  # Ideally we'd use an HTTP header, but android devices don't let us
  # set any HTTP headers for CORS requests.
  last_sequence = request.params['last_message_sequence'].to_i
  channel       = request.path

  log_request   channel, last_sequence, env
  respond_async channel, last_sequence, env
end
log_request(path, last_sequence, env) click to toggle source
# File lib/firehose/rack/consumer/http_long_poll.rb, line 119
def log_request(path, last_sequence, env)
  Firehose.logger.debug "HTTP GET with last_sequence #{last_sequence} for path #{path} with query #{env["QUERY_STRING"].inspect}"
end
wrap_frame(channel, message) click to toggle source
# File lib/firehose/rack/consumer/http_long_poll.rb, line 115
def wrap_frame(channel, message)
  JSON.generate :message => message.payload, :last_sequence => message.sequence
end