Class ServerContainer

java.lang.Object
org.eclipse.jetty.util.component.AbstractLifeCycle
org.eclipse.jetty.util.component.ContainerLifeCycle
org.eclipse.jetty.websocket.jsr356.ClientContainer
org.eclipse.jetty.websocket.jsr356.server.ServerContainer
All Implemented Interfaces:
javax.websocket.server.ServerContainer, javax.websocket.WebSocketContainer, 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, WebSocketContainerScope

@ManagedObject("JSR356 Server Container") public class ServerContainer extends ClientContainer implements javax.websocket.server.ServerContainer
  • Field Details

    • LOG

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

      public static final String PATH_PARAM_ATTRIBUTE
      See Also:
    • configuration

      private final NativeWebSocketConfiguration configuration
    • deferredEndpointClasses

      private List<Class<?>> deferredEndpointClasses
    • deferredEndpointConfigs

      private List<javax.websocket.server.ServerEndpointConfig> deferredEndpointConfigs
  • Constructor Details

  • Method Details

    • getWebSocketContainer

      public static javax.websocket.WebSocketContainer getWebSocketContainer()
      Get the WebSocketContainer out of the current ThreadLocal reference of the active ContextHandler.
      Returns:
      the WebSocketContainer if found, null if not found.
    • newClientEndpointInstance

      public EndpointInstance newClientEndpointInstance(Object endpoint, javax.websocket.server.ServerEndpointConfig config, String path)
    • validateEndpointConfig

      private void validateEndpointConfig(javax.websocket.server.ServerEndpointConfig config) throws javax.websocket.DeploymentException
      Throws:
      javax.websocket.DeploymentException
    • addEndpoint

      public void addEndpoint(Class<?> endpointClass) throws javax.websocket.DeploymentException
      Specified by:
      addEndpoint in interface javax.websocket.server.ServerContainer
      Throws:
      javax.websocket.DeploymentException
    • addEndpoint

      private void addEndpoint(ServerEndpointMetadata metadata)
    • addEndpoint

      public void addEndpoint(javax.websocket.server.ServerEndpointConfig config) throws javax.websocket.DeploymentException
      Specified by:
      addEndpoint in interface javax.websocket.server.ServerContainer
      Throws:
      javax.websocket.DeploymentException
    • doStart

      protected void doStart() throws Exception
      Overrides:
      doStart in class ClientContainer
      Throws:
      Exception
    • getServerEndpointMetadata

      public ServerEndpointMetadata getServerEndpointMetadata(Class<?> endpoint, javax.websocket.server.ServerEndpointConfig config) throws javax.websocket.DeploymentException
      Throws:
      javax.websocket.DeploymentException
    • getDefaultAsyncSendTimeout

      public long getDefaultAsyncSendTimeout()
      Specified by:
      getDefaultAsyncSendTimeout in interface javax.websocket.WebSocketContainer
      Overrides:
      getDefaultAsyncSendTimeout in class ClientContainer
    • getDefaultMaxBinaryMessageBufferSize

      public int getDefaultMaxBinaryMessageBufferSize()
      Specified by:
      getDefaultMaxBinaryMessageBufferSize in interface javax.websocket.WebSocketContainer
      Overrides:
      getDefaultMaxBinaryMessageBufferSize in class ClientContainer
    • getDefaultMaxSessionIdleTimeout

      public long getDefaultMaxSessionIdleTimeout()
      Specified by:
      getDefaultMaxSessionIdleTimeout in interface javax.websocket.WebSocketContainer
      Overrides:
      getDefaultMaxSessionIdleTimeout in class ClientContainer
    • getDefaultMaxTextMessageBufferSize

      public int getDefaultMaxTextMessageBufferSize()
      Specified by:
      getDefaultMaxTextMessageBufferSize in interface javax.websocket.WebSocketContainer
      Overrides:
      getDefaultMaxTextMessageBufferSize in class ClientContainer
    • getWebSocketServerFactory

      public WebSocketServerFactory getWebSocketServerFactory()
    • upgradeHttpToWebSocket

      public void upgradeHttpToWebSocket(Object httpServletRequest, Object httpServletResponse, javax.websocket.server.ServerEndpointConfig sec, Map<String,String> pathParameters) throws IOException, javax.websocket.DeploymentException
      Throws:
      IOException
      javax.websocket.DeploymentException
    • setAsyncSendTimeout

      public void setAsyncSendTimeout(long ms)
      Specified by:
      setAsyncSendTimeout in interface javax.websocket.WebSocketContainer
      Overrides:
      setAsyncSendTimeout in class ClientContainer
    • setDefaultMaxBinaryMessageBufferSize

      public void setDefaultMaxBinaryMessageBufferSize(int max)
      Specified by:
      setDefaultMaxBinaryMessageBufferSize in interface javax.websocket.WebSocketContainer
      Overrides:
      setDefaultMaxBinaryMessageBufferSize in class ClientContainer
    • setDefaultMaxSessionIdleTimeout

      public void setDefaultMaxSessionIdleTimeout(long ms)
      Specified by:
      setDefaultMaxSessionIdleTimeout in interface javax.websocket.WebSocketContainer
      Overrides:
      setDefaultMaxSessionIdleTimeout in class ClientContainer
    • setDefaultMaxTextMessageBufferSize

      public void setDefaultMaxTextMessageBufferSize(int max)
      Specified by:
      setDefaultMaxTextMessageBufferSize in interface javax.websocket.WebSocketContainer
      Overrides:
      setDefaultMaxTextMessageBufferSize in class ClientContainer