Home / Class/ PerMessageDeflateClientExtensionHandshaker Class — netty Architecture

PerMessageDeflateClientExtensionHandshaker Class — netty Architecture

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

Entity Profile

Dependency Diagram

graph TD
  3c87c2ad_a87f_62a4_5a39_25cd0fda5855["PerMessageDeflateClientExtensionHandshaker"]
  f870dbb6_ffd4_1344_7707_82558edf8a08["PerMessageDeflateClientExtensionHandshaker.java"]
  3c87c2ad_a87f_62a4_5a39_25cd0fda5855 -->|defined in| f870dbb6_ffd4_1344_7707_82558edf8a08
  60bd4314_c9f3_a832_6450_351f8a110ea4["PerMessageDeflateClientExtensionHandshaker()"]
  3c87c2ad_a87f_62a4_5a39_25cd0fda5855 -->|method| 60bd4314_c9f3_a832_6450_351f8a110ea4
  a9d404b7_a41a_02ad_867d_35590e792c12["WebSocketExtensionData()"]
  3c87c2ad_a87f_62a4_5a39_25cd0fda5855 -->|method| a9d404b7_a41a_02ad_867d_35590e792c12
  860b68b7_d604_cda7_7dad_2b17c30f4546["WebSocketClientExtension()"]
  3c87c2ad_a87f_62a4_5a39_25cd0fda5855 -->|method| 860b68b7_d604_cda7_7dad_2b17c30f4546

Relationship Graph

Source Code

codec-http/src/main/java/io/netty/handler/codec/http/websocketx/extensions/compression/PerMessageDeflateClientExtensionHandshaker.java lines 37–315

public final class PerMessageDeflateClientExtensionHandshaker implements WebSocketClientExtensionHandshaker {

    private final int compressionLevel;
    private final boolean allowClientWindowSize;
    private final int requestedServerWindowSize;
    private final boolean allowClientNoContext;
    private final boolean requestedServerNoContext;
    private final WebSocketExtensionFilterProvider extensionFilterProvider;
    private final int maxAllocation;

    /**
     * Constructor with default configuration.
     * @deprecated
     *            Use {@link PerMessageDeflateClientExtensionHandshaker#
     *            PerMessageDeflateClientExtensionHandshaker(int)}.
     */
    @Deprecated
    public PerMessageDeflateClientExtensionHandshaker() {
        this(0);
    }

    /**
     * Constructor with default configuration.
     * @param maxAllocation
     *            Maximum size of the decompression buffer. Must be >= 0. If zero, maximum size is not limited.
     */
    public PerMessageDeflateClientExtensionHandshaker(int maxAllocation) {
        this(6, ZlibCodecFactory.isSupportingWindowSizeAndMemLevel(), MAX_WINDOW_SIZE, false, false, maxAllocation);
    }

    /**
     * Constructor with custom configuration.
     *
     * @param compressionLevel
     *            Compression level between 0 and 9 (default is 6).
     * @param allowClientWindowSize
     *            allows WebSocket server to customize the client inflater window size
     *            (default is false).
     * @param requestedServerWindowSize
     *            indicates the requested sever window size to use if server inflater is customizable.
     * @param allowClientNoContext
     *            allows WebSocket server to activate client_no_context_takeover
     *            (default is false).
     * @param requestedServerNoContext
     *            indicates if client needs to activate server_no_context_takeover
     *            if server is compatible with (default is false).
     * @deprecated
     *            Use {@link PerMessageDeflateClientExtensionHandshaker#PerMessageDeflateClientExtensionHandshaker(
     *            int, boolean, int, boolean, boolean, int)}.
     */
    @Deprecated
    public PerMessageDeflateClientExtensionHandshaker(int compressionLevel,
                                                      boolean allowClientWindowSize, int requestedServerWindowSize,
                                                      boolean allowClientNoContext, boolean requestedServerNoContext) {
        this(compressionLevel, allowClientWindowSize, requestedServerWindowSize, allowClientNoContext,
             requestedServerNoContext, 0);
    }

    /**
     * Constructor with custom configuration.
     *
     * @param compressionLevel
     *            Compression level between 0 and 9 (default is 6).
     * @param allowClientWindowSize
     *            allows WebSocket server to customize the client inflater window size
     *            (default is false).
     * @param requestedServerWindowSize
     *            indicates the requested sever window size to use if server inflater is customizable.
     * @param allowClientNoContext
     *            allows WebSocket server to activate client_no_context_takeover
     *            (default is false).
     * @param requestedServerNoContext
     *            indicates if client needs to activate server_no_context_takeover
     *            if server is compatible with (default is false).
     * @param maxAllocation
     *            Maximum size of the decompression buffer. Must be >= 0. If zero, maximum size is not limited.
     */
    public PerMessageDeflateClientExtensionHandshaker(int compressionLevel,
            boolean allowClientWindowSize, int requestedServerWindowSize,
            boolean allowClientNoContext, boolean requestedServerNoContext,
            int maxAllocation) {

Frequently Asked Questions

What is the PerMessageDeflateClientExtensionHandshaker class?
PerMessageDeflateClientExtensionHandshaker is a class in the netty codebase, defined in codec-http/src/main/java/io/netty/handler/codec/http/websocketx/extensions/compression/PerMessageDeflateClientExtensionHandshaker.java.
Where is PerMessageDeflateClientExtensionHandshaker defined?
PerMessageDeflateClientExtensionHandshaker is defined in codec-http/src/main/java/io/netty/handler/codec/http/websocketx/extensions/compression/PerMessageDeflateClientExtensionHandshaker.java at line 37.

Analyze Your Own Codebase

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

Try Supermodel Free