public class PerMessageDeflateHandshake extends Object implements ExtensionHandshake
permessage-deflate
WebSocket Extension handshake. This implementation supports parameters: server_no_context_takeover, client_no_context_takeover
.
This implementation does not support parameters: server_max_window_bits, client_max_window_bits
.
Modifier and Type | Field and Description |
---|---|
static int | DEFAULT_DEFLATER Default configuration for DEFLATE algorithm implementation |
Constructor and Description |
---|
PerMessageDeflateHandshake() |
PerMessageDeflateHandshake(boolean client) Create a new PerMessageDeflateHandshake instance. |
PerMessageDeflateHandshake(boolean client, boolean compressContextTakeover, boolean decompressContextTakeover) Create a new PerMessageDeflateHandshake instance. |
PerMessageDeflateHandshake(boolean client, int deflaterLevel) Create a new PerMessageDeflateHandshake instance. |
PerMessageDeflateHandshake(boolean client, int deflaterLevel, boolean compressContextTakeover, boolean decompressContextTakeover) Create a new PerMessageDeflateHandshake instance. |
Modifier and Type | Method and Description |
---|---|
WebSocketExtension | accept(WebSocketExtension extension) Validate if an extension request is accepted. |
ExtensionFunction | create() Create a new instance of the ExtensionFunction associated to this WebSocket Extension. |
String | getName() |
boolean | isIncompatible(List<ExtensionHandshake> extensions) Validate if current extension is compatible with previously negotiated in the server side. |
public static final int DEFAULT_DEFLATER
public PerMessageDeflateHandshake()
public PerMessageDeflateHandshake(boolean client)
PerMessageDeflateHandshake
instance.client
- indicate if extension is configured in client (true
) context or server (false
) context.public PerMessageDeflateHandshake(boolean client, int deflaterLevel)
PerMessageDeflateHandshake
instance.client
- indicate if extension is configured in client (true
) context or server (false
) contextdeflaterLevel
- the level of configuration of DEFLATE algorithm implementationpublic PerMessageDeflateHandshake(boolean client, boolean compressContextTakeover, boolean decompressContextTakeover)
PerMessageDeflateHandshake
instance.client
- flag for client (true
) context or server (false
) contextcompressContextTakeover
- flag for compressor context takeover or without compressor contextdecompressContextTakeover
- flag for decompressor context takeover or without decompressor contextpublic PerMessageDeflateHandshake(boolean client, int deflaterLevel, boolean compressContextTakeover, boolean decompressContextTakeover)
PerMessageDeflateHandshake
instance.client
- flag for client (true
) context or server (false
) contextdeflaterLevel
- the level of configuration of DEFLATE algorithm implementationcompressContextTakeover
- flag for compressor context takeover or without compressor contextdecompressContextTakeover
- flag for decompressor context takeover or without decompressor contextpublic String getName()
getName
in interface ExtensionHandshake
public WebSocketExtension accept(WebSocketExtension extension)
ExtensionHandshake
accept
in interface ExtensionHandshake
extension
- the extension request representationWebSocketExtension
instance with parameters accepted; null
in case extension request is not acceptedpublic boolean isIncompatible(List<ExtensionHandshake> extensions)
ExtensionHandshake
isIncompatible
in interface ExtensionHandshake
extensions
- a list of negotiated extensionstrue
if current extension is compatible; false
if current extension is not compatiblepublic ExtensionFunction create()
ExtensionHandshake
ExtensionFunction
associated to this WebSocket Extension.create
in interface ExtensionHandshake
ExtensionFunction
Copyright © 2020 JBoss by Red Hat. All rights reserved.