Interface LogicalConnection

    • Method Detail

      • close

        void close()
        Send a websocket Close frame, without a status code or reason.

        Basic usage: results in an non-blocking async write, then connection close.

        See Also:
        StatusCode, close(int, String)
      • close

        void close​(int statusCode,
                   String reason)
        Send a websocket Close frame, with status code.

        Advanced usage: results in an non-blocking async write, then connection close.

        Parameters:
        statusCode - the status code
        reason - the (optional) reason. (can be null for no reason)
        See Also:
        StatusCode
      • disconnect

        void disconnect()
        Terminate the connection (no close frame sent)
      • getBufferPool

        ByteBufferPool getBufferPool()
        Get the ByteBufferPool in use by the connection
        Returns:
        the buffer pool
      • getExecutor

        Executor getExecutor()
        Get the Executor used by this connection.
        Returns:
        the executor
      • getIdleTimeout

        long getIdleTimeout()
        Get the read/write idle timeout.
        Returns:
        the idle timeout in milliseconds
      • getIOState

        IOState getIOState()
        Get the IOState of the connection.
        Returns:
        the IOState of the connection.
      • getLocalAddress

        InetSocketAddress getLocalAddress()
        Get the local InetSocketAddress in use for this connection.

        Note: Non-physical connections, like during the Mux extensions, or during unit testing can result in a InetSocketAddress on port 0 and/or on localhost.

        Returns:
        the local address.
      • getMaxIdleTimeout

        long getMaxIdleTimeout()
        Set the maximum number of milliseconds of idleness before the connection is closed/disconnected, (ie no frames are either sent or received)
        Returns:
        the idle timeout in milliseconds
      • getPolicy

        WebSocketPolicy getPolicy()
        The policy that the connection is running under.
        Returns:
        the policy for the connection
      • getRemoteAddress

        InetSocketAddress getRemoteAddress()
        Get the remote Address in use for this connection.

        Note: Non-physical connections, like during the Mux extensions, or during unit testing can result in a InetSocketAddress on port 0 and/or on localhost.

        Returns:
        the remote address.
      • isOpen

        boolean isOpen()
        Test if logical connection is still open
        Returns:
        true if connection is open
      • isReading

        boolean isReading()
        Tests if the connection is actively reading.
        Returns:
        true if connection is actively attempting to read.
      • setMaxIdleTimeout

        void setMaxIdleTimeout​(long ms)
        Set the maximum number of milliseconds of idleness before the connection is closed/disconnected, (ie no frames are either sent or received)

        This idle timeout cannot be garunteed to take immediate effect for any active read/write actions. New read/write actions will have this new idle timeout.

        Parameters:
        ms - the number of milliseconds of idle timeout
      • setNextIncomingFrames

        void setNextIncomingFrames​(IncomingFrames incoming)
        Set where the connection should send the incoming frames to.

        Often this is from the Parser to the start of the extension stack, and eventually on to the session.

        Parameters:
        incoming - the incoming frames handler
      • suspend

        SuspendToken suspend()
        Suspend a the incoming read events on the connection.
        Returns:
        the suspend token
      • getId

        String getId()
        Get Unique ID for the Connection
        Returns:
        the unique ID for the connection