Class: Reel::WebSocket::MessageStream

Inherits:
Object
  • Object
show all
Defined in:
lib/reel/websocket.rb

Instance Method Summary collapse

Constructor Details

#initialize(socket, driver) ⇒ MessageStream

Returns a new instance of MessageStream.



119
120
121
122
123
124
125
126
127
# File 'lib/reel/websocket.rb', line 119

def initialize(socket, driver)
  @socket = socket
  @driver = driver
  @message_buffer = []

  @driver.on :message do |message|
    @message_buffer.push(message.data)
  end
end

Instance Method Details

#readObject



129
130
131
132
133
134
135
# File 'lib/reel/websocket.rb', line 129

def read
  while @message_buffer.empty?
    buffer = @socket.readpartial(Connection::BUFFER_SIZE)
    @driver.parse(buffer)
  end
  @message_buffer.shift
end