PerFrameDeflateDecoder Class — netty Architecture
Architecture documentation for the PerFrameDeflateDecoder class in PerFrameDeflateDecoder.java from the netty codebase.
Entity Profile
Dependency Diagram
graph TD c73c9f49_9eb6_0e34_541b_4e223878873f["PerFrameDeflateDecoder"] 02b6fdc8_58e3_5d47_39e5_4b1ee7819b1b["PerFrameDeflateDecoder.java"] c73c9f49_9eb6_0e34_541b_4e223878873f -->|defined in| 02b6fdc8_58e3_5d47_39e5_4b1ee7819b1b 9ec96f71_7d9d_6ac6_c927_b2ef9fd38ce3["PerFrameDeflateDecoder()"] c73c9f49_9eb6_0e34_541b_4e223878873f -->|method| 9ec96f71_7d9d_6ac6_c927_b2ef9fd38ce3 3d7d5942_fcf4_049f_f0df_e736fb5518d0["acceptInboundMessage()"] c73c9f49_9eb6_0e34_541b_4e223878873f -->|method| 3d7d5942_fcf4_049f_f0df_e736fb5518d0 7cfd7800_5239_a2df_8524_a01e57223002["newRsv()"] c73c9f49_9eb6_0e34_541b_4e223878873f -->|method| 7cfd7800_5239_a2df_8524_a01e57223002 768ebca3_e2f5_8ed5_3620_580d9951c9df["appendFrameTail()"] c73c9f49_9eb6_0e34_541b_4e223878873f -->|method| 768ebca3_e2f5_8ed5_3620_580d9951c9df
Relationship Graph
Source Code
codec-http/src/main/java/io/netty/handler/codec/http/websocketx/extensions/compression/PerFrameDeflateDecoder.java lines 28–79
class PerFrameDeflateDecoder extends DeflateDecoder {
/**
* Constructor
*
* @param noContext true to disable context takeover.
* @param maxAllocation
* maximum size of the decompression buffer. Must be >= 0. If zero, maximum size is not limited.
*/
PerFrameDeflateDecoder(boolean noContext, int maxAllocation) {
super(noContext, WebSocketExtensionFilter.NEVER_SKIP, maxAllocation);
}
/**
* Constructor
*
* @param noContext true to disable context takeover.
* @param extensionDecoderFilter extension decoder filter for per frame deflate decoder.
* @param maxAllocation
* maximum size of the decompression buffer. Must be >= 0. If zero, maximum size is not limited.
*/
PerFrameDeflateDecoder(boolean noContext, WebSocketExtensionFilter extensionDecoderFilter, int maxAllocation) {
super(noContext, extensionDecoderFilter, maxAllocation);
}
@Override
public boolean acceptInboundMessage(Object msg) throws Exception {
if (!super.acceptInboundMessage(msg)) {
return false;
}
WebSocketFrame wsFrame = (WebSocketFrame) msg;
if (extensionDecoderFilter().mustSkip(wsFrame)) {
return false;
}
return (msg instanceof TextWebSocketFrame || msg instanceof BinaryWebSocketFrame ||
msg instanceof ContinuationWebSocketFrame) &&
(wsFrame.rsv() & WebSocketExtension.RSV1) > 0;
}
@Override
protected int newRsv(WebSocketFrame msg) {
return msg.rsv() ^ WebSocketExtension.RSV1;
}
@Override
protected boolean appendFrameTail(WebSocketFrame msg) {
return true;
}
}
Source
Frequently Asked Questions
What is the PerFrameDeflateDecoder class?
PerFrameDeflateDecoder is a class in the netty codebase, defined in codec-http/src/main/java/io/netty/handler/codec/http/websocketx/extensions/compression/PerFrameDeflateDecoder.java.
Where is PerFrameDeflateDecoder defined?
PerFrameDeflateDecoder is defined in codec-http/src/main/java/io/netty/handler/codec/http/websocketx/extensions/compression/PerFrameDeflateDecoder.java at line 28.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free