Class CompatibleObjectEncoder
- java.lang.Object
-
- org.jboss.netty.handler.codec.oneone.OneToOneEncoder
-
- org.jboss.netty.handler.codec.serialization.CompatibleObjectEncoder
-
- All Implemented Interfaces:
ChannelDownstreamHandler
,ChannelHandler
public class CompatibleObjectEncoder extends OneToOneEncoder
An encoder which serializes a Java object into aChannelBuffer
(interoperability version).This encoder is interoperable with the standard Java object streams such as
ObjectInputStream
andObjectOutputStream
.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface org.jboss.netty.channel.ChannelHandler
ChannelHandler.Sharable
-
-
Constructor Summary
Constructors Constructor Description CompatibleObjectEncoder()
Creates a new instance with the reset interval of16
.CompatibleObjectEncoder(int resetInterval)
Creates a new instance.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected Object
encode(ChannelHandlerContext context, Channel channel, Object msg)
Transforms the specified message into another message and return the transformed message.protected ObjectOutputStream
newObjectOutputStream(OutputStream out)
Creates a newObjectOutputStream
which wraps the specifiedOutputStream
.-
Methods inherited from class org.jboss.netty.handler.codec.oneone.OneToOneEncoder
doEncode, handleDownstream
-
-
-
-
Constructor Detail
-
CompatibleObjectEncoder
public CompatibleObjectEncoder()
Creates a new instance with the reset interval of16
.
-
CompatibleObjectEncoder
public CompatibleObjectEncoder(int resetInterval)
Creates a new instance.- Parameters:
resetInterval
- the number of objects betweenObjectOutputStream.reset()
.0
will disable resetting the stream, but the remote peer will be at the risk of gettingOutOfMemoryError
in the long term.
-
-
Method Detail
-
newObjectOutputStream
protected ObjectOutputStream newObjectOutputStream(OutputStream out) throws Exception
Creates a newObjectOutputStream
which wraps the specifiedOutputStream
. Override this method to use a subclass of theObjectOutputStream
.- Throws:
Exception
-
encode
protected Object encode(ChannelHandlerContext context, Channel channel, Object msg) throws Exception
Description copied from class:OneToOneEncoder
Transforms the specified message into another message and return the transformed message. Note that you can not returnnull
, unlike you can inOneToOneDecoder.decode(ChannelHandlerContext, Channel, Object)
; you must return something, at leastChannelBuffers.EMPTY_BUFFER
.- Specified by:
encode
in classOneToOneEncoder
- Throws:
Exception
-
-