Package tigase.server.websocket
Class WebSocketXMPPIOService<RefObject>
java.lang.Object
tigase.net.IOService<RefObject>
tigase.xmpp.XMPPIOService<RefObject>
tigase.server.websocket.WebSocketXMPPIOService<RefObject>
- All Implemented Interfaces:
Callable<IOService<?>>,TLSEventHandler,IOListener
Class implements basic support for WebSocket protocol. It extends XMPPIOService so it can be used instead of
XMPPIOService in ClientConnectionManager to allow web clients to connect to it without using BOSH extension.
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic enumstatic enum -
Field Summary
FieldsFields inherited from class tigase.xmpp.XMPPIOService
ACK_NAME, CROSS_DOMAIN_POLICY_FILE_PROP_KEY, CROSS_DOMAIN_POLICY_FILE_PROP_VAL, DOM_HANDLER, ID_ATT, parser, processors, REQ_NAME, serviceListener, STREAM_CLOSING, writeInProgressFields inherited from class tigase.net.IOService
cb, CERT_CHECK_RESULT, CERT_REQUIRED_DOMAIN, decoder, encoder, HOSTNAME_KEY, LOCAL_CERT_CHECK_RESULT, partialCharacterBytes, PORT_TYPE_PROP_KEY, SESSION_ID_KEY, SSL_PROTOCOLS_KEY -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected voidaddReceivedPacket(Packet packet) MethodaddReceivedPacketputs processing results to queue.voiddumpHeaders(Map<String, String> headers) protected WebSocketXMPPIOService.StategetState()protected WebSocketXMPPIOService.WebSocketXMPPSpecprotected intparseHttpHeaders(byte[] buf, Map<String, String> headers) protected Stringprotected voidprotected char[]readData()protected voidvoidstop()protected voidwriteBytes(ByteBuffer data) protected voidCustom implementation of writeData function which encodes data in WebSocket protocol framesMethods inherited from class tigase.xmpp.XMPPIOService
addPacketToSend, call, checkBufferLimit, checkData, clearWaitingPackets, forceStop, getAuthorisedUserJid, getLastXmppPacketReceiveTime, getPacketsReceived, getPacketsSent, getReceivedPackets, getTotalPacketsReceived, getTotalPacketsSent, getUserJid, getWaitingForAct, getWaitingPackets, getXMLNS, hasParsedElements, moveParsedPacketsToReceived, processWaitingPackets, receivedPackets, setAckMode, setAuthorisedUserJid, setElementLimits, setIOServiceListener, setProcessors, setUserJid, setXMLNS, shouldCountPacket, toString, writeRawData, xmppStreamClosed, xmppStreamOpen, xmppStreamOpenedMethods inherited from class tigase.net.IOService
accept, accept, byteOrder, connectionType, debug, debug, getBuffOverflow, getBytesReceived, getBytesSent, getCertificateContainer, getConnectionId, getDataReceiver, getIO, getLastTransferTime, getLocalAddress, getLocalCertificate, getLocalPort, getPeerCertificate, getReadCounters, getRefObject, getRemoteAddress, getSessionData, getSocketChannel, getSocketInputSize, getStatistics, getTlsExporter, getTlsUniqueId, getTotalBuffOverflow, getTotalBytesReceived, getTotalBytesSent, getUniqueId, getWriteCounters, handleMalformedInput, handshakeCompleted, isConnected, isInputBufferEmpty, isSocketServiceReady, readBytes, readCompleted, setBufferLimit, setCertificateContainer, setConnectionId, setDataReceiver, setIOServiceListener, setRefObject, setSessionData, setSocketServiceReady, setSslContextContainer, setX509TrustManagers, startSSL, startTLS, startZLib, waitingToRead, waitingToSend, waitingToSendSize
-
Field Details
-
frameLength
protected long frameLength -
maskingKey
protected byte[] maskingKey
-
-
Constructor Details
-
WebSocketXMPPIOService
-
-
Method Details
-
stop
public void stop()- Overrides:
stopin classXMPPIOService<RefObject>
-
dumpHeaders
-
getState
-
setState
-
addReceivedPacket
Description copied from class:XMPPIOServiceMethodaddReceivedPacketputs processing results to queue. The processing results are usually data (messages) which has been just received from socket.- Overrides:
addReceivedPacketin classXMPPIOService<RefObject>- Parameters:
packet- aPacketvalue of processing results.
-
processSocketData
- Overrides:
processSocketDatain classXMPPIOService<RefObject>- Throws:
IOException
-
getWebSocketXMPPSpec
-
prepareStreamClose
- Overrides:
prepareStreamClosein classXMPPIOService<RefObject>
-
readData
- Overrides:
readDatain classIOService<RefObject>- Throws:
IOException
-
writeData
Custom implementation of writeData function which encodes data in WebSocket protocol frames -
parseHttpHeaders
-
writeBytes
- Overrides:
writeBytesin classIOService<RefObject>
-