class Firehose::Rack::Consumer::WebSocket

Public Class Methods

request?(env) click to toggle source

Determine if the rack request is a WebSocket request.

# File lib/firehose/rack/consumer/web_socket.rb, line 21
def self.request?(env)
  Faye::WebSocket.websocket?(env)
end

Public Instance Methods

call(env) click to toggle source

Setup a handler for the websocket connection.

# File lib/firehose/rack/consumer/web_socket.rb, line 10
def call(env)
  ws = Faye::WebSocket.new(env)
  if Consumer.multiplexing_request?(env)
    MultiplexingHandler.new(ws)
  else
    DefaultHandler.new(ws)
  end
  ws.rack_response
end