Package tigase.server.xmppclient

## Class C2SIOService<RefObject>

- java.lang.Object
- - tigase.net.IOService<RefObject>
  - - tigase.xmpp.XMPPIOService<RefObject>
    - - tigase.server.xmppclient.C2SIOService<RefObject>

- All Implemented Interfaces:
    `java.util.concurrent.Callable<IOService<?>>`, `TLSEventHandler`, `IOListener`

      public class C2SIOService<RefObject>
      extends XMPPIOService<RefObject>

- - ### Field Summary

    - ### Fields 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
    Constructor | Description
    --- | ---
    `C2SIOService()` |

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `protected void` | `addReceivedPacket​(Packet packet)` | Method `addReceivedPacket` puts processing results to queue.
    `protected boolean` | `handleMalformedInput​(java.nio.ByteBuffer buffer, java.nio.CharBuffer cb)` |
    `boolean` | `isWaitingForResponse()` |
    `void` | `processWaitingPackets()` |
    `void` | `queueTask​(java.lang.Runnable run)` |
    `boolean` | `shouldQueueStreamOpened()` |
    `void` | `startTLS​(boolean clientMode, boolean wantClientAuth, boolean needClientAuth)` |
    `void` | `waitForResponse()` |
    `boolean` | `waitingToRead()` |

    - ### Methods 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, prepareStreamClose, processSocketData, receivedPackets, setAckMode, setAuthorisedUserJid, setElementLimits, setIOServiceListener, setProcessors, setUserJid, setXMLNS, shouldCountPacket, stop, toString, writeRawData, xmppStreamClosed, xmppStreamOpen, xmppStreamOpened`

    - ### Methods inherited from class tigase.net.IOService

      `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, handshakeCompleted, isConnected, isInputBufferEmpty, isSocketServiceReady, readBytes, readCompleted, readData, setBufferLimit, setCertificateContainer, setConnectionId, setDataReceiver, setIOServiceListener, setRefObject, setSessionData, setSocketServiceReady, setSslContextContainer, setX509TrustManagers, startSSL, startZLib, waitingToSend, waitingToSendSize, writeBytes, writeData`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

- - ### Constructor Detail

    - #### C2SIOService

          public C2SIOService()

  - ### Method Detail

    - #### addReceivedPacket

          protected void addReceivedPacket​(Packet packet)

      Description copied from class: `XMPPIOService`
      Method `addReceivedPacket` puts processing results to queue. The processing results are usually data (messages) which has been just received from socket.
      Overrides:
        `addReceivedPacket` in class `XMPPIOService<RefObject>`
      Parameters:
        `packet` - a `Packet` value of processing results.

    - #### waitingToRead

          public boolean waitingToRead()

      Overrides:
        `waitingToRead` in class `IOService<RefObject>`

    - #### processWaitingPackets

          public void processWaitingPackets()
                                     throws java.io.IOException

      Overrides:
        `processWaitingPackets` in class `XMPPIOService<RefObject>`
      Throws:
        `java.io.IOException`

    - #### waitForResponse

          public void waitForResponse()

    - #### isWaitingForResponse

          public boolean isWaitingForResponse()

    - #### queueTask

          public void queueTask​(java.lang.Runnable run)

    - #### shouldQueueStreamOpened

          public boolean shouldQueueStreamOpened()

    - #### handleMalformedInput

          protected boolean handleMalformedInput​(java.nio.ByteBuffer buffer,
                                                 java.nio.CharBuffer cb)

      Overrides:
        `handleMalformedInput` in class `IOService<RefObject>`

    - #### startTLS

          public void startTLS​(boolean clientMode,
                               boolean wantClientAuth,
                               boolean needClientAuth)
                        throws java.io.IOException

      Overrides:
        `startTLS` in class `IOService<RefObject>`
      Throws:
        `java.io.IOException`