Sha256: 04681a0eac602b493c1f9b1cb54f48ec929b07e745e1b272de51967711659ef3

Contents?: true

Size: 477 Bytes

Versions: 6

Compression:

Stored size: 477 Bytes

Contents

module WebSocket
  class Driver

    class Hybi
      class StreamReader
        def initialize
          @queue = []
        end

        def read(length)
          read_bytes(length)
        end

        def put(bytes)
          return unless bytes and bytes.size > 0
          @queue.concat(bytes)
        end

      private

        def read_bytes(length)
          return nil if length > @queue.size
          @queue.shift(length)
        end
      end
    end

  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
websocket-driver-0.4.0-java lib/websocket/driver/hybi/stream_reader.rb
websocket-driver-0.4.0 lib/websocket/driver/hybi/stream_reader.rb
websocket-driver-0.3.5 lib/websocket/driver/hybi/stream_reader.rb
websocket-driver-0.3.5-java lib/websocket/driver/hybi/stream_reader.rb
websocket-driver-0.3.4-java lib/websocket/driver/hybi/stream_reader.rb
websocket-driver-0.3.4 lib/websocket/driver/hybi/stream_reader.rb