Class JsrSession

  • All Implemented Interfaces:
    java.io.Closeable, java.lang.AutoCloseable, javax.websocket.Session, org.eclipse.jetty.io.Connection.Listener, org.eclipse.jetty.util.component.Container, org.eclipse.jetty.util.component.Destroyable, org.eclipse.jetty.util.component.Dumpable, org.eclipse.jetty.util.component.Dumpable.DumpableContainer, org.eclipse.jetty.util.component.LifeCycle, IncomingFrames, OutgoingFrames, Session, RemoteEndpointFactory, WebSocketSessionScope, Configurable

    public class JsrSession
    extends WebSocketSession
    implements javax.websocket.Session, Configurable
    Session for the JSR.
    • Field Detail

      • LOG

        private static final org.eclipse.jetty.util.log.Logger LOG
      • id

        private final java.lang.String id
      • config

        private final javax.websocket.EndpointConfig config
      • messageHandlerFactory

        private final MessageHandlerFactory messageHandlerFactory
        Factory for MessageHandlers
      • wrappers

        private final MessageHandlerWrapper[] wrappers
        Array of MessageHandlerWrappers, indexed by Enum.ordinal()
      • messageHandlerSet

        private java.util.Set<javax.websocket.MessageHandler> messageHandlerSet
      • negotiatedExtensions

        private java.util.List<javax.websocket.Extension> negotiatedExtensions
      • pathParameters

        private java.util.Map<java.lang.String,​java.lang.String> pathParameters
    • Method Detail

      • addMessageHandler

        public void addMessageHandler​(javax.websocket.MessageHandler handler)
                               throws java.lang.IllegalStateException
        Specified by:
        addMessageHandler in interface javax.websocket.Session
        Throws:
        java.lang.IllegalStateException
      • close

        public void close​(javax.websocket.CloseReason closeReason)
                   throws java.io.IOException
        Specified by:
        close in interface javax.websocket.Session
        Throws:
        java.io.IOException
      • getAsyncRemote

        public javax.websocket.RemoteEndpoint.Async getAsyncRemote()
        Specified by:
        getAsyncRemote in interface javax.websocket.Session
      • getBasicRemote

        public javax.websocket.RemoteEndpoint.Basic getBasicRemote()
        Specified by:
        getBasicRemote in interface javax.websocket.Session
      • getContainer

        public javax.websocket.WebSocketContainer getContainer()
        Specified by:
        getContainer in interface javax.websocket.Session
      • getEndpointConfig

        public javax.websocket.EndpointConfig getEndpointConfig()
      • getId

        public java.lang.String getId()
        Specified by:
        getId in interface javax.websocket.Session
      • getMaxBinaryMessageBufferSize

        public int getMaxBinaryMessageBufferSize()
        Specified by:
        getMaxBinaryMessageBufferSize in interface javax.websocket.Session
      • getMaxIdleTimeout

        public long getMaxIdleTimeout()
        Specified by:
        getMaxIdleTimeout in interface javax.websocket.Session
      • getMaxTextMessageBufferSize

        public int getMaxTextMessageBufferSize()
        Specified by:
        getMaxTextMessageBufferSize in interface javax.websocket.Session
      • getMessageHandlers

        public java.util.Set<javax.websocket.MessageHandler> getMessageHandlers()
        Specified by:
        getMessageHandlers in interface javax.websocket.Session
      • getNegotiatedExtensions

        public java.util.List<javax.websocket.Extension> getNegotiatedExtensions()
        Specified by:
        getNegotiatedExtensions in interface javax.websocket.Session
      • getNegotiatedSubprotocol

        public java.lang.String getNegotiatedSubprotocol()
        Specified by:
        getNegotiatedSubprotocol in interface javax.websocket.Session
      • getOpenSessions

        public java.util.Set<javax.websocket.Session> getOpenSessions()
        Specified by:
        getOpenSessions in interface javax.websocket.Session
      • getPathParameters

        public java.util.Map<java.lang.String,​java.lang.String> getPathParameters()
        Specified by:
        getPathParameters in interface javax.websocket.Session
      • getQueryString

        public java.lang.String getQueryString()
        Specified by:
        getQueryString in interface javax.websocket.Session
      • getRequestParameterMap

        public java.util.Map<java.lang.String,​java.util.List<java.lang.String>> getRequestParameterMap()
        Specified by:
        getRequestParameterMap in interface javax.websocket.Session
      • getUserPrincipal

        public java.security.Principal getUserPrincipal()
        Specified by:
        getUserPrincipal in interface javax.websocket.Session
      • getUserProperties

        public java.util.Map<java.lang.String,​java.lang.Object> getUserProperties()
        Specified by:
        getUserProperties in interface javax.websocket.Session
      • init

        public void init​(javax.websocket.EndpointConfig config)
        Specified by:
        init in interface Configurable
      • destroy

        public void destroy()
        Specified by:
        destroy in interface Configurable
        Specified by:
        destroy in interface org.eclipse.jetty.util.component.Destroyable
        Overrides:
        destroy in class org.eclipse.jetty.util.component.ContainerLifeCycle
      • removeMessageHandler

        public void removeMessageHandler​(javax.websocket.MessageHandler handler)
        Specified by:
        removeMessageHandler in interface javax.websocket.Session
      • setMaxBinaryMessageBufferSize

        public void setMaxBinaryMessageBufferSize​(int length)
        Specified by:
        setMaxBinaryMessageBufferSize in interface javax.websocket.Session
      • setMaxIdleTimeout

        public void setMaxIdleTimeout​(long milliseconds)
        Specified by:
        setMaxIdleTimeout in interface javax.websocket.Session
      • setMaxTextMessageBufferSize

        public void setMaxTextMessageBufferSize​(int length)
        Specified by:
        setMaxTextMessageBufferSize in interface javax.websocket.Session
      • setPathParameters

        public void setPathParameters​(java.util.Map<java.lang.String,​java.lang.String> pathParams)
      • updateMessageHandlerSet

        private void updateMessageHandlerSet()