Class: Vertica::Messages::Message

Inherits:
Object
  • Object
show all
Defined in:
lib/vertica/messages/message.rb

Direct Known Subclasses

BackendMessage, FrontendMessage

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.message_id(message_id) ⇒ Object



5
6
7
# File 'lib/vertica/messages/message.rb', line 5

def self.message_id(message_id)
  self.send(:define_method, :message_id) { message_id }
end

Instance Method Details

#message_string(msg) ⇒ Object



9
10
11
12
13
14
# File 'lib/vertica/messages/message.rb', line 9

def message_string(msg)
  msg = msg.join if msg.is_a?(Array)
  bytesize = msg.respond_to?(:bytesize) ? 4 + msg.bytesize : 4 + msg.size
  message_size = [bytesize].pack('N')
  message_id ? "#{message_id}#{message_size}#{msg}" : "#{message_size}#{msg}"
end