Class: TorqueBox::Messaging::MsgpackMessage

Inherits:
Message
  • Object
show all
Defined in:
lib/torquebox-message-encodings/msgpack.rb

Constant Summary collapse

ENCODING =
:msgpack
JMS_TYPE =
:bytes

Instance Method Summary collapse

Instance Method Details

#decodeObject



20
21
22
23
24
25
26
27
# File 'lib/torquebox-message-encodings/msgpack.rb', line 20

def decode
  if (length = @jms_message.get_body_length) > 0
    bytes = Java::byte[length].new
    @jms_message.read_bytes( bytes )
    @jms_message.reset
    ::MessagePack.unpack( String.from_java_bytes( bytes ) )
  end
end

#encode(message) ⇒ Object



13
14
15
16
17
18
# File 'lib/torquebox-message-encodings/msgpack.rb', line 13

def encode(message)
  unless message.nil?
    msgpacked = ::MessagePack.pack(message)
    @jms_message.write_bytes( msgpacked.to_s.to_java_bytes )
  end
end