@ChannelHandler.Sharable public class MarshallingEncoder extends OneToOneEncoder
OneToOneEncoder
implementation which uses JBoss Marshalling to marshal
an Object. Be aware that this OneToOneEncoder
is not compatible with
an other client that just use JBoss Marshalling as it includes the size of every
Object
that gets serialized in front of the Object
itself.
Use this with MarshallingDecoder
See JBoss Marshalling website
for more informationsChannelHandler.Sharable
Constructor and Description |
---|
MarshallingEncoder(MarshallerProvider provider)
Creates a new encoder with the estimated length of 512 bytes.
|
MarshallingEncoder(MarshallerProvider provider,
int estimatedLength)
Creates a new encoder.
|
Modifier and Type | Method and Description |
---|---|
protected Object |
encode(ChannelHandlerContext ctx,
Channel channel,
Object msg)
Transforms the specified message into another message and return the
transformed message.
|
doEncode, handleDownstream
public MarshallingEncoder(MarshallerProvider provider)
provider
- the MarshallerProvider
to usepublic MarshallingEncoder(MarshallerProvider provider, int estimatedLength)
provider
- the MarshallerProvider
to useestimatedLength
- the estimated byte length of the serialized form of an object.
If the length of the serialized form exceeds this value, the
internal buffer will be expanded automatically at the cost of
memory bandwidth. If this value is too big, it will also waste
memory bandwidth. To avoid unnecessary memory copy or allocation
cost, please specify the properly estimated value.protected Object encode(ChannelHandlerContext ctx, Channel channel, Object msg) throws Exception
OneToOneEncoder
null
, unlike
you can in OneToOneDecoder.decode(ChannelHandlerContext, Channel, Object)
;
you must return something, at least ChannelBuffers.EMPTY_BUFFER
.encode
in class OneToOneEncoder
Exception
Copyright © 2008-2014 The Netty Project. All Rights Reserved.