Module io.netty5.codec.http
Class WebSocketClientHandshaker13
- java.lang.Object
 - 
- io.netty5.handler.codec.http.websocketx.WebSocketClientHandshaker
 - 
- io.netty5.handler.codec.http.websocketx.WebSocketClientHandshaker13
 
 
 
- 
public class WebSocketClientHandshaker13 extends WebSocketClientHandshaker
Performs client side opening and closing handshakes for web socket specification version websocketprotocol-v13
 
- 
- 
Field Summary
- 
Fields inherited from class io.netty5.handler.codec.http.websocketx.WebSocketClientHandshaker
customHeaders, DEFAULT_FORCE_CLOSE_TIMEOUT_MILLIS 
 - 
 
- 
Constructor Summary
Constructors Constructor Description WebSocketClientHandshaker13(URI webSocketURL, String subprotocol, boolean allowExtensions, HttpHeaders customHeaders, int maxFramePayloadLength)Creates a new instance.WebSocketClientHandshaker13(URI webSocketURL, String subprotocol, boolean allowExtensions, HttpHeaders customHeaders, int maxFramePayloadLength, boolean performMasking, boolean allowMaskMismatch)Creates a new instance.WebSocketClientHandshaker13(URI webSocketURL, String subprotocol, boolean allowExtensions, HttpHeaders customHeaders, int maxFramePayloadLength, boolean performMasking, boolean allowMaskMismatch, long forceCloseTimeoutMillis)Creates a new instance. 
- 
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected FullHttpRequestnewHandshakeRequest(BufferAllocator allocator)/**protected WebSocketFrameDecodernewWebsocketDecoder()Returns the decoder to use after handshake is complete.protected WebSocketFrameEncodernewWebSocketEncoder()Returns the encoder to use after the handshake is complete.WebSocketClientHandshaker13setForceCloseTimeoutMillis(long forceCloseTimeoutMillis)Sets timeout to close the connection if it was not closed by the server.protected voidverify(FullHttpResponse response)Process server response:- 
Methods inherited from class io.netty5.handler.codec.http.websocketx.WebSocketClientHandshaker
actualSubprotocol, close, close, expectedSubprotocol, finishHandshake, forceCloseTimeoutMillis, handshake, isForceCloseComplete, isHandshakeComplete, maxFramePayloadLength, processHandshake, upgradeUrl, uri, version 
 - 
 
 - 
 
- 
- 
Constructor Detail
- 
WebSocketClientHandshaker13
public WebSocketClientHandshaker13(URI webSocketURL, String subprotocol, boolean allowExtensions, HttpHeaders customHeaders, int maxFramePayloadLength)
Creates a new instance.- Parameters:
 webSocketURL- URL for web socket communications. e.g "ws://myhost.com/mypath". Subsequent web socket frames will be sent to this URL.subprotocol- Sub protocol request sent to the server.allowExtensions- Allow extensions to be used in the reserved bits of the web socket framecustomHeaders- Map of custom headers to add to the client requestmaxFramePayloadLength- Maximum length of a frame's payload
 
- 
WebSocketClientHandshaker13
public WebSocketClientHandshaker13(URI webSocketURL, String subprotocol, boolean allowExtensions, HttpHeaders customHeaders, int maxFramePayloadLength, boolean performMasking, boolean allowMaskMismatch)
Creates a new instance.- Parameters:
 webSocketURL- URL for web socket communications. e.g "ws://myhost.com/mypath". Subsequent web socket frames will be sent to this URL.subprotocol- Sub protocol request sent to the server.allowExtensions- Allow extensions to be used in the reserved bits of the web socket framecustomHeaders- Map of custom headers to add to the client requestmaxFramePayloadLength- Maximum length of a frame's payloadperformMasking- Whether to mask all written websocket frames. This must be set to true in order to be fully compatible with the websocket specifications. Client applications that communicate with a non-standard server which doesn't require masking might set this to false to achieve a higher performance.allowMaskMismatch- When set to true, frames which are not masked properly according to the standard will still be accepted.
 
- 
WebSocketClientHandshaker13
public WebSocketClientHandshaker13(URI webSocketURL, String subprotocol, boolean allowExtensions, HttpHeaders customHeaders, int maxFramePayloadLength, boolean performMasking, boolean allowMaskMismatch, long forceCloseTimeoutMillis)
Creates a new instance.- Parameters:
 webSocketURL- URL for web socket communications. e.g "ws://myhost.com/mypath". Subsequent web socket frames will be sent to this URL.subprotocol- Sub protocol request sent to the server.allowExtensions- Allow extensions to be used in the reserved bits of the web socket framecustomHeaders- Map of custom headers to add to the client requestmaxFramePayloadLength- Maximum length of a frame's payloadperformMasking- Whether to mask all written websocket frames. This must be set to true in order to be fully compatible with the websocket specifications. Client applications that communicate with a non-standard server which doesn't require masking might set this to false to achieve a higher performance.allowMaskMismatch- When set to true, frames which are not masked properly according to the standard will still be acceptedforceCloseTimeoutMillis- Close the connection if it was not closed by the server after timeout specified.
 
 - 
 
- 
Method Detail
- 
newHandshakeRequest
protected FullHttpRequest newHandshakeRequest(BufferAllocator allocator)
/**Sends the opening request to the server:
GET /chat HTTP/1.1 Host: server.example.com Upgrade: websocket Connection: Upgrade Sec-WebSocket-Key: dGhlIHNhbXBsZSBub25jZQ== Sec-WebSocket-Protocol: chat, superchat Sec-WebSocket-Version: 13
- Specified by:
 newHandshakeRequestin classWebSocketClientHandshaker
 
- 
verify
protected void verify(FullHttpResponse response)
Process server response:
HTTP/1.1 101 Switching Protocols Upgrade: websocket Connection: Upgrade Sec-WebSocket-Accept: s3pPLMBiTxaQ9kYGzzhZRbK+xOo= Sec-WebSocket-Protocol: chat
- Specified by:
 verifyin classWebSocketClientHandshaker- Parameters:
 response- HTTP response returned from the server for the request sent by beginOpeningHandshake00().- Throws:
 WebSocketHandshakeException- if handshake response is invalid.
 
- 
newWebsocketDecoder
protected WebSocketFrameDecoder newWebsocketDecoder()
Description copied from class:WebSocketClientHandshakerReturns the decoder to use after handshake is complete.- Specified by:
 newWebsocketDecoderin classWebSocketClientHandshaker
 
- 
newWebSocketEncoder
protected WebSocketFrameEncoder newWebSocketEncoder()
Description copied from class:WebSocketClientHandshakerReturns the encoder to use after the handshake is complete.- Specified by:
 newWebSocketEncoderin classWebSocketClientHandshaker
 
- 
setForceCloseTimeoutMillis
public WebSocketClientHandshaker13 setForceCloseTimeoutMillis(long forceCloseTimeoutMillis)
Description copied from class:WebSocketClientHandshakerSets timeout to close the connection if it was not closed by the server.- Overrides:
 setForceCloseTimeoutMillisin classWebSocketClientHandshaker- Parameters:
 forceCloseTimeoutMillis- Close the connection if it was not closed by the server after timeout specified
 
 - 
 
 -