Class PipelineConfigurator


  • public class PipelineConfigurator
    extends java.lang.Object
    Takes care of intializing a Netty Channel and Pipeline for client protocol connections. The pipeline is first set up with some common handlers for connection limiting, dropping idle connections and optionally SSL, along with a handler to deal with the handshake between client and server. That handshake handler calls back to this class to reconfigure the pipeline once the protocol version for the connection has been established.
    • Field Detail

      • SSL_FACTORY_CONTEXT_DESCRIPTION

        public static final java.lang.String SSL_FACTORY_CONTEXT_DESCRIPTION
        See Also:
        Constant Field Values
    • Method Detail

      • initializeChannel

        public io.netty.channel.ChannelFuture initializeChannel​(io.netty.channel.EventLoopGroup workerGroup,
                                                                java.net.InetSocketAddress socket,
                                                                Connection.Factory connectionFactory)
      • initializer

        protected io.netty.channel.ChannelInitializer<io.netty.channel.Channel> initializer​(Connection.Factory connectionFactory)
      • encryptionConfig

        protected org.apache.cassandra.transport.PipelineConfigurator.EncryptionConfig encryptionConfig()
      • configureInitialPipeline

        public void configureInitialPipeline​(io.netty.channel.Channel channel,
                                             Connection.Factory connectionFactory)
      • configureModernPipeline

        public void configureModernPipeline​(io.netty.channel.ChannelHandlerContext ctx,
                                            ServerConnection serverConnection,
                                            org.apache.cassandra.transport.ClientResourceLimits.Allocator resourceAllocator,
                                            ProtocolVersion version,
                                            java.util.Map<java.lang.String,​java.lang.String> options)
      • onInitialPipelineReady

        protected void onInitialPipelineReady​(io.netty.channel.ChannelPipeline pipeline)
      • onNegotiationComplete

        protected void onNegotiationComplete​(io.netty.channel.ChannelPipeline pipeline)
      • resourceProvider

        protected org.apache.cassandra.transport.ClientResourceLimits.ResourceProvider resourceProvider​(org.apache.cassandra.transport.ClientResourceLimits.Allocator allocator)
      • dispatcher

        protected Dispatcher dispatcher​(boolean useLegacyFlusher)
      • messageConsumer

        protected org.apache.cassandra.transport.CQLMessageHandler.MessageConsumer<Message.Request> messageConsumer()
      • messageDecoder

        protected org.apache.cassandra.transport.Message.Decoder<Message.Request> messageDecoder()
      • frameEncoder

        protected FrameEncoder frameEncoder​(java.lang.String compression)
      • configureLegacyPipeline

        public void configureLegacyPipeline​(io.netty.channel.ChannelHandlerContext ctx,
                                            org.apache.cassandra.transport.ClientResourceLimits.Allocator limits)