FallbackRequestHandler Class — netty Architecture
Architecture documentation for the FallbackRequestHandler class in FallbackRequestHandler.java from the netty codebase.
Entity Profile
Dependency Diagram
graph TD 33d8529e_f312_f6bb_4ff0_d633c241627c["FallbackRequestHandler"] 3c77e5e2_b9af_e342_2c48_04acf534716a["FallbackRequestHandler.java"] 33d8529e_f312_f6bb_4ff0_d633c241627c -->|defined in| 3c77e5e2_b9af_e342_2c48_04acf534716a 274c523f_6ef9_7fdf_7bd1_ff3ec6b9217f["channelRead0()"] 33d8529e_f312_f6bb_4ff0_d633c241627c -->|method| 274c523f_6ef9_7fdf_7bd1_ff3ec6b9217f 52c0da67_3711_8b1f_8aa8_4c6904b4e443["channelReadComplete()"] 33d8529e_f312_f6bb_4ff0_d633c241627c -->|method| 52c0da67_3711_8b1f_8aa8_4c6904b4e443 ae87b221_fc4e_3ac5_2575_63ee385cee6d["exceptionCaught()"] 33d8529e_f312_f6bb_4ff0_d633c241627c -->|method| ae87b221_fc4e_3ac5_2575_63ee385cee6d
Relationship Graph
Source Code
example/src/main/java/io/netty/example/http2/tiles/FallbackRequestHandler.java lines 41–74
public final class FallbackRequestHandler extends SimpleChannelInboundHandler<HttpRequest> {
private static final ByteBuf response = unreleasableBuffer(copiedBuffer("<!DOCTYPE html>"
+ "<html><body><h2>To view the example you need a browser that supports HTTP/2 ("
+ Http2CodecUtil.TLS_UPGRADE_PROTOCOL_NAME
+ ")</h2></body></html>", UTF_8)).asReadOnly();
@Override
protected void channelRead0(ChannelHandlerContext ctx, HttpRequest req) throws Exception {
if (HttpUtil.is100ContinueExpected(req)) {
ctx.write(new DefaultFullHttpResponse(HTTP_1_1, CONTINUE, EMPTY_BUFFER));
}
ByteBuf content = ctx.alloc().buffer();
content.writeBytes(response.duplicate());
FullHttpResponse response = new DefaultFullHttpResponse(HTTP_1_1, OK, content);
response.headers().set(CONTENT_TYPE, "text/html; charset=UTF-8");
response.headers().setInt(CONTENT_LENGTH, response.content().readableBytes());
ctx.write(response).addListener(ChannelFutureListener.CLOSE);
}
@Override
public void channelReadComplete(ChannelHandlerContext ctx) throws Exception {
ctx.flush();
}
@Override
public void exceptionCaught(ChannelHandlerContext ctx, Throwable cause) {
cause.printStackTrace();
ctx.close();
}
}
Source
Frequently Asked Questions
What is the FallbackRequestHandler class?
FallbackRequestHandler is a class in the netty codebase, defined in example/src/main/java/io/netty/example/http2/tiles/FallbackRequestHandler.java.
Where is FallbackRequestHandler defined?
FallbackRequestHandler is defined in example/src/main/java/io/netty/example/http2/tiles/FallbackRequestHandler.java at line 41.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free