Package tigase.server.websocket
Class WebSocketHixie76
java.lang.Object
tigase.server.websocket.WebSocketHixie76
- All Implemented Interfaces:
WebSocketProtocolIfc
@Bean(name="hyxie76Protocol",
parent=WebSocketClientConnectionManager.class,
active=false)
public class WebSocketHixie76
extends Object
implements WebSocketProtocolIfc
Class implements Hixie-76 version of WebSocket protocol specification which is used in connection handshaking as well
as in frameing/deframing of data sent over WebSocket connection
- Author:
- andrzej
- See Also:
-
Field Summary
Fields inherited from interface tigase.server.websocket.WebSocketProtocolIfc
WS_PROTOCOL_KEY, WS_VERSION_KEY
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionvoid
closeConnection
(WebSocketXMPPIOService service) Method closes connection by sending close framedecodeFrame
(WebSocketXMPPIOService service, ByteBuffer buf) Method responsible for decoding data received from socket and returning data after extracting it from WebSocket frame.void
encodeFrameAndWrite
(WebSocketXMPPIOService service, ByteBuffer buf) Method encodes data into WebSocket frame and writes it to passed servicegetId()
Method to retrieve string identifier of implementation of protcol versionboolean
handshake
(WebSocketXMPPIOService service, Map<String, String> headers, byte[] buf) Method responsible for handshaking of WebSocket using proper version of protocol.
-
Field Details
-
ID
- See Also:
-
-
Constructor Details
-
WebSocketHixie76
public WebSocketHixie76()
-
-
Method Details
-
getId
Description copied from interface:WebSocketProtocolIfc
Method to retrieve string identifier of implementation of protcol version- Specified by:
getId
in interfaceWebSocketProtocolIfc
-
handshake
public boolean handshake(WebSocketXMPPIOService service, Map<String, String> headers, byte[] buf) throws NoSuchAlgorithmException, IOExceptionDescription copied from interface:WebSocketProtocolIfc
Method responsible for handshaking of WebSocket using proper version of protocol.- Specified by:
handshake
in interfaceWebSocketProtocolIfc
- Returns:
- false - if implementation is not able to handshake using this version of protocol, in other case return true
- Throws:
NoSuchAlgorithmException
IOException
-
decodeFrame
Description copied from interface:WebSocketProtocolIfc
Method responsible for decoding data received from socket and returning data after extracting it from WebSocket frame.- Specified by:
decodeFrame
in interfaceWebSocketProtocolIfc
- Returns:
- decoded data or null if not full frame is available in input buffer
-
encodeFrameAndWrite
Description copied from interface:WebSocketProtocolIfc
Method encodes data into WebSocket frame and writes it to passed service- Specified by:
encodeFrameAndWrite
in interfaceWebSocketProtocolIfc
- Throws:
IOException
-
closeConnection
Description copied from interface:WebSocketProtocolIfc
Method closes connection by sending close frame- Specified by:
closeConnection
in interfaceWebSocketProtocolIfc
-