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