Home / Class/ StandardCompressionOptions Class — netty Architecture

StandardCompressionOptions Class — netty Architecture

Architecture documentation for the StandardCompressionOptions class in StandardCompressionOptions.java from the netty codebase.

Entity Profile

Dependency Diagram

graph TD
  b8efebfc_ebbf_e8fe_8a97_ee9aa85b30bf["StandardCompressionOptions"]
  a47f079f_7be2_1772_115e_367ec1b6f170["StandardCompressionOptions.java"]
  b8efebfc_ebbf_e8fe_8a97_ee9aa85b30bf -->|defined in| a47f079f_7be2_1772_115e_367ec1b6f170
  5c5b6b66_db96_fc0b_e556_f3a1c34c0af8["StandardCompressionOptions()"]
  b8efebfc_ebbf_e8fe_8a97_ee9aa85b30bf -->|method| 5c5b6b66_db96_fc0b_e556_f3a1c34c0af8
  544b5105_4f22_dd39_f363_470966d5e6b3["BrotliOptions()"]
  b8efebfc_ebbf_e8fe_8a97_ee9aa85b30bf -->|method| 544b5105_4f22_dd39_f363_470966d5e6b3
  157ce417_1076_14b2_55a3_74d91d03130a["ZstdOptions()"]
  b8efebfc_ebbf_e8fe_8a97_ee9aa85b30bf -->|method| 157ce417_1076_14b2_55a3_74d91d03130a
  aa5ccd00_8ff5_47d7_6355_616ae6ac4d6b["SnappyOptions()"]
  b8efebfc_ebbf_e8fe_8a97_ee9aa85b30bf -->|method| aa5ccd00_8ff5_47d7_6355_616ae6ac4d6b
  97f4a266_441a_9261_b9bf_e0c34b1030e4["GzipOptions()"]
  b8efebfc_ebbf_e8fe_8a97_ee9aa85b30bf -->|method| 97f4a266_441a_9261_b9bf_e0c34b1030e4
  8a7d4a23_c012_9fff_b654_ac6baa0143ab["DeflateOptions()"]
  b8efebfc_ebbf_e8fe_8a97_ee9aa85b30bf -->|method| 8a7d4a23_c012_9fff_b654_ac6baa0143ab

Relationship Graph

Source Code

codec-compression/src/main/java/io/netty/handler/codec/compression/StandardCompressionOptions.java lines 25–151

public final class StandardCompressionOptions {

    private StandardCompressionOptions() {
        // Prevent outside initialization
    }

    /**
     * Default implementation of {@link BrotliOptions} with {@link Encoder.Parameters#setQuality(int)} set to 4
     * and {@link Encoder.Parameters#setMode(Encoder.Mode)} set to {@link Encoder.Mode#TEXT}
     */
    public static BrotliOptions brotli() {
        return BrotliOptions.DEFAULT;
    }

    /**
     * Create a new {@link BrotliOptions}
     *
     * @param parameters {@link Encoder.Parameters} Instance
     * @throws NullPointerException If {@link Encoder.Parameters} is {@code null}
     * @deprecated Use {@link #brotli(int, int, BrotliMode)}
     */
    @Deprecated
    public static BrotliOptions brotli(Encoder.Parameters parameters) {
        return new BrotliOptions(parameters);
    }

    /**
     * Create a new {@link BrotliOptions}
     *
     * @param quality Specifies the compression level.
     * @param window  Specifies the size of the sliding window when compressing.
     * @param mode    optimizes the compression algorithm based on the type of input data.
     * @throws NullPointerException If {@link BrotliMode} is {@code null}
     */
    public static BrotliOptions brotli(int quality, int window, BrotliMode mode) {
        ObjectUtil.checkInRange(quality, 0, 11, "quality");
        ObjectUtil.checkInRange(window, 10, 24, "window");
        ObjectUtil.checkNotNull(mode, "mode");

        Encoder.Parameters parameters = new Encoder.Parameters()
                .setQuality(quality)
                .setWindow(window)
                .setMode(mode.adapt());
        return new BrotliOptions(parameters);
    }

    /**
     * Default implementation of {@link ZstdOptions} with{compressionLevel(int)} set to
     * {@link ZstdConstants#DEFAULT_COMPRESSION_LEVEL},{@link ZstdConstants#DEFAULT_BLOCK_SIZE},
     * {@link ZstdConstants#DEFAULT_MAX_ENCODE_SIZE}
     */
    public static ZstdOptions zstd() {
        return ZstdOptions.DEFAULT;
    }

    /**
     * Create a new {@link ZstdOptions}
     *
     * @param blockSize        is used to calculate the compressionLevel
     * @param maxEncodeSize    specifies the size of the largest compressed object
     * @param compressionLevel specifies the level of the compression
     */
    public static ZstdOptions zstd(int compressionLevel, int blockSize, int maxEncodeSize) {
        return new ZstdOptions(compressionLevel, blockSize, maxEncodeSize);
    }

    /**
     * Create a new {@link SnappyOptions}
     */
    public static SnappyOptions snappy() {
        return new SnappyOptions();
    }

    /**
     * Default implementation of {@link GzipOptions} with
     * {@code compressionLevel()} set to 6, {@code windowBits()} set to 15 and {@code memLevel()} set to 8.
     */
    public static GzipOptions gzip() {
        return GzipOptions.DEFAULT;
    }

Frequently Asked Questions

What is the StandardCompressionOptions class?
StandardCompressionOptions is a class in the netty codebase, defined in codec-compression/src/main/java/io/netty/handler/codec/compression/StandardCompressionOptions.java.
Where is StandardCompressionOptions defined?
StandardCompressionOptions is defined in codec-compression/src/main/java/io/netty/handler/codec/compression/StandardCompressionOptions.java at line 25.

Analyze Your Own Codebase

Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.

Try Supermodel Free