Class AbstractMemcacheObjectEncoder<M extends MemcacheMessage>
java.lang.Object
io.netty.channel.ChannelHandlerAdapter
io.netty.channel.ChannelOutboundHandlerAdapter
io.netty.handler.codec.MessageToMessageEncoder<Object>
io.netty.handler.codec.memcache.AbstractMemcacheObjectEncoder<M>
- All Implemented Interfaces:
ChannelHandler, ChannelOutboundHandler
- Direct Known Subclasses:
AbstractBinaryMemcacheEncoder
@UnstableApi
public abstract class AbstractMemcacheObjectEncoder<M extends MemcacheMessage>
extends MessageToMessageEncoder<Object>
A general purpose
AbstractMemcacheObjectEncoder that encodes MemcacheMessages.
Note that this class is designed to be extended, especially because both the binary and ascii protocol require different treatment of their messages. Since the content chunk writing is the same for both, the encoder abstracts this right away.
-
Nested Class Summary
Nested classes/interfaces inherited from interface ChannelHandler
ChannelHandler.Sharable -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionbooleanReturnstrueif the given message should be handled.protected voidencode(ChannelHandlerContext ctx, Object msg, List<Object> out) Encode from one message to an other.protected abstract ByteBufencodeMessage(ChannelHandlerContext ctx, M msg) Take the givenMemcacheMessageand encode it into a writableByteBuf.Methods inherited from class MessageToMessageEncoder
writeMethods inherited from class ChannelOutboundHandlerAdapter
bind, close, connect, deregister, disconnect, flush, readMethods inherited from class ChannelHandlerAdapter
ensureNotSharable, exceptionCaught, handlerAdded, handlerRemoved, isSharableMethods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface ChannelHandler
exceptionCaught, handlerAdded, handlerRemoved
-
Constructor Details
-
AbstractMemcacheObjectEncoder
public AbstractMemcacheObjectEncoder()
-
-
Method Details
-
encode
Description copied from class:MessageToMessageEncoderEncode from one message to an other. This method will be called for each written message that can be handled by this encoder.- Specified by:
encodein classMessageToMessageEncoder<Object>- Parameters:
ctx- theChannelHandlerContextwhich thisMessageToMessageEncoderbelongs tomsg- the message to encode to an other oneout- theListinto which the encoded msg should be added needs to do some kind of aggregation- Throws:
Exception- is thrown if an error occurs
-
acceptOutboundMessage
Description copied from class:MessageToMessageEncoderReturnstrueif the given message should be handled. Iffalseit will be passed to the nextChannelOutboundHandlerin theChannelPipeline.- Overrides:
acceptOutboundMessagein classMessageToMessageEncoder<Object>- Throws:
Exception
-
encodeMessage
Take the givenMemcacheMessageand encode it into a writableByteBuf.- Parameters:
ctx- the channel handler context.msg- the message to encode.- Returns:
- the
ByteBufrepresentation of the message.
-