write() — netty Function Reference
Architecture documentation for the write() function in SpdyFrameCodec.java from the netty codebase.
Entity Profile
Dependency Diagram
graph TD 90937e0e_a722_9129_7e71_a6318bbfa624["write()"] 393922cf_b1e2_6f1f_471a_694c3714fb63["SpdyFrameCodec"] 90937e0e_a722_9129_7e71_a6318bbfa624 -->|defined in| 393922cf_b1e2_6f1f_471a_694c3714fb63 style 90937e0e_a722_9129_7e71_a6318bbfa624 fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
codec-http/src/main/java/io/netty/handler/codec/spdy/SpdyFrameCodec.java lines 208–340
@Override
public void write(ChannelHandlerContext ctx, Object msg, ChannelPromise promise) throws Exception {
ByteBuf frame;
if (msg instanceof SpdyDataFrame) {
SpdyDataFrame spdyDataFrame = (SpdyDataFrame) msg;
try {
frame = spdyFrameEncoder.encodeDataFrame(
ctx.alloc(),
spdyDataFrame.streamId(),
spdyDataFrame.isLast(),
spdyDataFrame.content()
);
ctx.write(frame, promise);
} finally {
spdyDataFrame.release();
}
} else if (msg instanceof SpdySynStreamFrame) {
SpdySynStreamFrame spdySynStreamFrame = (SpdySynStreamFrame) msg;
ByteBuf headerBlock = spdyHeaderBlockEncoder.encode(ctx.alloc(), spdySynStreamFrame);
try {
frame = spdyFrameEncoder.encodeSynStreamFrame(
ctx.alloc(),
spdySynStreamFrame.streamId(),
spdySynStreamFrame.associatedStreamId(),
spdySynStreamFrame.priority(),
spdySynStreamFrame.isLast(),
spdySynStreamFrame.isUnidirectional(),
headerBlock
);
} finally {
headerBlock.release();
}
ctx.write(frame, promise);
} else if (msg instanceof SpdySynReplyFrame) {
SpdySynReplyFrame spdySynReplyFrame = (SpdySynReplyFrame) msg;
ByteBuf headerBlock = spdyHeaderBlockEncoder.encode(ctx.alloc(), spdySynReplyFrame);
try {
frame = spdyFrameEncoder.encodeSynReplyFrame(
ctx.alloc(),
spdySynReplyFrame.streamId(),
spdySynReplyFrame.isLast(),
headerBlock
);
} finally {
headerBlock.release();
}
ctx.write(frame, promise);
} else if (msg instanceof SpdyRstStreamFrame) {
SpdyRstStreamFrame spdyRstStreamFrame = (SpdyRstStreamFrame) msg;
frame = spdyFrameEncoder.encodeRstStreamFrame(
ctx.alloc(),
spdyRstStreamFrame.streamId(),
spdyRstStreamFrame.status().code()
);
ctx.write(frame, promise);
} else if (msg instanceof SpdySettingsFrame) {
SpdySettingsFrame spdySettingsFrame = (SpdySettingsFrame) msg;
frame = spdyFrameEncoder.encodeSettingsFrame(
ctx.alloc(),
spdySettingsFrame
);
ctx.write(frame, promise);
} else if (msg instanceof SpdyPingFrame) {
SpdyPingFrame spdyPingFrame = (SpdyPingFrame) msg;
frame = spdyFrameEncoder.encodePingFrame(
ctx.alloc(),
spdyPingFrame.id()
);
ctx.write(frame, promise);
Domain
Subdomains
Source
Frequently Asked Questions
What does write() do?
write() is a function in the netty codebase, defined in codec-http/src/main/java/io/netty/handler/codec/spdy/SpdyFrameCodec.java.
Where is write() defined?
write() is defined in codec-http/src/main/java/io/netty/handler/codec/spdy/SpdyFrameCodec.java at line 208.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free