org.springframework.web.socket.client.standard

## Class AnnotatedEndpointConnectionManager

- java.lang.Object
- - org.springframework.web.socket.client.ConnectionManagerSupport
  - - org.springframework.web.socket.client.standard.AnnotatedEndpointConnectionManager

- All Implemented Interfaces:
    Aware, BeanFactoryAware, Lifecycle, Phased, SmartLifecycle

      public class AnnotatedEndpointConnectionManager
      extends ConnectionManagerSupport
      implements BeanFactoryAware

  A WebSocket connection manager that is given a URI, a `ServerEndpoint`-annotated endpoint, connects to a WebSocket server through the `ConnectionManagerSupport.start()` and `ConnectionManagerSupport.stop()` methods. If `ConnectionManagerSupport.setAutoStartup(boolean)` is set to `true` this will be done automatically when the Spring ApplicationContext is refreshed.
  Since:
    4.0
  Author:
    Rossen Stoyanchev

- - ### Field Summary

    - ### Fields inherited from class org.springframework.web.socket.client.ConnectionManagerSupport

      `logger`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `AnnotatedEndpointConnectionManager(Class<?> endpointClass, String uriTemplate, Object... uriVariables)`
    `AnnotatedEndpointConnectionManager(Object endpoint, String uriTemplate, Object... uriVariables)`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `protected void` | `closeConnection()`
    `TaskExecutor` | `getTaskExecutor()` Return the configured `TaskExecutor`.
    `javax.websocket.WebSocketContainer` | `getWebSocketContainer()`
    `protected boolean` | `isConnected()`
    `protected void` | `openConnection()`
    `void` | `setBeanFactory(BeanFactory beanFactory)` Callback that supplies the owning factory to a bean instance.
    `void` | `setTaskExecutor(TaskExecutor taskExecutor)` Set a `TaskExecutor` to use to open the connection.
    `void` | `setWebSocketContainer(javax.websocket.WebSocketContainer webSocketContainer)`

    - ### Methods inherited from class org.springframework.web.socket.client.ConnectionManagerSupport

      `getPhase, getUri, isAutoStartup, isRunning, setAutoStartup, setPhase, start, startInternal, stop, stop, stopInternal`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### AnnotatedEndpointConnectionManager

          public AnnotatedEndpointConnectionManager(Object endpoint,
                                                    String uriTemplate,
                                                    Object... uriVariables)

    - #### AnnotatedEndpointConnectionManager

          public AnnotatedEndpointConnectionManager(Class<?> endpointClass,
                                                    String uriTemplate,
                                                    Object... uriVariables)

  - ### Method Detail

    - #### setWebSocketContainer

          public void setWebSocketContainer(javax.websocket.WebSocketContainer webSocketContainer)

    - #### getWebSocketContainer

          public javax.websocket.WebSocketContainer getWebSocketContainer()

    - #### setBeanFactory

          public void setBeanFactory(BeanFactory beanFactory)
                              throws BeansException

      Description copied from interface: `BeanFactoryAware`
      Callback that supplies the owning factory to a bean instance.

      Invoked after the population of normal bean properties but before an initialization callback such as `InitializingBean.afterPropertiesSet()` or a custom init-method.

      Specified by:
        `setBeanFactory` in interface `BeanFactoryAware`
      Parameters:
        `beanFactory` - owning BeanFactory (never `null`). The bean can immediately call methods on the factory.
      Throws:
        `BeansException` - in case of initialization errors
      See Also:
        `BeanInitializationException`

    - #### setTaskExecutor

          public void setTaskExecutor(TaskExecutor taskExecutor)

      Set a `TaskExecutor` to use to open the connection. By default `SimpleAsyncTaskExecutor` is used.

    - #### getTaskExecutor

          public TaskExecutor getTaskExecutor()

      Return the configured `TaskExecutor`.

    - #### openConnection

          protected void openConnection()

      Specified by:
        `openConnection` in class `ConnectionManagerSupport`

    - #### closeConnection

          protected void closeConnection()
                                  throws Exception

      Specified by:
        `closeConnection` in class `ConnectionManagerSupport`
      Throws:
        `Exception`

    - #### isConnected

          protected boolean isConnected()

      Specified by:
        `isConnected` in class `ConnectionManagerSupport`