Class PerMessageDeflateServerExtensionHandshaker
java.lang.Object
io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateServerExtensionHandshaker
- All Implemented Interfaces:
WebSocketServerExtensionHandshaker
public final class PerMessageDeflateServerExtensionHandshaker
extends Object
implements WebSocketServerExtensionHandshaker
permessage-deflate
handshake implementation.
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionprivate static class
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final boolean
private final boolean
(package private) static final String
(package private) static final String
private final int
private final WebSocketExtensionFilterProvider
static final int
private final int
static final int
(package private) static final String
private final boolean
private final int
(package private) static final String
(package private) static final String
-
Constructor Summary
ConstructorsConstructorDescriptionDeprecated.PerMessageDeflateServerExtensionHandshaker
(int maxAllocation) Constructor with default configuration.PerMessageDeflateServerExtensionHandshaker
(int compressionLevel, boolean allowServerWindowSize, int preferredClientWindowSize, boolean allowServerNoContext, boolean preferredClientNoContext) PerMessageDeflateServerExtensionHandshaker
(int compressionLevel, boolean allowServerWindowSize, int preferredClientWindowSize, boolean allowServerNoContext, boolean preferredClientNoContext, int maxAllocation) Constructor with custom configuration.PerMessageDeflateServerExtensionHandshaker
(int compressionLevel, boolean allowServerWindowSize, int preferredClientWindowSize, boolean allowServerNoContext, boolean preferredClientNoContext, WebSocketExtensionFilterProvider extensionFilterProvider) PerMessageDeflateServerExtensionHandshaker
(int compressionLevel, boolean allowServerWindowSize, int preferredClientWindowSize, boolean allowServerNoContext, boolean preferredClientNoContext, WebSocketExtensionFilterProvider extensionFilterProvider, int maxAllocation) Constructor with custom configuration. -
Method Summary
Modifier and TypeMethodDescriptionhandshakeExtension
(WebSocketExtensionData extensionData) Handshake based on client request.
-
Field Details
-
MIN_WINDOW_SIZE
public static final int MIN_WINDOW_SIZE- See Also:
-
MAX_WINDOW_SIZE
public static final int MAX_WINDOW_SIZE- See Also:
-
PERMESSAGE_DEFLATE_EXTENSION
- See Also:
-
CLIENT_MAX_WINDOW
- See Also:
-
SERVER_MAX_WINDOW
- See Also:
-
CLIENT_NO_CONTEXT
- See Also:
-
SERVER_NO_CONTEXT
- See Also:
-
compressionLevel
private final int compressionLevel -
allowServerWindowSize
private final boolean allowServerWindowSize -
preferredClientWindowSize
private final int preferredClientWindowSize -
allowServerNoContext
private final boolean allowServerNoContext -
preferredClientNoContext
private final boolean preferredClientNoContext -
extensionFilterProvider
-
maxAllocation
private final int maxAllocation
-
-
Constructor Details
-
PerMessageDeflateServerExtensionHandshaker
Deprecated.Useinvalid @link
{@link PerMessageDeflateServerExtensionHandshaker#
Constructor with default configuration. -
PerMessageDeflateServerExtensionHandshaker
public PerMessageDeflateServerExtensionHandshaker(int maxAllocation) Constructor with default configuration.- Parameters:
maxAllocation
- Maximum size of the decompression buffer. Must be >= 0. If zero, maximum size is not limited.
-
PerMessageDeflateServerExtensionHandshaker
@Deprecated public PerMessageDeflateServerExtensionHandshaker(int compressionLevel, boolean allowServerWindowSize, int preferredClientWindowSize, boolean allowServerNoContext, boolean preferredClientNoContext) Deprecated.Constructor with custom configuration.- Parameters:
compressionLevel
- Compression level between 0 and 9 (default is 6).allowServerWindowSize
- allows WebSocket client to customize the server inflater window size (default is false).preferredClientWindowSize
- indicates the preferred client window size to use if client inflater is customizable.allowServerNoContext
- allows WebSocket client to activate server_no_context_takeover (default is false).preferredClientNoContext
- indicates if server prefers to activate client_no_context_takeover if client is compatible with (default is false).
-
PerMessageDeflateServerExtensionHandshaker
public PerMessageDeflateServerExtensionHandshaker(int compressionLevel, boolean allowServerWindowSize, int preferredClientWindowSize, boolean allowServerNoContext, boolean preferredClientNoContext, int maxAllocation) Constructor with custom configuration.- Parameters:
compressionLevel
- Compression level between 0 and 9 (default is 6).allowServerWindowSize
- allows WebSocket client to customize the server inflater window size (default is false).preferredClientWindowSize
- indicates the preferred client window size to use if client inflater is customizable.allowServerNoContext
- allows WebSocket client to activate server_no_context_takeover (default is false).preferredClientNoContext
- indicates if server prefers to activate client_no_context_takeover if client is compatible with (default is false).maxAllocation
- Maximum size of the decompression buffer. Must be >= 0. If zero, maximum size is not limited.
-
PerMessageDeflateServerExtensionHandshaker
@Deprecated public PerMessageDeflateServerExtensionHandshaker(int compressionLevel, boolean allowServerWindowSize, int preferredClientWindowSize, boolean allowServerNoContext, boolean preferredClientNoContext, WebSocketExtensionFilterProvider extensionFilterProvider) Deprecated.Constructor with custom configuration.- Parameters:
compressionLevel
- Compression level between 0 and 9 (default is 6).allowServerWindowSize
- allows WebSocket client to customize the server inflater window size (default is false).preferredClientWindowSize
- indicates the preferred client window size to use if client inflater is customizable.allowServerNoContext
- allows WebSocket client to activate server_no_context_takeover (default is false).preferredClientNoContext
- indicates if server prefers to activate client_no_context_takeover if client is compatible with (default is false).extensionFilterProvider
- provides server extension filters for per message deflate encoder and decoder.
-
PerMessageDeflateServerExtensionHandshaker
public PerMessageDeflateServerExtensionHandshaker(int compressionLevel, boolean allowServerWindowSize, int preferredClientWindowSize, boolean allowServerNoContext, boolean preferredClientNoContext, WebSocketExtensionFilterProvider extensionFilterProvider, int maxAllocation) Constructor with custom configuration.- Parameters:
compressionLevel
- Compression level between 0 and 9 (default is 6).allowServerWindowSize
- allows WebSocket client to customize the server inflater window size (default is false).preferredClientWindowSize
- indicates the preferred client window size to use if client inflater is customizable.allowServerNoContext
- allows WebSocket client to activate server_no_context_takeover (default is false).preferredClientNoContext
- indicates if server prefers to activate client_no_context_takeover if client is compatible with (default is false).extensionFilterProvider
- provides server extension filters for per message deflate encoder and decoder.maxAllocation
- Maximum size of the decompression buffer. Must be >= 0. If zero, maximum size is not limited.
-
-
Method Details
-
handshakeExtension
Description copied from interface:WebSocketServerExtensionHandshaker
Handshake based on client request. It must failed with null if server cannot handle it.- Specified by:
handshakeExtension
in interfaceWebSocketServerExtensionHandshaker
- Parameters:
extensionData
- the extension configuration sent by the client.- Returns:
- an initialized extension if handshake phase succeed or null if failed.
-
invalid @link