handlerRemoved() — netty Function Reference
Architecture documentation for the handlerRemoved() function in GlobalTrafficShapingHandler.java from the netty codebase.
Entity Profile
Dependency Diagram
graph TD a5d9dd40_8a6e_6f8f_d2d0_0fbf517aed51["handlerRemoved()"] 25ae99c4_4bb1_9893_ce25_fa54995d6af1["GlobalTrafficShapingHandler"] a5d9dd40_8a6e_6f8f_d2d0_0fbf517aed51 -->|defined in| 25ae99c4_4bb1_9893_ce25_fa54995d6af1 3e8f5c2d_c798_2f7e_047c_8a550e9567de["release()"] a5d9dd40_8a6e_6f8f_d2d0_0fbf517aed51 -->|calls| 3e8f5c2d_c798_2f7e_047c_8a550e9567de style a5d9dd40_8a6e_6f8f_d2d0_0fbf517aed51 fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
handler/src/main/java/io/netty/handler/traffic/GlobalTrafficShapingHandler.java lines 263–293
@Override
public void handlerRemoved(ChannelHandlerContext ctx) throws Exception {
Channel channel = ctx.channel();
Integer key = channel.hashCode();
PerChannel perChannel = channelQueues.remove(key);
if (perChannel != null) {
// write operations need synchronization
synchronized (perChannel) {
if (channel.isActive()) {
for (ToSend toSend : perChannel.messagesQueue) {
long size = calculateSize(toSend.toSend);
trafficCounter.bytesRealWriteFlowControl(size);
perChannel.queueSize -= size;
queuesSize.addAndGet(-size);
ctx.write(toSend.toSend, toSend.promise);
}
} else {
queuesSize.addAndGet(-perChannel.queueSize);
for (ToSend toSend : perChannel.messagesQueue) {
if (toSend.toSend instanceof ByteBuf) {
((ByteBuf) toSend.toSend).release();
}
}
}
perChannel.messagesQueue.clear();
}
}
releaseWriteSuspended(ctx);
releaseReadSuspended(ctx);
super.handlerRemoved(ctx);
}
Domain
Subdomains
Calls
Source
Frequently Asked Questions
What does handlerRemoved() do?
handlerRemoved() is a function in the netty codebase, defined in handler/src/main/java/io/netty/handler/traffic/GlobalTrafficShapingHandler.java.
Where is handlerRemoved() defined?
handlerRemoved() is defined in handler/src/main/java/io/netty/handler/traffic/GlobalTrafficShapingHandler.java at line 263.
What does handlerRemoved() call?
handlerRemoved() calls 1 function(s): release.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free