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 enum
static 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, writeInProgress
Fields 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 void
addReceivedPacket
(Packet packet) MethodaddReceivedPacket
puts processing results to queue.void
dumpHeaders
(Map<String, String> headers) protected WebSocketXMPPIOService.State
getState()
protected WebSocketXMPPIOService.WebSocketXMPPSpec
protected int
parseHttpHeaders
(byte[] buf, Map<String, String> headers) protected String
protected void
protected char[]
readData()
protected void
void
stop()
protected void
writeBytes
(ByteBuffer data) protected void
Custom 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, xmppStreamOpened
Methods 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:
stop
in classXMPPIOService<RefObject>
-
dumpHeaders
-
getState
-
setState
-
addReceivedPacket
Description copied from class:XMPPIOService
MethodaddReceivedPacket
puts processing results to queue. The processing results are usually data (messages) which has been just received from socket.- Overrides:
addReceivedPacket
in classXMPPIOService<RefObject>
- Parameters:
packet
- aPacket
value of processing results.
-
processSocketData
- Overrides:
processSocketData
in classXMPPIOService<RefObject>
- Throws:
IOException
-
getWebSocketXMPPSpec
-
prepareStreamClose
- Overrides:
prepareStreamClose
in classXMPPIOService<RefObject>
-
readData
- Overrides:
readData
in classIOService<RefObject>
- Throws:
IOException
-
writeData
Custom implementation of writeData function which encodes data in WebSocket protocol frames -
parseHttpHeaders
-
writeBytes
- Overrides:
writeBytes
in classIOService<RefObject>
-