Class WebSocketSession

    • Method Detail

      • close

        public void close​(java.lang.Throwable cause)
        Close the active session based on the throwable
        Parameters:
        cause - the cause for closing the connection
      • close

        public void close()
        Description copied from interface: Session
        Request a close of the current conversation with a normal status code and no reason phrase.

        This will enqueue a graceful close to the remote endpoint.

        Specified by:
        close in interface java.lang.AutoCloseable
        Specified by:
        close in interface java.io.Closeable
        Specified by:
        close in interface Session
        See Also:
        Session.close(CloseStatus), Session.close(int, String), Session.disconnect()
      • close

        public void close​(CloseStatus closeStatus)
        Description copied from interface: Session
        Request Close the current conversation, giving a reason for the closure. Note the websocket spec defines the acceptable uses of status codes and reason phrases.

        This will enqueue a graceful close to the remote endpoint.

        Specified by:
        close in interface Session
        Parameters:
        closeStatus - the reason for the closure
        See Also:
        Session.close(), Session.close(int, String), Session.disconnect()
      • close

        public void close​(int statusCode,
                          java.lang.String reason)
        Description copied from interface: Session
        Send a websocket Close frame, with status code.

        This will enqueue a graceful close to the remote endpoint.

        Specified by:
        close in interface Session
        Parameters:
        statusCode - the status code
        reason - the (optional) reason. (can be null for no reason)
        See Also:
        StatusCode, Session.close(), Session.close(CloseStatus), Session.disconnect()
      • dispatch

        public void dispatch​(java.lang.Runnable runnable)
      • dumpSelf

        public java.lang.String dumpSelf()
        Description copied from interface: Dumpable
        The description of this/self found in the dump. Allows for alternative representation of Object other then .toString() where the long form output of toString() is represented in a cleaner way within the dump infrastructure.
        Specified by:
        dumpSelf in interface Dumpable
        Returns:
        the representation of self
      • getClassLoader

        public java.lang.ClassLoader getClassLoader()
      • getIdleTimeout

        public long getIdleTimeout()
        The idle timeout in milliseconds
        Specified by:
        getIdleTimeout in interface Session
        Returns:
        the timeout in milliseconds.
      • getLocalAddress

        public java.net.InetSocketAddress getLocalAddress()
        Description copied from interface: Session
        Get the address of the local side.
        Specified by:
        getLocalAddress in interface Session
        Returns:
        the local side address
      • getProtocolVersion

        public java.lang.String getProtocolVersion()
        Description copied from interface: Session
        Returns the version of the websocket protocol currently being used. This is taken as the value of the Sec-WebSocket-Version header used in the opening handshake. i.e. "13".
        Specified by:
        getProtocolVersion in interface Session
        Returns:
        the protocol version
      • getRemote

        public RemoteEndpoint getRemote()
        Description copied from interface: Session
        Return a reference to the RemoteEndpoint object representing the other end of this conversation.
        Specified by:
        getRemote in interface Session
        Returns:
        the remote endpoint
      • getRemoteAddress

        public java.net.InetSocketAddress getRemoteAddress()
        Description copied from interface: Session
        Get the address of the remote side.
        Specified by:
        getRemoteAddress in interface Session
        Returns:
        the remote side address
      • getRequestURI

        public java.net.URI getRequestURI()
      • getUpgradeRequest

        public UpgradeRequest getUpgradeRequest()
        Description copied from interface: Session
        Get the UpgradeRequest used to create this session
        Specified by:
        getUpgradeRequest in interface Session
        Returns:
        the UpgradeRequest used to create this session
      • getUpgradeResponse

        public UpgradeResponse getUpgradeResponse()
        Description copied from interface: Session
        Get the UpgradeResponse used to create this session
        Specified by:
        getUpgradeResponse in interface Session
        Returns:
        the UpgradeResponse used to create this session
      • incomingFrame

        public void incomingFrame​(Frame frame)
        Incoming Raw Frames from Parser
        Specified by:
        incomingFrame in interface IncomingFrames
        Parameters:
        frame - the frame to process
      • outgoingFrame

        public void outgoingFrame​(Frame frame,
                                  WriteCallback callback,
                                  BatchMode batchMode)
        Description copied from interface: OutgoingFrames
        A frame, and optional callback, intended for the network layer.

        Note: the frame can undergo many transformations in the various layers and extensions present in the implementation.

        If you are implementing a mutation, you are obliged to handle the incoming WriteCallback appropriately.

        Specified by:
        outgoingFrame in interface OutgoingFrames
        Parameters:
        frame - the frame to eventually write to the network layer.
        callback - the callback to notify when the frame is written.
        batchMode - the batch mode requested by the sender.
      • isOpen

        public boolean isOpen()
        Description copied from interface: Session
        Return true if and only if the underlying socket is open.
        Specified by:
        isOpen in interface Session
        Returns:
        whether the session is open
      • isSecure

        public boolean isSecure()
        Description copied from interface: Session
        Return true if and only if the underlying socket is using a secure transport.
        Specified by:
        isSecure in interface Session
        Returns:
        whether its using a secure transport
      • callApplicationOnClose

        public void callApplicationOnClose​(CloseInfo closeInfo)
      • callApplicationOnError

        public void callApplicationOnError​(java.lang.Throwable cause)
      • onClosed

        public void onClosed​(Connection connection)
        Jetty Connection onSessionClosed event
        Specified by:
        onClosed in interface Connection.Listener
        Parameters:
        connection - the connection that was closed
      • onOpened

        public void onOpened​(Connection connection)
        Jetty Connection onOpen event
        Specified by:
        onOpened in interface Connection.Listener
        Parameters:
        connection - the connection that was opened
      • open

        public void open()
        Open/Activate the session
      • setExtensionFactory

        public void setExtensionFactory​(ExtensionFactory extensionFactory)
      • setFuture

        public void setFuture​(java.util.concurrent.CompletableFuture<Session> fut)
      • setIdleTimeout

        public void setIdleTimeout​(long ms)
        Set the timeout in milliseconds
        Specified by:
        setIdleTimeout in interface Session
        Parameters:
        ms - the number of milliseconds.
      • setOutgoingHandler

        public void setOutgoingHandler​(OutgoingFrames outgoing)
      • setPolicy

        @Deprecated
        public void setPolicy​(WebSocketPolicy policy)
        Deprecated.
      • setUpgradeRequest

        public void setUpgradeRequest​(UpgradeRequest request)
      • setUpgradeResponse

        public void setUpgradeResponse​(UpgradeResponse response)
      • suspend

        public SuspendToken suspend()
        Description copied from interface: Session
        Suspend the incoming read events on the connection.
        Specified by:
        suspend in interface Session
        Returns:
        the suspend token suitable for resuming the reading of data on the connection.
      • getBatchMode

        public BatchMode getBatchMode()
        Returns:
        the default (initial) value for the batching mode.