Package tigase.xmpp
Class XMPPIOService<RefObject>
java.lang.Object
tigase.net.IOService<RefObject>
tigase.xmpp.XMPPIOService<RefObject>
- Type Parameters:
RefObject
- is a reference object stored by this service. This is e reference to higher level data object keeping more information about the connection.
- All Implemented Interfaces:
Callable<IOService<?>>
,TLSEventHandler
,IOListener
- Direct Known Subclasses:
BoshIOService
,C2SIOService
,ComponentIOService
,S2SIOService
,WebSocketXMPPIOService
Describe class XMPPIOService here.
Created: Tue Feb 7 07:15:02 2006
Created: Tue Feb 7 07:15:02 2006
- Author:
- Artur Hefczyc
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final String
static final String
static final String
static final String
Key name of the system property for configuration protection from system overload and DOS attack.static final String
protected SimpleParser
protected XMPPIOProcessor[]
static final String
protected XMPPIOServiceListener
static final String
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 TypeMethodDescriptionvoid
addPacketToSend
(Packet packet) MethodaddPacketToSend
adds new data which will be processed during next run.protected void
addReceivedPacket
(Packet packet) MethodaddReceivedPacket
puts processing results to queue.IOService<?>
call()
boolean
checkBufferLimit
(int bufferSize) boolean
checkData
(char[] data) void
Clears queue of packets waiting to send.void
long
This method returns the time when the last XMPP packet was received, it is used to help detect dead connections.long
getPacketsReceived
(boolean reset) long
getPacketsSent
(boolean reset) long
long
Deprecated.Returns queue with packets waiting to send.getXMLNS()
protected boolean
protected void
moveParsedPacketsToReceived
(boolean sendAck) protected String
protected void
void
protected int
void
setAckMode
(boolean white_char_ack, boolean xmpp_ack, boolean strict) void
setAuthorisedUserJid
(JID authorisedUserJid) void
setElementLimits
(int limit) void
setIOServiceListener
(XMPPIOServiceListener servList) void
setProcessors
(XMPPIOProcessor[] processors) void
setUserJid
(String jid) Deprecated.void
protected boolean
shouldCountPacket
(Packet packet) void
stop()
toString()
void
writeRawData
(String data) protected void
void
xmppStreamOpen
(String data) protected void
xmppStreamOpened
(Map<String, String> attribs) 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, getTlsUniqueId, getTotalBuffOverflow, getTotalBytesReceived, getTotalBytesSent, getUniqueId, getWriteCounters, handleMalformedInput, handshakeCompleted, isConnected, isInputBufferEmpty, isSocketServiceReady, readBytes, readCompleted, readData, setBufferLimit, setCertificateContainer, setConnectionId, setDataReceiver, setIOServiceListener, setRefObject, setSessionData, setSocketServiceReady, setSslContextContainer, setX509TrustManagers, startSSL, startTLS, startZLib, waitingToRead, waitingToSend, waitingToSendSize, writeBytes, writeData
-
Field Details
-
ACK_NAME
- See Also:
-
CROSS_DOMAIN_POLICY_FILE_PROP_KEY
- See Also:
-
CROSS_DOMAIN_POLICY_FILE_PROP_VAL
- See Also:
-
DOM_HANDLER
Key name of the system property for configuration protection from system overload and DOS attack.- See Also:
-
ID_ATT
- See Also:
-
REQ_NAME
- See Also:
-
STREAM_CLOSING
- See Also:
-
writeInProgress
-
parser
-
processors
-
serviceListener
-
-
Constructor Details
-
XMPPIOService
public XMPPIOService()Creates a newXMPPIOService
instance.
-
-
Method Details
-
addPacketToSend
MethodaddPacketToSend
adds new data which will be processed during next run. Data are kept in proper order like in FIFO queue.- Parameters:
packet
- aPacket
value of data to process.
-
call
-
checkBufferLimit
public boolean checkBufferLimit(int bufferSize) - Specified by:
checkBufferLimit
in interfaceIOListener
- Overrides:
checkBufferLimit
in classIOService<RefObject>
-
checkData
- Throws:
IOException
-
clearWaitingPackets
public void clearWaitingPackets()Clears queue of packets waiting to send. In case of connection close this packets may be sent to offline store but some processors may want stop this from happening - for that they may use this method -
getWaitingPackets
Returns queue with packets waiting to send. For use by ConnectionManager which may need to get undelivered packets -
forceStop
public void forceStop() -
processWaitingPackets
- Specified by:
processWaitingPackets
in classIOService<RefObject>
- Throws:
IOException
-
stop
public void stop() -
toString
-
writeRawData
- Throws:
IOException
-
xmppStreamOpen
-
getPacketsReceived
public long getPacketsReceived(boolean reset) -
getPacketsSent
public long getPacketsSent(boolean reset) -
getReceivedPackets
-
getTotalPacketsReceived
public long getTotalPacketsReceived() -
getTotalPacketsSent
public long getTotalPacketsSent() -
getAuthorisedUserJid
-
setAuthorisedUserJid
-
getUserJid
Deprecated. -
setUserJid
Deprecated. -
getWaitingForAct
-
getXMLNS
-
setXMLNS
-
setAckMode
public void setAckMode(boolean white_char_ack, boolean xmpp_ack, boolean strict) -
setElementLimits
public void setElementLimits(int limit) -
setIOServiceListener
-
setProcessors
-
getLastXmppPacketReceiveTime
public long getLastXmppPacketReceiveTime()This method returns the time when the last XMPP packet was received, it is used to help detect dead connections.- Returns:
long
number denoting time when the last XMPP packet was received.
-
addReceivedPacket
MethodaddReceivedPacket
puts processing results to queue. The processing results are usually data (messages) which has been just received from socket.- Parameters:
packet
- aPacket
value of processing results.
-
shouldCountPacket
-
prepareStreamClose
-
processSocketData
- Specified by:
processSocketData
in classIOService<RefObject>
- Throws:
IOException
-
receivedPackets
protected int receivedPackets()- Specified by:
receivedPackets
in classIOService<RefObject>
-
xmppStreamClosed
protected void xmppStreamClosed() -
xmppStreamOpened
-
hasParsedElements
protected boolean hasParsedElements() -
moveParsedPacketsToReceived
protected void moveParsedPacketsToReceived(boolean sendAck)
-