class Avro::IPC::FramedWriter

Attributes

writer[R]

Public Class Methods

new(writer) click to toggle source
    # File lib/avro/ipc.rb
466 def initialize(writer)
467   @writer = writer
468 end

Public Instance Methods

to_s() click to toggle source
    # File lib/avro/ipc.rb
485 def to_s; writer.string; end
write_framed_message(message) click to toggle source
    # File lib/avro/ipc.rb
470 def write_framed_message(message)
471   message_size = message.bytesize
472   total_bytes_sent = 0
473   while message_size - total_bytes_sent > 0
474     if message_size - total_bytes_sent > BUFFER_SIZE
475       buffer_size = BUFFER_SIZE
476     else
477       buffer_size = message_size - total_bytes_sent
478     end
479     write_buffer(message[total_bytes_sent, buffer_size])
480     total_bytes_sent += buffer_size
481   end
482   write_buffer_size(0)
483 end

Private Instance Methods

write_buffer(chunk) click to toggle source
    # File lib/avro/ipc.rb
488 def write_buffer(chunk)
489   buffer_size = chunk.bytesize
490   write_buffer_size(buffer_size)
491   writer << chunk
492 end
write_buffer_size(n) click to toggle source
    # File lib/avro/ipc.rb
494 def write_buffer_size(n)
495   writer.write([n].pack('N'))
496 end