readPushPromiseFrame() — netty Function Reference
Architecture documentation for the readPushPromiseFrame() function in DefaultHttp2FrameReader.java from the netty codebase.
Entity Profile
Dependency Diagram
graph TD 996fd454_25d0_9db7_efcf_42958509cd2a["readPushPromiseFrame()"] 3768d640_58c2_34e7_3d69_a4b578e0d11a["DefaultHttp2FrameReader"] 996fd454_25d0_9db7_efcf_42958509cd2a -->|defined in| 3768d640_58c2_34e7_3d69_a4b578e0d11a e711693c_32ed_ac69_29f1_ce5694750979["processPayloadState()"] e711693c_32ed_ac69_29f1_ce5694750979 -->|calls| 996fd454_25d0_9db7_efcf_42958509cd2a 3b43af15_c215_93fc_5c51_a2abe4d047d9["readPadding()"] 996fd454_25d0_9db7_efcf_42958509cd2a -->|calls| 3b43af15_c215_93fc_5c51_a2abe4d047d9 d810894b_be57_6864_4a7d_32bddb4d68f3["getStreamId()"] 996fd454_25d0_9db7_efcf_42958509cd2a -->|calls| d810894b_be57_6864_4a7d_32bddb4d68f3 ca5e2820_c99c_1b79_5ed5_5304bbcba862["processFragment()"] 996fd454_25d0_9db7_efcf_42958509cd2a -->|calls| ca5e2820_c99c_1b79_5ed5_5304bbcba862 d3cf3714_2259_6a41_c730_30d5c2dc9945["addFragment()"] 996fd454_25d0_9db7_efcf_42958509cd2a -->|calls| d3cf3714_2259_6a41_c730_30d5c2dc9945 64b75707_7a6c_7e26_98ea_05793212d7e4["lengthWithoutTrailingPadding()"] 996fd454_25d0_9db7_efcf_42958509cd2a -->|calls| 64b75707_7a6c_7e26_98ea_05793212d7e4 a643c6da_1c17_3da8_8399_b25cd9e26e55["resetHeadersContinuationIfEnd()"] 996fd454_25d0_9db7_efcf_42958509cd2a -->|calls| a643c6da_1c17_3da8_8399_b25cd9e26e55 style 996fd454_25d0_9db7_efcf_42958509cd2a fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
codec-http2/src/main/java/io/netty/handler/codec/http2/DefaultHttp2FrameReader.java lines 533–561
private void readPushPromiseFrame(final ChannelHandlerContext ctx, ByteBuf payload,
Http2FrameListener listener) throws Http2Exception {
final int pushPromiseStreamId = streamId;
final int padding = readPadding(payload);
final int promisedStreamId = readUnsignedInt(payload);
// Create a handler that invokes the listener when the header block is complete.
headersContinuation = new HeadersContinuation() {
@Override
public int getStreamId() {
return pushPromiseStreamId;
}
@Override
public void processFragment(boolean endOfHeaders, ByteBuf fragment, int len,
Http2FrameListener listener) throws Http2Exception {
headersBlockBuilder().addFragment(fragment, len, ctx.alloc(), endOfHeaders);
if (endOfHeaders) {
listener.onPushPromiseRead(ctx, pushPromiseStreamId, promisedStreamId,
headersBlockBuilder().headers(), padding);
}
}
};
// Process the initial fragment, invoking the listener's callback if end of headers.
int len = lengthWithoutTrailingPadding(payload.readableBytes(), padding);
headersContinuation.processFragment(flags.endOfHeaders(), payload, len, listener);
resetHeadersContinuationIfEnd(flags.endOfHeaders());
}
Domain
Subdomains
Calls
Called By
Source
Frequently Asked Questions
What does readPushPromiseFrame() do?
readPushPromiseFrame() is a function in the netty codebase, defined in codec-http2/src/main/java/io/netty/handler/codec/http2/DefaultHttp2FrameReader.java.
Where is readPushPromiseFrame() defined?
readPushPromiseFrame() is defined in codec-http2/src/main/java/io/netty/handler/codec/http2/DefaultHttp2FrameReader.java at line 533.
What does readPushPromiseFrame() call?
readPushPromiseFrame() calls 6 function(s): addFragment, getStreamId, lengthWithoutTrailingPadding, processFragment, readPadding, resetHeadersContinuationIfEnd.
What calls readPushPromiseFrame()?
readPushPromiseFrame() is called by 1 function(s): processPayloadState.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free