Package tigase.server.xmppclient

# Interface XMPPIOProcessor

All Known Implementing Classes:
  `RegistrationThrottlingProcessor`, `StreamErrorCounterIOProcessor`, `StreamManagementIOProcessor`

public interface XMPPIOProcessor

Author:
  andrzej

- ## Method Summary

  Modifier and Type
  Method
  Description
  `String`
  `getId()`
  Returns identifier of processor
  `void`
  `getStatistics(StatisticsList list)`
  Returns statistics generated by this processor
  `void`
  `packetsSent(XMPPIOService service)`
  Method is called when all waiting data was written to socket.
  `void`
  `processCommand(XMPPIOService service, Packet packet)`
  Process command execution which may be sent from other component and should be processed by processor
  `boolean`
  `processIncoming(XMPPIOService service, Packet packet)`
  Process packets read from socket as they are sent to SessionManager.
  `boolean`
  `processOutgoing(XMPPIOService service, Packet packet)`
  Process outgoing packets as they are added to XMPPIOService outgoing packets queue.
  `boolean`
  `serviceStopped(XMPPIOService service, boolean streamClosed)`
  Method called when XMPPIOService is closed.
  `void`
  `streamError(XMPPIOService service, StreamError streamError)`
  Method called when XMPP stream error is about to be sent
  `Element[]`
  `supStreamFeatures(XMPPIOService service)`
  Returns array of features added by this processor

- ## Method Details

  - ### getId

    String getId()
    Returns identifier of processor

  - ### getStatistics

    void getStatistics(StatisticsList list)
    Returns statistics generated by this processor

  - ### supStreamFeatures

    Element[] supStreamFeatures(XMPPIOService service)
    Returns array of features added by this processor

  - ### processIncoming

    boolean processIncoming(XMPPIOService service, Packet packet)
    Process packets read from socket as they are sent to SessionManager.
    Returns:
      true if packet should not be forwarded

  - ### processOutgoing

    boolean processOutgoing(XMPPIOService service, Packet packet)
    Process outgoing packets as they are added to XMPPIOService outgoing packets queue.
    Returns:
      true if packet should be removed

  - ### packetsSent

    void packetsSent(XMPPIOService service) throws IOException
    Method is called when all waiting data was written to socket.
    Throws:
      `IOException`

  - ### processCommand

    void processCommand(XMPPIOService service, Packet packet)
    Process command execution which may be sent from other component and should be processed by processor

  - ### serviceStopped

    boolean serviceStopped(XMPPIOService service, boolean streamClosed)
    Method called when XMPPIOService is closed.
    Returns:
      true if connecton manager should not be notified about stopping of this service

  - ### streamError

    void streamError(XMPPIOService service, StreamError streamError)
    Method called when XMPP stream error is about to be sent