Interface SessionRequest

All Known Implementing Classes:
SessionRequestImpl

public interface SessionRequest
SessionRequest interface represents a request to establish a new connection (or session) to a remote host. It can be used to monitor the status of the request, to block waiting for its completion, or to cancel the request.

Implementations of this interface are expected to be threading safe.

Since:
4.0
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    Cancels the request.
    Returns attachment object will be added to the session's context upon initialization.
    int
    Returns connect timeout value in milliseconds.
    Returns IOException instance if the request could not be successfully executed due to an I/O error or null if no error occurred to this point.
    Returns local socket address.
    Returns socket address of the remote host.
    Returns IOSession instance created as a result of this request or null if the request is still pending.
    boolean
    Determines whether the request has been completed (either successfully or unsuccessfully).
    void
    setConnectTimeout(int timeout)
    Sets connect timeout value in milliseconds.
    void
    Waits for completion of this session request.
  • Method Details

    • getRemoteAddress

      SocketAddress getRemoteAddress()
      Returns socket address of the remote host.
      Returns:
      socket address of the remote host
    • getLocalAddress

      SocketAddress getLocalAddress()
      Returns local socket address.
      Returns:
      local socket address.
    • getAttachment

      Object getAttachment()
      Returns attachment object will be added to the session's context upon initialization. This object can be used to pass an initial processing state to the protocol handler.
      Returns:
      attachment object.
    • isCompleted

      boolean isCompleted()
      Determines whether the request has been completed (either successfully or unsuccessfully).
      Returns:
      true if the request has been completed, false if still pending.
    • getSession

      IOSession getSession()
      Returns IOSession instance created as a result of this request or null if the request is still pending.
      Returns:
      I/O session or null if the request is still pending.
    • getException

      IOException getException()
      Returns IOException instance if the request could not be successfully executed due to an I/O error or null if no error occurred to this point.
      Returns:
      I/O exception or null if no error occurred to this point.
    • waitFor

      void waitFor() throws InterruptedException
      Waits for completion of this session request.
      Throws:
      InterruptedException - in case the execution process was interrupted.
    • setConnectTimeout

      void setConnectTimeout(int timeout)
      Sets connect timeout value in milliseconds.
      Parameters:
      timeout - connect timeout value in milliseconds.
    • getConnectTimeout

      int getConnectTimeout()
      Returns connect timeout value in milliseconds.
      Returns:
      connect timeout value in milliseconds.
    • cancel

      void cancel()
      Cancels the request. Invocation of this method will set the status of the request to completed and will unblock threads blocked in the {waitFor()} method.