Top Description Fields Constructors Methods
io.netty5.handler.codec.http.websocketx.extensions.compression

pack-priv Class PerMessageDeflateEncoder

extends DeflateEncoder
Class Inheritance
Imports
io.netty5.channel.ChannelHandlerContext, io.netty5.handler.codec.http.websocketx.BinaryWebSocketFrame, .ContinuationWebSocketFrame, .TextWebSocketFrame, .WebSocketFrame, io.netty5.handler.codec.http.websocketx.extensions.WebSocketExtension, .WebSocketExtensionFilter, java.util.List

Per-message implementation of deflate compressor.

Field Summary

Modifier and TypeField and Description
private boolean
Inherited from io.netty5.handler.codec.http.websocketx.extensions.compression.DeflateEncoder:
EMPTY_DEFLATE_BLOCK

Constructor Summary

AccessConstructor and Description
pack-priv
PerMessageDeflateEncoder(int
compression level of the compressor.
compressionLevel
,
int
maximum size of the window compressor buffer.
windowSize
,
boolean
true to disable context takeover.
noContext
)

Constructor

pack-priv
PerMessageDeflateEncoder(int
compression level of the compressor.
compressionLevel
,
int
maximum size of the window compressor buffer.
windowSize
,
boolean
true to disable context takeover.
noContext
,
WebSocketExtensionFilter
extension filter for per message deflate encoder.
extensionEncoderFilter
)

Constructor

Method Summary

Modifier and TypeMethod and Description
public boolean
acceptOutboundMessage(Object msg)

Overrides io.netty5.handler.codec.MessageToMessageEncoder.acceptOutboundMessage.

Returns true if the given message should be handled.
protected void
encodeAndClose(ChannelHandlerContext ctx, WebSocketFrame
the message to encode to another one.
msg
,
List<Object>
the List into which produced output messages should be added.
out
)

Overrides io.netty5.handler.codec.http.websocketx.extensions.compression.DeflateEncoder.encodeAndClose.

Encode from one message to another.
protected boolean
protected int
Inherited from io.netty5.handler.codec.http.websocketx.extensions.compression.DeflateEncoder:
extensionEncoderFilterhandlerRemoved

Field Detail

compressingback to summary
private boolean compressing

Constructor Detail

PerMessageDeflateEncoderback to summary
pack-priv PerMessageDeflateEncoder(int compressionLevel, int windowSize, boolean noContext)

Constructor

Parameters
compressionLevel:int

compression level of the compressor.

windowSize:int

maximum size of the window compressor buffer.

noContext:boolean

true to disable context takeover.

PerMessageDeflateEncoderback to summary
pack-priv PerMessageDeflateEncoder(int compressionLevel, int windowSize, boolean noContext, WebSocketExtensionFilter extensionEncoderFilter)

Constructor

Parameters
compressionLevel:int

compression level of the compressor.

windowSize:int

maximum size of the window compressor buffer.

noContext:boolean

true to disable context takeover.

extensionEncoderFilter:WebSocketExtensionFilter

extension filter for per message deflate encoder.

Method Detail

acceptOutboundMessageback to summary
public boolean acceptOutboundMessage(Object msg) throws Exception

Overrides io.netty5.handler.codec.MessageToMessageEncoder.acceptOutboundMessage.

Doc from io.netty5.handler.codec.MessageToMessageEncoder.acceptOutboundMessage.

Returns true if the given message should be handled. If false it will be passed to the next ChannelHandler in the ChannelPipeline.

Annotations
@Override
encodeAndCloseback to summary
protected void encodeAndClose(ChannelHandlerContext ctx, WebSocketFrame msg, List<Object> out) throws Exception

Overrides io.netty5.handler.codec.http.websocketx.extensions.compression.DeflateEncoder.encodeAndClose.

Doc from io.netty5.handler.codec.MessageToMessageEncoder.encodeAndClose.

Encode from one message to another. This method will be called for each written message that can be handled by this encoder.

The message will not be automatically disposed of after this call. Instead, the responsibility of ensuring that messages are disposed of falls upon the implementor of this method.

Subclasses that wish to have incoming messages automatically disposed of should instead override the encode(ChannelHandlerContext, Object, List) method.

Parameters
ctx:ChannelHandlerContext

the ChannelHandlerContext which this MessageToMessageEncoder belongs to.

msg:WebSocketFrame

the message to encode to another one.

out:List<Object>

the List into which produced output messages should be added.

Annotations
@Override
Exceptions
Exception:
is thrown if an error occurs.
removeFrameTailback to summary
protected boolean removeFrameTail(WebSocketFrame msg)

Implements abstract io.netty5.handler.codec.http.websocketx.extensions.compression.DeflateEncoder.removeFrameTail.

Parameters
msg:WebSocketFrame

Doc from io.netty5.handler.codec.http.websocketx.extensions.compression.DeflateEncoder.removeFrameTail.

the current frame.

Returns:boolean

Doc from io.netty5.handler.codec.http.websocketx.extensions.compression.DeflateEncoder.removeFrameTail.

true if compressed payload tail needs to be removed.

Annotations
@Override
rsvback to summary
protected int rsv(WebSocketFrame msg)

Implements abstract io.netty5.handler.codec.http.websocketx.extensions.compression.DeflateEncoder.rsv.

Parameters
msg:WebSocketFrame

Doc from io.netty5.handler.codec.http.websocketx.extensions.compression.DeflateEncoder.rsv.

the current frame.

Returns:int

Doc from io.netty5.handler.codec.http.websocketx.extensions.compression.DeflateEncoder.rsv.

the rsv bits to set in the compressed frame.

Annotations
@Override