Home / Function/ exceptionCaught() — netty Function Reference

exceptionCaught() — netty Function Reference

Architecture documentation for the exceptionCaught() function in Http2MultiplexHandler.java from the netty codebase.

Entity Profile

Dependency Diagram

graph TD
  098ea8fd_d159_abdb_cfe2_2db0c47476aa["exceptionCaught()"]
  42ad104c_27ce_3949_598d_983571f45120["Http2MultiplexHandler"]
  098ea8fd_d159_abdb_cfe2_2db0c47476aa -->|defined in| 42ad104c_27ce_3949_598d_983571f45120
  195994a1_32ac_9be7_2f1e_2a1634ab39a8["fireExceptionCaughtForActiveStream()"]
  098ea8fd_d159_abdb_cfe2_2db0c47476aa -->|calls| 195994a1_32ac_9be7_2f1e_2a1634ab39a8
  style 098ea8fd_d159_abdb_cfe2_2db0c47476aa fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

codec-http2/src/main/java/io/netty/handler/codec/http2/Http2MultiplexHandler.java lines 282–308

    @Override
    public void exceptionCaught(ChannelHandlerContext ctx, final Throwable cause) throws Exception {
        if (cause instanceof Http2FrameStreamException) {
            Http2FrameStreamException exception = (Http2FrameStreamException) cause;
            Http2FrameStream stream = exception.stream();
            AbstractHttp2StreamChannel childChannel = (AbstractHttp2StreamChannel)
                    ((DefaultHttp2FrameStream) stream).attachment;
            try {
                childChannel.pipeline().fireExceptionCaught(cause.getCause());
            } finally {
                // Close with the correct error that causes this stream exception.
                // See https://github.com/netty/netty/issues/13235#issuecomment-1441994672
                childChannel.closeWithError(exception.error());
            }
            return;
        }
        if (cause instanceof Http2MultiplexActiveStreamsException) {
            // Unwrap the cause that was used to create it and fire it for all the active streams.
            fireExceptionCaughtForActiveStream(cause.getCause());
            return;
        }

        if (cause.getCause() instanceof SSLException) {
            fireExceptionCaughtForActiveStream(cause);
        }
        ctx.fireExceptionCaught(cause);
    }

Domain

Subdomains

Frequently Asked Questions

What does exceptionCaught() do?
exceptionCaught() is a function in the netty codebase, defined in codec-http2/src/main/java/io/netty/handler/codec/http2/Http2MultiplexHandler.java.
Where is exceptionCaught() defined?
exceptionCaught() is defined in codec-http2/src/main/java/io/netty/handler/codec/http2/Http2MultiplexHandler.java at line 282.
What does exceptionCaught() call?
exceptionCaught() calls 1 function(s): fireExceptionCaughtForActiveStream.

Analyze Your Own Codebase

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

Try Supermodel Free