Class MemcachedDecoder

  • All Implemented Interfaces:
    io.netty.channel.ChannelHandler, io.netty.channel.ChannelInboundHandler

    public class MemcachedDecoder
    extends io.netty.handler.codec.ReplayingDecoder<MemcachedDecoderState>
    A Memcached protocol specific decoder
    Since:
    4.1
    Author:
    Galder ZamarreƱo
    • Nested Class Summary

      • Nested classes/interfaces inherited from class io.netty.handler.codec.ByteToMessageDecoder

        io.netty.handler.codec.ByteToMessageDecoder.Cumulator
      • Nested classes/interfaces inherited from interface io.netty.channel.ChannelHandler

        io.netty.channel.ChannelHandler.Sharable
    • Field Summary

      Fields 
      Modifier and Type Field Description
      protected Configuration cacheConfiguration  
      protected org.infinispan.server.memcached.RequestHeader header  
      protected java.util.function.Predicate<? super java.lang.String> ignoreCache  
      protected byte[] key  
      protected org.infinispan.server.memcached.MemcachedParameters params  
      protected byte[] rawValue  
      protected NettyTransport transport  
      • Fields inherited from class io.netty.handler.codec.ByteToMessageDecoder

        COMPOSITE_CUMULATOR, MERGE_CUMULATOR
    • Constructor Summary

      Constructors 
      Constructor Description
      MemcachedDecoder​(AdvancedCache<byte[],​byte[]> memcachedCache, java.util.concurrent.ScheduledExecutorService scheduler, NettyTransport transport, java.util.function.Predicate<? super java.lang.String> ignoreCache, MediaType valuePayload)  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      protected void customDecodeKey​(io.netty.channel.ChannelHandlerContext ctx, io.netty.buffer.ByteBuf buffer)  
      protected void customDecodeValue​(io.netty.channel.ChannelHandlerContext ctx, io.netty.buffer.ByteBuf buffer)  
      protected void decode​(io.netty.channel.ChannelHandlerContext ctx, io.netty.buffer.ByteBuf in, java.util.List<java.lang.Object> out)  
      void exceptionCaught​(io.netty.channel.ChannelHandlerContext ctx, java.lang.Throwable cause)  
      protected java.lang.Object get​(io.netty.buffer.ByteBuf buffer)  
      protected java.lang.Object remove()  
      protected java.lang.Object replace()  
      protected java.lang.Object replaceIfUnmodified()  
      protected java.lang.Object writeResponse​(io.netty.channel.Channel ch, java.lang.Object response)  
      • Methods inherited from class io.netty.handler.codec.ReplayingDecoder

        callDecode, checkpoint, checkpoint, state, state
      • Methods inherited from class io.netty.handler.codec.ByteToMessageDecoder

        actualReadableBytes, channelInactive, channelRead, channelReadComplete, decodeLast, discardSomeReadBytes, handlerRemoved, handlerRemoved0, internalBuffer, isSingleDecode, setCumulator, setDiscardAfterReads, setSingleDecode, userEventTriggered
      • Methods inherited from class io.netty.channel.ChannelInboundHandlerAdapter

        channelActive, channelRegistered, channelUnregistered, channelWritabilityChanged
      • Methods inherited from class io.netty.channel.ChannelHandlerAdapter

        ensureNotSharable, handlerAdded, isSharable
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
      • Methods inherited from interface io.netty.channel.ChannelHandler

        handlerAdded
    • Field Detail

      • ignoreCache

        protected final java.util.function.Predicate<? super java.lang.String> ignoreCache
      • key

        protected byte[] key
      • rawValue

        protected byte[] rawValue
      • params

        protected org.infinispan.server.memcached.MemcachedParameters params
      • header

        protected org.infinispan.server.memcached.RequestHeader header
    • Constructor Detail

      • MemcachedDecoder

        public MemcachedDecoder​(AdvancedCache<byte[],​byte[]> memcachedCache,
                                java.util.concurrent.ScheduledExecutorService scheduler,
                                NettyTransport transport,
                                java.util.function.Predicate<? super java.lang.String> ignoreCache,
                                MediaType valuePayload)
    • Method Detail

      • decode

        protected void decode​(io.netty.channel.ChannelHandlerContext ctx,
                              io.netty.buffer.ByteBuf in,
                              java.util.List<java.lang.Object> out)
                       throws java.lang.Exception
        Specified by:
        decode in class io.netty.handler.codec.ByteToMessageDecoder
        Throws:
        java.lang.Exception
      • replace

        protected java.lang.Object replace()
      • replaceIfUnmodified

        protected java.lang.Object replaceIfUnmodified()
      • exceptionCaught

        public void exceptionCaught​(io.netty.channel.ChannelHandlerContext ctx,
                                    java.lang.Throwable cause)
        Specified by:
        exceptionCaught in interface io.netty.channel.ChannelHandler
        Specified by:
        exceptionCaught in interface io.netty.channel.ChannelInboundHandler
        Overrides:
        exceptionCaught in class io.netty.channel.ChannelInboundHandlerAdapter
      • get

        protected java.lang.Object get​(io.netty.buffer.ByteBuf buffer)
                                throws java.io.StreamCorruptedException
        Throws:
        java.io.StreamCorruptedException
      • customDecodeKey

        protected void customDecodeKey​(io.netty.channel.ChannelHandlerContext ctx,
                                       io.netty.buffer.ByteBuf buffer)
                                throws java.io.IOException
        Throws:
        java.io.IOException
      • customDecodeValue

        protected void customDecodeValue​(io.netty.channel.ChannelHandlerContext ctx,
                                         io.netty.buffer.ByteBuf buffer)
                                  throws java.io.StreamCorruptedException
        Throws:
        java.io.StreamCorruptedException
      • remove

        protected java.lang.Object remove()
      • writeResponse

        protected java.lang.Object writeResponse​(io.netty.channel.Channel ch,
                                                 java.lang.Object response)