class Mongrel2::WebSocket::Request

WebSocket request – this is the container for Frames from a client.

Public Class Methods

new( * ) click to toggle source

Init a few instance variables unique to websocket requests/responses.

Calls superclass method Mongrel2::Request::new
# File lib/mongrel2/websocket.rb, line 345
def initialize( * )
        super

        payload = self.body.read
        self.body.rewind

        @frame = Mongrel2::WebSocket::Frame.new( payload, self.headers.flags )
end
response_class() click to toggle source

Override the type of response returned by this request type.

# File lib/mongrel2/websocket.rb, line 339
def self::response_class
        return Mongrel2::WebSocket::Response
end

Public Instance Methods

response( payload=nil, *flags ) click to toggle source

Create a frame in response to the receiving Frame (i.e., with the same Mongrel2 connection ID and sender).

Calls superclass method Mongrel2::Request#response
# File lib/mongrel2/websocket.rb, line 357
def response( payload=nil, *flags )
        res = super()

        if payload.is_a?( Symbol ) || payload.is_a?( Integer )
                flags.unshift( payload )
                payload = nil
        end

        if payload
                res.payload.truncate( 0 )
                res.payload << payload
        end
        res.set_flags( *flags ) unless flags.empty?

        return res
end