Home / Class/ DelegatingChannelHandlerContext Class — netty Architecture

DelegatingChannelHandlerContext Class — netty Architecture

Architecture documentation for the DelegatingChannelHandlerContext class in CombinedChannelDuplexHandler.java from the netty codebase.

Entity Profile

Dependency Diagram

graph TD
  f0e04213_ebff_15ac_27ed_c33728d24195["DelegatingChannelHandlerContext"]
  e7c03ebc_97b9_cfab_a4d7_aa767e667049["CombinedChannelDuplexHandler.java"]
  f0e04213_ebff_15ac_27ed_c33728d24195 -->|defined in| e7c03ebc_97b9_cfab_a4d7_aa767e667049
  3e2d2ea2_85bb_3b7c_3ecf_cbe54807d561["DelegatingChannelHandlerContext()"]
  f0e04213_ebff_15ac_27ed_c33728d24195 -->|method| 3e2d2ea2_85bb_3b7c_3ecf_cbe54807d561
  81b6a64b_34cf_eb77_4fbb_1e74bee241cb["Channel()"]
  f0e04213_ebff_15ac_27ed_c33728d24195 -->|method| 81b6a64b_34cf_eb77_4fbb_1e74bee241cb
  5b57bd0b_7e78_8188_1513_3ae959502ed8["EventExecutor()"]
  f0e04213_ebff_15ac_27ed_c33728d24195 -->|method| 5b57bd0b_7e78_8188_1513_3ae959502ed8
  677f56c2_9231_3ca9_a6a5_d92398c981b7["String()"]
  f0e04213_ebff_15ac_27ed_c33728d24195 -->|method| 677f56c2_9231_3ca9_a6a5_d92398c981b7
  294da35e_f9ee_d7fa_bc70_31eb13795e4c["ChannelHandler()"]
  f0e04213_ebff_15ac_27ed_c33728d24195 -->|method| 294da35e_f9ee_d7fa_bc70_31eb13795e4c
  96588d23_9ab3_90cc_a05f_5303a413ef71["isRemoved()"]
  f0e04213_ebff_15ac_27ed_c33728d24195 -->|method| 96588d23_9ab3_90cc_a05f_5303a413ef71
  378dad91_f575_3470_faf3_c3f026df3eac["ChannelHandlerContext()"]
  f0e04213_ebff_15ac_27ed_c33728d24195 -->|method| 378dad91_f575_3470_faf3_c3f026df3eac
  f21eb085_d219_3721_fd51_6a323be2ff94["ChannelFuture()"]
  f0e04213_ebff_15ac_27ed_c33728d24195 -->|method| f21eb085_d219_3721_fd51_6a323be2ff94
  a03d401e_88e7_b108_319f_ac6184c55c10["ChannelPipeline()"]
  f0e04213_ebff_15ac_27ed_c33728d24195 -->|method| a03d401e_88e7_b108_319f_ac6184c55c10
  4bb0729e_9565_20bc_8b62_f9bf6b7a50d5["ByteBufAllocator()"]
  f0e04213_ebff_15ac_27ed_c33728d24195 -->|method| 4bb0729e_9565_20bc_8b62_f9bf6b7a50d5
  06b00918_e2e2_697d_9a64_a6752b831ea2["ChannelPromise()"]
  f0e04213_ebff_15ac_27ed_c33728d24195 -->|method| 06b00918_e2e2_697d_9a64_a6752b831ea2
  aa25e298_7303_8ee1_ffa0_27025382fbfd["ChannelProgressivePromise()"]
  f0e04213_ebff_15ac_27ed_c33728d24195 -->|method| aa25e298_7303_8ee1_ffa0_27025382fbfd
  1c652d5c_d8ad_6d5f_b9f5_5e29bfdc5580["attr()"]
  f0e04213_ebff_15ac_27ed_c33728d24195 -->|method| 1c652d5c_d8ad_6d5f_b9f5_5e29bfdc5580

Relationship Graph

Source Code

transport/src/main/java/io/netty/channel/CombinedChannelDuplexHandler.java lines 360–613

    private static class DelegatingChannelHandlerContext implements ChannelHandlerContext {

        private final ChannelHandlerContext ctx;
        private final ChannelHandler handler;
        boolean removed;

        DelegatingChannelHandlerContext(ChannelHandlerContext ctx, ChannelHandler handler) {
            this.ctx = ctx;
            this.handler = handler;
        }

        @Override
        public Channel channel() {
            return ctx.channel();
        }

        @Override
        public EventExecutor executor() {
            return ctx.executor();
        }

        @Override
        public String name() {
            return ctx.name();
        }

        @Override
        public ChannelHandler handler() {
            return ctx.handler();
        }

        @Override
        public boolean isRemoved() {
            return removed || ctx.isRemoved();
        }

        @Override
        public ChannelHandlerContext fireChannelRegistered() {
            ctx.fireChannelRegistered();
            return this;
        }

        @Override
        public ChannelHandlerContext fireChannelUnregistered() {
            ctx.fireChannelUnregistered();
            return this;
        }

        @Override
        public ChannelHandlerContext fireChannelActive() {
            ctx.fireChannelActive();
            return this;
        }

        @Override
        public ChannelHandlerContext fireChannelInactive() {
            ctx.fireChannelInactive();
            return this;
        }

        @Override
        public ChannelHandlerContext fireExceptionCaught(Throwable cause) {
            ctx.fireExceptionCaught(cause);
            return this;
        }

        @Override
        public ChannelHandlerContext fireUserEventTriggered(Object event) {
            ctx.fireUserEventTriggered(event);
            return this;
        }

        @Override
        public ChannelHandlerContext fireChannelRead(Object msg) {
            ctx.fireChannelRead(msg);
            return this;
        }

        @Override
        public ChannelHandlerContext fireChannelReadComplete() {
            ctx.fireChannelReadComplete();

Frequently Asked Questions

What is the DelegatingChannelHandlerContext class?
DelegatingChannelHandlerContext is a class in the netty codebase, defined in transport/src/main/java/io/netty/channel/CombinedChannelDuplexHandler.java.
Where is DelegatingChannelHandlerContext defined?
DelegatingChannelHandlerContext is defined in transport/src/main/java/io/netty/channel/CombinedChannelDuplexHandler.java at line 360.

Analyze Your Own Codebase

Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.

Try Supermodel Free