Class PerMessageDeflateClientExtensionHandshaker
java.lang.Object
io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker
- All Implemented Interfaces:
WebSocketClientExtensionHandshaker
public final class PerMessageDeflateClientExtensionHandshaker
extends Object
implements WebSocketClientExtensionHandshaker
permessage-deflate
handshake implementation.
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionprivate final class
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final boolean
private final boolean
private final int
private final WebSocketExtensionFilterProvider
private final int
private final boolean
private final int
-
Constructor Summary
ConstructorsConstructorDescriptionDeprecated.PerMessageDeflateClientExtensionHandshaker
(int maxAllocation) Constructor with default configuration.PerMessageDeflateClientExtensionHandshaker
(int compressionLevel, boolean allowClientWindowSize, int requestedServerWindowSize, boolean allowClientNoContext, boolean requestedServerNoContext) PerMessageDeflateClientExtensionHandshaker
(int compressionLevel, boolean allowClientWindowSize, int requestedServerWindowSize, boolean allowClientNoContext, boolean requestedServerNoContext, int maxAllocation) Constructor with custom configuration.PerMessageDeflateClientExtensionHandshaker
(int compressionLevel, boolean allowClientWindowSize, int requestedServerWindowSize, boolean allowClientNoContext, boolean requestedServerNoContext, WebSocketExtensionFilterProvider extensionFilterProvider) PerMessageDeflateClientExtensionHandshaker
(int compressionLevel, boolean allowClientWindowSize, int requestedServerWindowSize, boolean allowClientNoContext, boolean requestedServerNoContext, WebSocketExtensionFilterProvider extensionFilterProvider, int maxAllocation) Constructor with custom configuration. -
Method Summary
Modifier and TypeMethodDescriptionhandshakeExtension
(WebSocketExtensionData extensionData) Handshake based on server response.Return extension configuration to submit to the server.
-
Field Details
-
compressionLevel
private final int compressionLevel -
allowClientWindowSize
private final boolean allowClientWindowSize -
requestedServerWindowSize
private final int requestedServerWindowSize -
allowClientNoContext
private final boolean allowClientNoContext -
requestedServerNoContext
private final boolean requestedServerNoContext -
extensionFilterProvider
-
maxAllocation
private final int maxAllocation
-
-
Constructor Details
-
PerMessageDeflateClientExtensionHandshaker
Deprecated.Useinvalid @link
{@link PerMessageDeflateClientExtensionHandshaker#
Constructor with default configuration. -
PerMessageDeflateClientExtensionHandshaker
public PerMessageDeflateClientExtensionHandshaker(int maxAllocation) Constructor with default configuration.- Parameters:
maxAllocation
- Maximum size of the decompression buffer. Must be >= 0. If zero, maximum size is not limited.
-
PerMessageDeflateClientExtensionHandshaker
@Deprecated public PerMessageDeflateClientExtensionHandshaker(int compressionLevel, boolean allowClientWindowSize, int requestedServerWindowSize, boolean allowClientNoContext, boolean requestedServerNoContext) Deprecated.Constructor with custom configuration.- Parameters:
compressionLevel
- Compression level between 0 and 9 (default is 6).allowClientWindowSize
- allows WebSocket server to customize the client inflater window size (default is false).requestedServerWindowSize
- indicates the requested sever window size to use if server inflater is customizable.allowClientNoContext
- allows WebSocket server to activate client_no_context_takeover (default is false).requestedServerNoContext
- indicates if client needs to activate server_no_context_takeover if server is compatible with (default is false).
-
PerMessageDeflateClientExtensionHandshaker
public PerMessageDeflateClientExtensionHandshaker(int compressionLevel, boolean allowClientWindowSize, int requestedServerWindowSize, boolean allowClientNoContext, boolean requestedServerNoContext, int maxAllocation) Constructor with custom configuration.- Parameters:
compressionLevel
- Compression level between 0 and 9 (default is 6).allowClientWindowSize
- allows WebSocket server to customize the client inflater window size (default is false).requestedServerWindowSize
- indicates the requested sever window size to use if server inflater is customizable.allowClientNoContext
- allows WebSocket server to activate client_no_context_takeover (default is false).requestedServerNoContext
- indicates if client needs to activate server_no_context_takeover if server is compatible with (default is false).maxAllocation
- Maximum size of the decompression buffer. Must be >= 0. If zero, maximum size is not limited.
-
PerMessageDeflateClientExtensionHandshaker
@Deprecated public PerMessageDeflateClientExtensionHandshaker(int compressionLevel, boolean allowClientWindowSize, int requestedServerWindowSize, boolean allowClientNoContext, boolean requestedServerNoContext, WebSocketExtensionFilterProvider extensionFilterProvider) Deprecated.Constructor with custom configuration.- Parameters:
compressionLevel
- Compression level between 0 and 9 (default is 6).allowClientWindowSize
- allows WebSocket server to customize the client inflater window size (default is false).requestedServerWindowSize
- indicates the requested sever window size to use if server inflater is customizable.allowClientNoContext
- allows WebSocket server to activate client_no_context_takeover (default is false).requestedServerNoContext
- indicates if client needs to activate server_no_context_takeover if server is compatible with (default is false).extensionFilterProvider
- provides client extension filters for per message deflate encoder and decoder.
-
PerMessageDeflateClientExtensionHandshaker
public PerMessageDeflateClientExtensionHandshaker(int compressionLevel, boolean allowClientWindowSize, int requestedServerWindowSize, boolean allowClientNoContext, boolean requestedServerNoContext, WebSocketExtensionFilterProvider extensionFilterProvider, int maxAllocation) Constructor with custom configuration.- Parameters:
compressionLevel
- Compression level between 0 and 9 (default is 6).allowClientWindowSize
- allows WebSocket server to customize the client inflater window size (default is false).requestedServerWindowSize
- indicates the requested sever window size to use if server inflater is customizable.allowClientNoContext
- allows WebSocket server to activate client_no_context_takeover (default is false).requestedServerNoContext
- indicates if client needs to activate server_no_context_takeover if server is compatible with (default is false).extensionFilterProvider
- provides client 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
-
newRequestData
Description copied from interface:WebSocketClientExtensionHandshaker
Return extension configuration to submit to the server.- Specified by:
newRequestData
in interfaceWebSocketClientExtensionHandshaker
- Returns:
- the desired extension configuration.
-
handshakeExtension
Description copied from interface:WebSocketClientExtensionHandshaker
Handshake based on server response. It should always succeed because server response should be a request acknowledge.- Specified by:
handshakeExtension
in interfaceWebSocketClientExtensionHandshaker
- Parameters:
extensionData
- the extension configuration sent by the server.- Returns:
- an initialized extension if handshake phase succeed or null if failed.
-
invalid @link