Interface FbWireAsynchronousChannel

All Known Implementing Classes:
V10AsynchronousChannel

public interface FbWireAsynchronousChannel
Interface for the asynchronous channel used for event notification.
Since:
3.0
Author:
Mark Rotteveel
  • Method Details

    • connect

      void connect(String hostName, int portNumber, int auxHandle) throws SQLException
      Connects the asynchronous channel to the specified port.
      Parameters:
      hostName - Hostname
      portNumber - The port number
      auxHandle - Handle identifier for this asynchronous channel
      Throws:
      SQLException - For errors connecting, or if the connection is already established
    • close

      void close() throws SQLException
      Disconnect the asynchronous channel.

      Once closed, the connection can be reestablished using connect(String, int, int).

      Calling close on a closed channel is a no-op; no exception should be thrown.

      Throws:
      SQLException - For errors closing the channel
    • isConnected

      boolean isConnected()
      Returns:
      true if connected, otherwise false
    • addChannelListener

      void addChannelListener(AsynchronousChannelListener listener)
      Register a listener for this channel.
      Parameters:
      listener - Listener
    • removeChannelListener

      void removeChannelListener(AsynchronousChannelListener listener)
      Remove a listener from this channel
      Parameters:
      listener - Listener
    • getSocketChannel

      SocketChannel getSocketChannel() throws SQLException
      Returns:
      The socket channel associated with this asynchronous channel
      Throws:
      SQLException - If not currently connected
    • getEventBuffer

      ByteBuffer getEventBuffer()
      Returns:
      The byte buffer for event data
    • processEventData

      void processEventData()
      Process the current event data in the buffer.

      This is only to be called by the AsynchronousProcessor. Implementations should be ready to deal with incomplete data in the event buffer (eg by not processing).

    • queueEvent

      void queueEvent(EventHandle eventHandle) throws SQLException
      Queues a wait for an event.
      Parameters:
      eventHandle - Event handle
      Throws:
      SQLException
    • cancelEvent

      void cancelEvent(EventHandle eventHandle) throws SQLException
      Cancels a registered event.
      Parameters:
      eventHandle - The event handle to cancel
      Throws:
      SQLException - For errors cancelling the event