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

public class XMPPIOService<RefObject> extends IOService<RefObject>
Describe class XMPPIOService here.
Created: Tue Feb 7 07:15:02 2006
Author:
Artur Hefczyc
  • Field Details

  • Constructor Details

    • XMPPIOService

      public XMPPIOService()
      Creates a new XMPPIOService instance.
  • Method Details

    • addPacketToSend

      public void addPacketToSend(Packet packet)
      Method addPacketToSend adds new data which will be processed during next run. Data are kept in proper order like in FIFO queue.
      Parameters:
      packet - a Packet value of data to process.
    • call

      public IOService<?> call() throws IOException
      Specified by:
      call in interface Callable<RefObject>
      Overrides:
      call in class IOService<RefObject>
      Throws:
      IOException
    • checkBufferLimit

      public boolean checkBufferLimit(int bufferSize)
      Specified by:
      checkBufferLimit in interface IOListener
      Overrides:
      checkBufferLimit in class IOService<RefObject>
    • checkData

      public boolean checkData(char[] data) throws IOException
      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

      public Queue<Packet> getWaitingPackets()
      Returns queue with packets waiting to send. For use by ConnectionManager which may need to get undelivered packets
    • forceStop

      public void forceStop()
      Overrides:
      forceStop in class IOService<RefObject>
    • processWaitingPackets

      public void processWaitingPackets() throws IOException
      Specified by:
      processWaitingPackets in class IOService<RefObject>
      Throws:
      IOException
    • stop

      public void stop()
      Overrides:
      stop in class IOService<RefObject>
    • toString

      public String toString()
      Overrides:
      toString in class IOService<RefObject>
    • writeRawData

      public void writeRawData(String data) throws IOException
      Throws:
      IOException
    • xmppStreamOpen

      public void xmppStreamOpen(String data)
    • getPacketsReceived

      public long getPacketsReceived(boolean reset)
    • getPacketsSent

      public long getPacketsSent(boolean reset)
    • getReceivedPackets

      public Queue<Packet> getReceivedPackets()
    • getTotalPacketsReceived

      public long getTotalPacketsReceived()
    • getTotalPacketsSent

      public long getTotalPacketsSent()
    • getAuthorisedUserJid

      public Optional<JID> getAuthorisedUserJid()
    • setAuthorisedUserJid

      public void setAuthorisedUserJid(JID authorisedUserJid)
    • getUserJid

      @Deprecated public String getUserJid()
      Deprecated.
    • setUserJid

      @Deprecated public void setUserJid(String jid)
      Deprecated.
    • getWaitingForAct

      public Map<String,Packet> getWaitingForAct()
    • getXMLNS

      public String getXMLNS()
    • setXMLNS

      public void setXMLNS(String xmlns)
    • setAckMode

      public void setAckMode(boolean white_char_ack, boolean xmpp_ack, boolean strict)
    • setElementLimits

      public void setElementLimits(int limit)
    • setIOServiceListener

      public void setIOServiceListener(XMPPIOServiceListener servList)
    • setProcessors

      public void setProcessors(XMPPIOProcessor[] processors)
    • 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

      protected void addReceivedPacket(Packet packet)
      Method addReceivedPacket puts processing results to queue. The processing results are usually data (messages) which has been just received from socket.
      Parameters:
      packet - a Packet value of processing results.
    • shouldCountPacket

      protected boolean shouldCountPacket(Packet packet)
    • prepareStreamClose

      protected String prepareStreamClose()
    • processSocketData

      protected void processSocketData() throws IOException
      Specified by:
      processSocketData in class IOService<RefObject>
      Throws:
      IOException
    • receivedPackets

      protected int receivedPackets()
      Specified by:
      receivedPackets in class IOService<RefObject>
    • xmppStreamClosed

      protected void xmppStreamClosed()
    • xmppStreamOpened

      protected void xmppStreamOpened(Map<String,String> attribs)
    • hasParsedElements

      protected boolean hasParsedElements()
    • moveParsedPacketsToReceived

      protected void moveParsedPacketsToReceived(boolean sendAck)