Top Fields Constructors Methods
io.undertow.websockets.extensions

public Class CompositeExtensionFunction

extends Object
implements ExtensionFunction
Class Inheritance
All Implemented Interfaces
io.undertow.websockets.extensions.ExtensionFunction
Imports
io.undertow.connector.PooledByteBuffer, io.undertow.websockets.core.StreamSinkFrameChannel, .StreamSourceFrameChannel, java.io.IOException, java.util.List

Field Summary

Modifier and TypeField and Description
private final ExtensionFunction[]

Constructor Summary

AccessConstructor and Description
private

Method Summary

Modifier and TypeMethod and Description
public static ExtensionFunction
public static ExtensionFunction
compose(ExtensionFunction... functions)

public void
public boolean
hasExtensionOpCode()

Implements io.undertow.websockets.extensions.ExtensionFunction.hasExtensionOpCode.

Validate if current extension defines a new WebSocket Opcode.

public PooledByteBuffer
transformForRead(PooledByteBuffer
Buffer to transform
pooledBuffer
,
StreamSourceFrameChannel
working channel
channel
,
boolean
If this frame is the last fragment of a message. Note that this may not be received for every message, if the message ends with an empty frame
lastFragementOfMessage
)

Implements io.undertow.websockets.extensions.ExtensionFunction.transformForRead.

Transform the supplied buffer per this extension.

public PooledByteBuffer
transformForWrite(PooledByteBuffer
Buffer to transform
pooledBuffer
,
StreamSinkFrameChannel
working channel
channel
,
boolean lastFrame)

Implements io.undertow.websockets.extensions.ExtensionFunction.transformForWrite.

Transform the supplied buffer per this extension.

public int
writeRsv(int
current RSV bits status
rsv
)

Implements io.undertow.websockets.extensions.ExtensionFunction.writeRsv.

Add RSV bits (RSV1, RSV2, RSV3) to the current rsv status.

Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

delegatesback to summary
private final ExtensionFunction[] delegates

Constructor Detail

CompositeExtensionFunctionback to summary
private CompositeExtensionFunction(ExtensionFunction... delegates)

Method Detail

composeback to summary
public static ExtensionFunction compose(List<ExtensionFunction> functions)
composeback to summary
public static ExtensionFunction compose(ExtensionFunction... functions)
disposeback to summary
public void dispose()

Implements io.undertow.websockets.extensions.ExtensionFunction.dispose.

Doc from io.undertow.websockets.extensions.ExtensionFunction.dispose.

Dispose this function. Called upon connection closure

Annotations
@Override
hasExtensionOpCodeback to summary
public boolean hasExtensionOpCode()

Implements io.undertow.websockets.extensions.ExtensionFunction.hasExtensionOpCode.

Doc from io.undertow.websockets.extensions.ExtensionFunction.hasExtensionOpCode.

Validate if current extension defines a new WebSocket Opcode.

Returns:boolean

true if current extension defines specific Opcode false is current extension does not define specific Opcode

Annotations
@Override
transformForReadback to summary
public PooledByteBuffer transformForRead(PooledByteBuffer pooledBuffer, StreamSourceFrameChannel channel, boolean lastFragementOfMessage) throws IOException

Implements io.undertow.websockets.extensions.ExtensionFunction.transformForRead.

Doc from io.undertow.websockets.extensions.ExtensionFunction.transformForRead.

Transform the supplied buffer per this extension. The buffer can be modified in place, or a new pooled buffer can be returned (in which case be sure to free the original buffer

Parameters
pooledBuffer:PooledByteBuffer

Buffer to transform

channel:StreamSourceFrameChannel

working channel

lastFragementOfMessage:boolean

If this frame is the last fragment of a message. Note that this may not be received for every message, if the message ends with an empty frame

Returns:PooledByteBuffer

transformed buffer (may be the same one, just with modified contents)

Annotations
@Override
transformForWriteback to summary
public PooledByteBuffer transformForWrite(PooledByteBuffer pooledBuffer, StreamSinkFrameChannel channel, boolean lastFrame) throws IOException

Implements io.undertow.websockets.extensions.ExtensionFunction.transformForWrite.

Doc from io.undertow.websockets.extensions.ExtensionFunction.transformForWrite.

Transform the supplied buffer per this extension. The buffer can be modified in place, or a new pooled buffer can be returned (in which case be sure to free the original buffer

Parameters
pooledBuffer:PooledByteBuffer

Buffer to transform

channel:StreamSinkFrameChannel

working channel

Returns:PooledByteBuffer

transformed buffer (may be the same one, just with modified contents)

Annotations
@Override
writeRsvback to summary
public int writeRsv(int rsv)

Implements io.undertow.websockets.extensions.ExtensionFunction.writeRsv.

Doc from io.undertow.websockets.extensions.ExtensionFunction.writeRsv.

Add RSV bits (RSV1, RSV2, RSV3) to the current rsv status.

Parameters
rsv:int

current RSV bits status

Returns:int

rsv status

Annotations
@Override