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
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
ConstructorsConstructorDescriptionConstructor with default configuration.PerMessageDeflateServerExtensionHandshaker
(int compressionLevel, boolean allowServerWindowSize, int preferredClientWindowSize, boolean allowServerNoContext, boolean preferredClientNoContext) Constructor with custom configuration.PerMessageDeflateServerExtensionHandshaker
(int compressionLevel, boolean allowServerWindowSize, int preferredClientWindowSize, boolean allowServerNoContext, boolean preferredClientNoContext, WebSocketExtensionFilterProvider extensionFilterProvider) 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
-
-
Constructor Details
-
PerMessageDeflateServerExtensionHandshaker
public PerMessageDeflateServerExtensionHandshaker()Constructor with default configuration. -
PerMessageDeflateServerExtensionHandshaker
public PerMessageDeflateServerExtensionHandshaker(int compressionLevel, boolean allowServerWindowSize, int preferredClientWindowSize, boolean allowServerNoContext, boolean preferredClientNoContext) 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, WebSocketExtensionFilterProvider extensionFilterProvider) 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.
-
-
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.
-