JdkZlibEncoder Class — netty Architecture
Architecture documentation for the JdkZlibEncoder class in JdkZlibEncoder.java from the netty codebase.
Entity Profile
Dependency Diagram
graph TD 8dcc2fdc_baa4_5fb3_e4d7_000af1ddd30a["JdkZlibEncoder"] e73ecd58_85b2_f0a2_e866_a9631f9550d1["JdkZlibEncoder.java"] 8dcc2fdc_baa4_5fb3_e4d7_000af1ddd30a -->|defined in| e73ecd58_85b2_f0a2_e866_a9631f9550d1 53940443_6309_48a5_b180_7953a304d1a9["JdkZlibEncoder()"] 8dcc2fdc_baa4_5fb3_e4d7_000af1ddd30a -->|method| 53940443_6309_48a5_b180_7953a304d1a9 2b2ab15d_f0a3_9cc8_0fd3_623c4a4fd4e8["ChannelFuture()"] 8dcc2fdc_baa4_5fb3_e4d7_000af1ddd30a -->|method| 2b2ab15d_f0a3_9cc8_0fd3_623c4a4fd4e8 82323d1b_0ab3_0e50_8b57_127545b21b16["ChannelHandlerContext()"] 8dcc2fdc_baa4_5fb3_e4d7_000af1ddd30a -->|method| 82323d1b_0ab3_0e50_8b57_127545b21b16 53faf844_4e23_8359_e430_cd0952d12757["isClosed()"] 8dcc2fdc_baa4_5fb3_e4d7_000af1ddd30a -->|method| 53faf844_4e23_8359_e430_cd0952d12757 92f2f5f3_5be2_5788_b281_3ddb3db7412b["encode()"] 8dcc2fdc_baa4_5fb3_e4d7_000af1ddd30a -->|method| 92f2f5f3_5be2_5788_b281_3ddb3db7412b e12a2d69_f2ab_a21f_7bbf_5504a0045b2e["encodeSome()"] 8dcc2fdc_baa4_5fb3_e4d7_000af1ddd30a -->|method| e12a2d69_f2ab_a21f_7bbf_5504a0045b2e 710100a4_5677_7b4f_0312_a3fbe54152f7["ByteBuf()"] 8dcc2fdc_baa4_5fb3_e4d7_000af1ddd30a -->|method| 710100a4_5677_7b4f_0312_a3fbe54152f7 72f770b2_fb57_82a2_c5d4_03548b86a079["close()"] 8dcc2fdc_baa4_5fb3_e4d7_000af1ddd30a -->|method| 72f770b2_fb57_82a2_c5d4_03548b86a079 3fadec12_f3af_22fc_77bb_9ca16c5b756a["deflate()"] 8dcc2fdc_baa4_5fb3_e4d7_000af1ddd30a -->|method| 3fadec12_f3af_22fc_77bb_9ca16c5b756a 778a0f90_867d_fcb4_5605_69330f63b1f6["handlerAdded()"] 8dcc2fdc_baa4_5fb3_e4d7_000af1ddd30a -->|method| 778a0f90_867d_fcb4_5605_69330f63b1f6
Relationship Graph
Source Code
codec-compression/src/main/java/io/netty/handler/codec/compression/JdkZlibEncoder.java lines 36–356
public class JdkZlibEncoder extends ZlibEncoder {
private static final InternalLogger logger = InternalLoggerFactory.getInstance(JdkZlibEncoder.class);
/**
* Maximum initial size for temporary heap buffers used for the compressed output. Buffer may still grow beyond
* this if necessary.
*/
private static final int MAX_INITIAL_OUTPUT_BUFFER_SIZE;
/**
* Max size for temporary heap buffers used to copy input data to heap.
*/
private static final int MAX_INPUT_BUFFER_SIZE;
private final ZlibWrapper wrapper;
private final Deflater deflater;
private volatile boolean finished;
private volatile ChannelHandlerContext ctx;
/*
* GZIP support
*/
private final CRC32 crc;
private static final byte[] gzipHeader = {0x1f, (byte) 0x8b, Deflater.DEFLATED, 0, 0, 0, 0, 0, 0, 0};
private boolean writeHeader = true;
static {
MAX_INITIAL_OUTPUT_BUFFER_SIZE = SystemPropertyUtil.getInt(
"io.netty.jdkzlib.encoder.maxInitialOutputBufferSize",
65536);
MAX_INPUT_BUFFER_SIZE = SystemPropertyUtil.getInt(
"io.netty.jdkzlib.encoder.maxInputBufferSize",
65536);
if (logger.isDebugEnabled()) {
logger.debug("-Dio.netty.jdkzlib.encoder.maxInitialOutputBufferSize={}", MAX_INITIAL_OUTPUT_BUFFER_SIZE);
logger.debug("-Dio.netty.jdkzlib.encoder.maxInputBufferSize={}", MAX_INPUT_BUFFER_SIZE);
}
}
/**
* Creates a new zlib encoder with a compression level of ({@code 6})
* and the default wrapper ({@link ZlibWrapper#ZLIB}).
*
* @throws CompressionException if failed to initialize zlib
*/
public JdkZlibEncoder() {
this(6);
}
/**
* Creates a new zlib encoder with the specified {@code compressionLevel}
* and the default wrapper ({@link ZlibWrapper#ZLIB}).
*
* @param compressionLevel
* {@code 1} yields the fastest compression and {@code 9} yields the
* best compression. {@code 0} means no compression. The default
* compression level is {@code 6}.
*
* @throws CompressionException if failed to initialize zlib
*/
public JdkZlibEncoder(int compressionLevel) {
this(ZlibWrapper.ZLIB, compressionLevel);
}
/**
* Creates a new zlib encoder with a compression level of ({@code 6})
* and the specified wrapper.
*
* @throws CompressionException if failed to initialize zlib
*/
public JdkZlibEncoder(ZlibWrapper wrapper) {
this(wrapper, 6);
}
/**
* Creates a new zlib encoder with the specified {@code compressionLevel}
* and the specified wrapper.
*
* @param compressionLevel
* {@code 1} yields the fastest compression and {@code 9} yields the
Source
Frequently Asked Questions
What is the JdkZlibEncoder class?
JdkZlibEncoder is a class in the netty codebase, defined in codec-compression/src/main/java/io/netty/handler/codec/compression/JdkZlibEncoder.java.
Where is JdkZlibEncoder defined?
JdkZlibEncoder is defined in codec-compression/src/main/java/io/netty/handler/codec/compression/JdkZlibEncoder.java at line 36.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free