channelRead() — netty Function Reference
Architecture documentation for the channelRead() function in Http3RequestStreamValidationHandler.java from the netty codebase.
Entity Profile
Dependency Diagram
graph TD 7eb82d3c_d46c_48eb_c142_ec762066c3e2["channelRead()"] 5d15be70_e004_6097_bf4e_460653eef37b["Http3RequestStreamValidationHandler"] 7eb82d3c_d46c_48eb_c142_ec762066c3e2 -->|defined in| 5d15be70_e004_6097_bf4e_460653eef37b style 7eb82d3c_d46c_48eb_c142_ec762066c3e2 fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
codec-http3/src/main/java/io/netty/handler/codec/http3/Http3RequestStreamValidationHandler.java lines 86–121
@Override
void channelRead(ChannelHandlerContext ctx, Http3RequestStreamFrame frame) {
if (frame instanceof Http3PushPromiseFrame) {
if (server) {
// Server should not receive a push promise
// https://quicwg.org/base-drafts/draft-ietf-quic-http.html#name-push_promise
frameTypeUnexpected(ctx, frame);
} else {
ctx.fireChannelRead(frame);
}
return;
}
if (frame instanceof Http3HeadersFrame) {
Http3HeadersFrame headersFrame = (Http3HeadersFrame) frame;
long maybeContentLength = validateHeaderFrameRead(headersFrame, ctx, decodeState);
if (maybeContentLength >= 0) {
expectedLength = maybeContentLength;
} else if (maybeContentLength == INVALID_FRAME_READ) {
return;
}
}
if (frame instanceof Http3DataFrame) {
final Http3DataFrame dataFrame = (Http3DataFrame) frame;
long maybeContentLength = validateDataFrameRead(dataFrame, ctx, expectedLength, seenLength,
clientHeadRequest);
if (maybeContentLength >= 0) {
seenLength = maybeContentLength;
} else if (maybeContentLength == INVALID_FRAME_READ) {
return;
}
}
ctx.fireChannelRead(frame);
}
Domain
Subdomains
Defined In
Source
Frequently Asked Questions
What does channelRead() do?
channelRead() is a function in the netty codebase, defined in codec-http3/src/main/java/io/netty/handler/codec/http3/Http3RequestStreamValidationHandler.java.
Where is channelRead() defined?
channelRead() is defined in codec-http3/src/main/java/io/netty/handler/codec/http3/Http3RequestStreamValidationHandler.java at line 86.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free