Class ClientContainer
- java.lang.Object
-
- org.eclipse.jetty.util.component.AbstractLifeCycle
-
- org.eclipse.jetty.util.component.ContainerLifeCycle
-
- org.eclipse.jetty.websocket.jsr356.ClientContainer
-
- All Implemented Interfaces:
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
,org.eclipse.jetty.websocket.common.scopes.WebSocketContainerScope
@ManagedObject("JSR356 Client Container") public class ClientContainer extends org.eclipse.jetty.util.component.ContainerLifeCycle implements javax.websocket.WebSocketContainer, org.eclipse.jetty.websocket.common.scopes.WebSocketContainerScope
Container for Client use of the javax.websocket API.This should be specific to a JVM if run in a standalone mode. or specific to a WebAppContext if running on the Jetty server.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.eclipse.jetty.util.component.AbstractLifeCycle
org.eclipse.jetty.util.component.AbstractLifeCycle.AbstractLifeCycleListener
-
Nested classes/interfaces inherited from interface org.eclipse.jetty.util.component.Container
org.eclipse.jetty.util.component.Container.InheritedListener, org.eclipse.jetty.util.component.Container.Listener
-
-
Constructor Summary
Constructors Modifier Constructor Description ClientContainer()
This is the entry point forContainerProvider.getWebSocketContainer()
ClientContainer(org.eclipse.jetty.client.HttpClient httpClient)
Create aWebSocketContainer
using the suppliedHttpClient
for environments where you want to configure SSL/TLS or Proxy behaviors.ClientContainer(WebSocketClient client)
Build a ClientContainer with a specific WebSocketClient in mind.ClientContainer(org.eclipse.jetty.websocket.common.scopes.WebSocketContainerScope scope)
This is the entry point for ServerContainer, via ServletContext.getAttribute(ServerContainer.class.getName())protected
ClientContainer(org.eclipse.jetty.websocket.common.scopes.WebSocketContainerScope scope, org.eclipse.jetty.client.HttpClient httpClient)
This is the entry point for ServerContainer, via ServletContext.getAttribute(ServerContainer.class.getName())
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addSessionListener(org.eclipse.jetty.websocket.common.WebSocketSessionListener listener)
javax.websocket.Session
connectToServer(java.lang.Class<?> annotatedEndpointClass, java.net.URI path)
javax.websocket.Session
connectToServer(java.lang.Class<? extends javax.websocket.Endpoint> endpointClass, javax.websocket.ClientEndpointConfig config, java.net.URI path)
javax.websocket.Session
connectToServer(java.lang.Object endpoint, java.net.URI path)
javax.websocket.Session
connectToServer(javax.websocket.Endpoint endpoint, javax.websocket.ClientEndpointConfig config, java.net.URI path)
protected void
doStart()
protected void
doStop()
org.eclipse.jetty.io.ByteBufferPool
getBufferPool()
java.lang.ClassLoader
getClassLoader()
WebSocketClient
getClient()
EndpointMetadata
getClientEndpointMetadata(java.lang.Class<?> endpoint, javax.websocket.EndpointConfig config)
DecoderFactory
getDecoderFactory()
long
getDefaultAsyncSendTimeout()
int
getDefaultMaxBinaryMessageBufferSize()
long
getDefaultMaxSessionIdleTimeout()
int
getDefaultMaxTextMessageBufferSize()
EncoderFactory
getEncoderFactory()
java.util.concurrent.Executor
getExecutor()
java.util.Set<javax.websocket.Extension>
getInstalledExtensions()
org.eclipse.jetty.util.DecoratedObjectFactory
getObjectFactory()
java.util.Set<javax.websocket.Session>
getOpenSessions()
Used inSession.getOpenSessions()
org.eclipse.jetty.websocket.api.WebSocketPolicy
getPolicy()
java.util.Collection<org.eclipse.jetty.websocket.common.WebSocketSessionListener>
getSessionListeners()
org.eclipse.jetty.util.ssl.SslContextFactory
getSslContextFactory()
EndpointInstance
newClientEndpointInstance(java.lang.Object endpoint, javax.websocket.ClientEndpointConfig config)
void
removeSessionListener(org.eclipse.jetty.websocket.common.WebSocketSessionListener listener)
void
setAsyncSendTimeout(long ms)
void
setDefaultMaxBinaryMessageBufferSize(int max)
void
setDefaultMaxSessionIdleTimeout(long ms)
void
setDefaultMaxTextMessageBufferSize(int max)
-
Methods inherited from class org.eclipse.jetty.util.component.ContainerLifeCycle
addBean, addBean, addEventListener, addManaged, contains, destroy, dump, dump, dump, dump, dump, dumpBeans, dumpObject, dumpObjects, dumpStdErr, dumpThis, getBean, getBeans, getBeans, getContainedBeans, getContainedBeans, isAuto, isManaged, isUnmanaged, manage, removeBean, removeBeans, removeEventListener, setBeans, setStopTimeout, start, stop, unmanage, updateBean, updateBean, updateBeans
-
Methods inherited from class org.eclipse.jetty.util.component.AbstractLifeCycle
addLifeCycleListener, getState, getState, getStopTimeout, isFailed, isRunning, isStarted, isStarting, isStopped, isStopping, removeLifeCycleListener, start, stop, toString
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
-
-
-
Constructor Detail
-
ClientContainer
public ClientContainer()
This is the entry point forContainerProvider.getWebSocketContainer()
-
ClientContainer
public ClientContainer(org.eclipse.jetty.client.HttpClient httpClient)
Create aWebSocketContainer
using the suppliedHttpClient
for environments where you want to configure SSL/TLS or Proxy behaviors.- Parameters:
httpClient
- the HttpClient instance to use
-
ClientContainer
public ClientContainer(org.eclipse.jetty.websocket.common.scopes.WebSocketContainerScope scope)
This is the entry point for ServerContainer, via ServletContext.getAttribute(ServerContainer.class.getName())- Parameters:
scope
- the scope of the ServerContainer
-
ClientContainer
protected ClientContainer(org.eclipse.jetty.websocket.common.scopes.WebSocketContainerScope scope, org.eclipse.jetty.client.HttpClient httpClient)
This is the entry point for ServerContainer, via ServletContext.getAttribute(ServerContainer.class.getName())- Parameters:
scope
- the scope of the ServerContainerhttpClient
- the HttpClient instance to use
-
ClientContainer
public ClientContainer(WebSocketClient client)
Build a ClientContainer with a specific WebSocketClient in mind.- Parameters:
client
- the WebSocketClient to use.
-
-
Method Detail
-
connectToServer
public javax.websocket.Session connectToServer(java.lang.Class<? extends javax.websocket.Endpoint> endpointClass, javax.websocket.ClientEndpointConfig config, java.net.URI path) throws javax.websocket.DeploymentException, java.io.IOException
- Specified by:
connectToServer
in interfacejavax.websocket.WebSocketContainer
- Throws:
javax.websocket.DeploymentException
java.io.IOException
-
connectToServer
public javax.websocket.Session connectToServer(java.lang.Class<?> annotatedEndpointClass, java.net.URI path) throws javax.websocket.DeploymentException, java.io.IOException
- Specified by:
connectToServer
in interfacejavax.websocket.WebSocketContainer
- Throws:
javax.websocket.DeploymentException
java.io.IOException
-
connectToServer
public javax.websocket.Session connectToServer(javax.websocket.Endpoint endpoint, javax.websocket.ClientEndpointConfig config, java.net.URI path) throws javax.websocket.DeploymentException, java.io.IOException
- Specified by:
connectToServer
in interfacejavax.websocket.WebSocketContainer
- Throws:
javax.websocket.DeploymentException
java.io.IOException
-
connectToServer
public javax.websocket.Session connectToServer(java.lang.Object endpoint, java.net.URI path) throws javax.websocket.DeploymentException, java.io.IOException
- Specified by:
connectToServer
in interfacejavax.websocket.WebSocketContainer
- Throws:
javax.websocket.DeploymentException
java.io.IOException
-
doStart
protected void doStart() throws java.lang.Exception
- Overrides:
doStart
in classorg.eclipse.jetty.util.component.ContainerLifeCycle
- Throws:
java.lang.Exception
-
doStop
protected void doStop() throws java.lang.Exception
- Overrides:
doStop
in classorg.eclipse.jetty.util.component.ContainerLifeCycle
- Throws:
java.lang.Exception
-
getBufferPool
public org.eclipse.jetty.io.ByteBufferPool getBufferPool()
- Specified by:
getBufferPool
in interfaceorg.eclipse.jetty.websocket.common.scopes.WebSocketContainerScope
-
getClient
public WebSocketClient getClient()
-
getClassLoader
public java.lang.ClassLoader getClassLoader()
- Specified by:
getClassLoader
in interfaceorg.eclipse.jetty.websocket.common.scopes.WebSocketContainerScope
-
getClientEndpointMetadata
public EndpointMetadata getClientEndpointMetadata(java.lang.Class<?> endpoint, javax.websocket.EndpointConfig config)
-
getDecoderFactory
public DecoderFactory getDecoderFactory()
-
getDefaultAsyncSendTimeout
public long getDefaultAsyncSendTimeout()
- Specified by:
getDefaultAsyncSendTimeout
in interfacejavax.websocket.WebSocketContainer
-
getDefaultMaxBinaryMessageBufferSize
public int getDefaultMaxBinaryMessageBufferSize()
- Specified by:
getDefaultMaxBinaryMessageBufferSize
in interfacejavax.websocket.WebSocketContainer
-
getDefaultMaxSessionIdleTimeout
public long getDefaultMaxSessionIdleTimeout()
- Specified by:
getDefaultMaxSessionIdleTimeout
in interfacejavax.websocket.WebSocketContainer
-
getDefaultMaxTextMessageBufferSize
public int getDefaultMaxTextMessageBufferSize()
- Specified by:
getDefaultMaxTextMessageBufferSize
in interfacejavax.websocket.WebSocketContainer
-
getEncoderFactory
public EncoderFactory getEncoderFactory()
-
getExecutor
public java.util.concurrent.Executor getExecutor()
- Specified by:
getExecutor
in interfaceorg.eclipse.jetty.websocket.common.scopes.WebSocketContainerScope
-
getInstalledExtensions
public java.util.Set<javax.websocket.Extension> getInstalledExtensions()
- Specified by:
getInstalledExtensions
in interfacejavax.websocket.WebSocketContainer
-
getObjectFactory
public org.eclipse.jetty.util.DecoratedObjectFactory getObjectFactory()
- Specified by:
getObjectFactory
in interfaceorg.eclipse.jetty.websocket.common.scopes.WebSocketContainerScope
-
getOpenSessions
public java.util.Set<javax.websocket.Session> getOpenSessions()
Used inSession.getOpenSessions()
- Returns:
- the set of open sessions
-
getPolicy
public org.eclipse.jetty.websocket.api.WebSocketPolicy getPolicy()
- Specified by:
getPolicy
in interfaceorg.eclipse.jetty.websocket.common.scopes.WebSocketContainerScope
-
getSslContextFactory
public org.eclipse.jetty.util.ssl.SslContextFactory getSslContextFactory()
- Specified by:
getSslContextFactory
in interfaceorg.eclipse.jetty.websocket.common.scopes.WebSocketContainerScope
-
addSessionListener
public void addSessionListener(org.eclipse.jetty.websocket.common.WebSocketSessionListener listener)
- Specified by:
addSessionListener
in interfaceorg.eclipse.jetty.websocket.common.scopes.WebSocketContainerScope
-
removeSessionListener
public void removeSessionListener(org.eclipse.jetty.websocket.common.WebSocketSessionListener listener)
- Specified by:
removeSessionListener
in interfaceorg.eclipse.jetty.websocket.common.scopes.WebSocketContainerScope
-
getSessionListeners
public java.util.Collection<org.eclipse.jetty.websocket.common.WebSocketSessionListener> getSessionListeners()
- Specified by:
getSessionListeners
in interfaceorg.eclipse.jetty.websocket.common.scopes.WebSocketContainerScope
-
newClientEndpointInstance
public EndpointInstance newClientEndpointInstance(java.lang.Object endpoint, javax.websocket.ClientEndpointConfig config)
-
setAsyncSendTimeout
public void setAsyncSendTimeout(long ms)
- Specified by:
setAsyncSendTimeout
in interfacejavax.websocket.WebSocketContainer
-
setDefaultMaxBinaryMessageBufferSize
public void setDefaultMaxBinaryMessageBufferSize(int max)
- Specified by:
setDefaultMaxBinaryMessageBufferSize
in interfacejavax.websocket.WebSocketContainer
-
setDefaultMaxSessionIdleTimeout
public void setDefaultMaxSessionIdleTimeout(long ms)
- Specified by:
setDefaultMaxSessionIdleTimeout
in interfacejavax.websocket.WebSocketContainer
-
setDefaultMaxTextMessageBufferSize
public void setDefaultMaxTextMessageBufferSize(int max)
- Specified by:
setDefaultMaxTextMessageBufferSize
in interfacejavax.websocket.WebSocketContainer
-
-