Class: WebSocket::Protocol::Draft76
Constant Summary
collapse
- HEAD_SIZE =
8
STATES
Instance Attribute Summary
#protocol, #ready_state
Instance Method Summary
collapse
Methods inherited from Draft75
#frame, #parse
#binary, jruby?, #onclose, #onerror, #onmessage, #onopen, #ping, rbx?, #state, #text
Constructor Details
#initialize(socket, options = {}) ⇒ Draft76
Returns a new instance of Draft76.
7
8
9
10
11
12
|
# File 'lib/websocket/protocol/draft76.rb', line 7
def initialize(socket, options = {})
super
input = @socket.env['rack.input']
@stage = -1
@head = input ? input.read.bytes.to_a : []
end
|
Instance Method Details
#close(reason = nil, code = nil) ⇒ Object
24
25
26
27
28
29
|
# File 'lib/websocket/protocol/draft76.rb', line 24
def close(reason = nil, code = nil)
return false if @ready_state == 3
@socket.write("\xFF\x00")
@ready_state = 3
dispatch(:onclose, CloseEvent.new(nil, nil))
end
|
#start ⇒ Object
18
19
20
21
22
|
# File 'lib/websocket/protocol/draft76.rb', line 18
def start
return false unless super
send_handshake_body
true
end
|
#version ⇒ Object
14
15
16
|
# File 'lib/websocket/protocol/draft76.rb', line 14
def version
'hixie-76'
end
|