## Uses of Interface
org.springframework.scheduling.TaskScheduler

- Packages that use TaskScheduler
  Package | Description
  --- | ---
  org.springframework.messaging.simp.broker | Provides a "simple" message broker implementation along with an abstract base class and other supporting types such as a registry for subscriptions.
  org.springframework.messaging.simp.config | Configuration support for WebSocket messaging using higher level messaging protocols.
  org.springframework.messaging.simp.stomp | Generic support for simple messaging protocols (like STOMP).
  org.springframework.messaging.simp.user | Support for handling messages to "user" destinations (i.e.
  org.springframework.scheduling.commonj | Convenience classes for scheduling based on the CommonJ WorkManager/TimerManager facility, as supported by IBM WebSphere 6.0+ and BEA WebLogic 9.0+.
  org.springframework.scheduling.concurrent | Scheduling convenience classes for the `java.util.concurrent` and `javax.enterprise.concurrent` packages, allowing to set up a ThreadPoolExecutor or ScheduledThreadPoolExecutor as a bean in a Spring context.
  org.springframework.scheduling.config | Support package for declarative scheduling configuration, with XML schema being the primary configuration format.
  org.springframework.web.socket.config | Configuration support for WebSocket request handling.
  org.springframework.web.socket.config.annotation | Support for annotation-based WebSocket setup in configuration classes.
  org.springframework.web.socket.messaging | WebSocket integration for Spring's messaging module.
  org.springframework.web.socket.sockjs.client | SockJS client implementation of `WebSocketClient`.
  org.springframework.web.socket.sockjs.support | Support classes for SockJS including an `AbstractSockJsService` implementation.
  org.springframework.web.socket.sockjs.transport | Server-side support for SockJS transports including `TransportHandler` implementations for processing incoming requests, their `session` counterparts for sending messages over the various transports, and `DefaultSockJsService`.
  org.springframework.web.socket.sockjs.transport.handler | `TransportHandler` implementation classes as well as a concrete `SockJsService`.

- - ### Uses of TaskScheduler in org.springframework.messaging.simp.broker

    Methods in org.springframework.messaging.simp.broker that return TaskScheduler
    Modifier and Type | Method and Description
    --- | ---
    `TaskScheduler` | SimpleBrokerMessageHandler.`getTaskScheduler()` Return the configured TaskScheduler.

    Methods in org.springframework.messaging.simp.broker with parameters of type TaskScheduler
    Modifier and Type | Method and Description
    --- | ---
    `void` | SimpleBrokerMessageHandler.`setTaskScheduler(TaskScheduler taskScheduler)` Configure the `TaskScheduler` to use for providing heartbeat support.

  - ### Uses of TaskScheduler in org.springframework.messaging.simp.config

    Methods in org.springframework.messaging.simp.config that return TaskScheduler
    Modifier and Type | Method and Description
    --- | ---
    `TaskScheduler` | AbstractMessageBrokerConfiguration.`messageBrokerTaskScheduler()`

    Methods in org.springframework.messaging.simp.config with parameters of type TaskScheduler
    Modifier and Type | Method and Description
    --- | ---
    `StompBrokerRelayRegistration` | StompBrokerRelayRegistration.`setTaskScheduler(TaskScheduler taskScheduler)` Some STOMP clients (e.g.
    `SimpleBrokerRegistration` | SimpleBrokerRegistration.`setTaskScheduler(TaskScheduler taskScheduler)` Configure the `TaskScheduler` to use for providing heartbeat support.
    `MessageHandler` | AbstractMessageBrokerConfiguration.`userRegistryMessageHandler(AbstractSubscribableChannel clientInboundChannel, AbstractSubscribableChannel clientOutboundChannel, SimpUserRegistry userRegistry, SimpMessagingTemplate brokerMessagingTemplate, TaskScheduler scheduler)`

  - ### Uses of TaskScheduler in org.springframework.messaging.simp.stomp

    Methods in org.springframework.messaging.simp.stomp that return TaskScheduler
    Modifier and Type | Method and Description
    --- | ---
    `TaskScheduler` | StompBrokerRelayMessageHandler.`getTaskScheduler()`
    `TaskScheduler` | DefaultStompSession.`getTaskScheduler()` Return the configured TaskScheduler to use for receipt tracking.
    `TaskScheduler` | StompClientSupport.`getTaskScheduler()` The configured TaskScheduler.

    Methods in org.springframework.messaging.simp.stomp with parameters of type TaskScheduler
    Modifier and Type | Method and Description
    --- | ---
    `void` | StompBrokerRelayMessageHandler.`setTaskScheduler(TaskScheduler taskScheduler)` Configure the `TaskScheduler` to use to reset client-to-broker message count in the current heartbeat period.
    `void` | DefaultStompSession.`setTaskScheduler(TaskScheduler taskScheduler)` Configure the TaskScheduler to use for receipt tracking.
    `void` | StompClientSupport.`setTaskScheduler(TaskScheduler taskScheduler)` Configure a scheduler to use for heartbeats and for receipt tracking.

  - ### Uses of TaskScheduler in org.springframework.messaging.simp.user

    Constructors in org.springframework.messaging.simp.user with parameters of type TaskScheduler
    Constructor and Description
    `UserRegistryMessageHandler(MultiServerUserRegistry userRegistry, SimpMessagingTemplate brokerTemplate, String broadcastDestination, TaskScheduler scheduler)` Constructor.

  - ### Uses of TaskScheduler in org.springframework.scheduling.commonj

    Classes in org.springframework.scheduling.commonj that implement TaskScheduler
    Modifier and Type | Class and Description
    --- | ---
    `class` | `TimerManagerTaskScheduler` Deprecated. as of 5.1, in favor of EE 7's `DefaultManagedTaskScheduler`

  - ### Uses of TaskScheduler in org.springframework.scheduling.concurrent

    Classes in org.springframework.scheduling.concurrent that implement TaskScheduler
    Modifier and Type | Class and Description
    --- | ---
    `class` | `ConcurrentTaskScheduler` Adapter that takes a `java.util.concurrent.ScheduledExecutorService` and exposes a Spring `TaskScheduler` for it.
    `class` | `DefaultManagedTaskScheduler` JNDI-based variant of `ConcurrentTaskScheduler`, performing a default lookup for JSR-236's "java:comp/DefaultManagedScheduledExecutorService" in a Java EE 7 environment.
    `class` | `ThreadPoolTaskScheduler` A standard implementation of Spring's `TaskScheduler` interface, wrapping a native `ScheduledThreadPoolExecutor` and providing all applicable configuration options for it.

  - ### Uses of TaskScheduler in org.springframework.scheduling.config

    Methods in org.springframework.scheduling.config that return TaskScheduler
    Modifier and Type | Method and Description
    --- | ---
    `TaskScheduler` | ScheduledTaskRegistrar.`getScheduler()` Return the `TaskScheduler` instance for this registrar (may be `null`).

    Methods in org.springframework.scheduling.config with parameters of type TaskScheduler
    Modifier and Type | Method and Description
    --- | ---
    `void` | ScheduledTaskRegistrar.`setTaskScheduler(TaskScheduler taskScheduler)` Set the `TaskScheduler` to register scheduled tasks with.

  - ### Uses of TaskScheduler in org.springframework.web.socket.config

    Methods in org.springframework.web.socket.config with parameters of type TaskScheduler
    Modifier and Type | Method and Description
    --- | ---
    `void` | WebSocketMessageBrokerStats.`setSockJsTaskScheduler(TaskScheduler sockJsTaskScheduler)`

  - ### Uses of TaskScheduler in org.springframework.web.socket.config.annotation

    Methods in org.springframework.web.socket.config.annotation that return TaskScheduler
    Modifier and Type | Method and Description
    --- | ---
    `TaskScheduler` | WebSocketConfigurationSupport.`defaultSockJsTaskScheduler()` The default TaskScheduler to use if none is registered explicitly via `SockJsServiceRegistration.setTaskScheduler(org.springframework.scheduling.TaskScheduler)`:
         @Configuration
         @EnableWebSocket
         public class WebSocketConfig implements WebSocketConfigurer {

           public void registerWebSocketHandlers(WebSocketHandlerRegistry registry) {
             registry.addHandler(myHandler(), "/echo")
                     .withSockJS()
                     .setTaskScheduler(myScheduler());
           }

           // ...
    `protected TaskScheduler` | SockJsServiceRegistration.`getTaskScheduler()` Return the TaskScheduler, if configured.

    Methods in org.springframework.web.socket.config.annotation with parameters of type TaskScheduler
    Modifier and Type | Method and Description
    --- | ---
    `protected void` | ServletWebSocketHandlerRegistry.`setTaskScheduler(TaskScheduler scheduler)` Provide the TaskScheduler to use for SockJS endpoints for which a task scheduler has not been explicitly registered.
    `SockJsServiceRegistration` | SockJsServiceRegistration.`setTaskScheduler(TaskScheduler scheduler)` A scheduler instance to use for scheduling SockJS heart-beats.
    `HandlerMapping` | WebSocketMessageBrokerConfigurationSupport.`stompWebSocketHandlerMapping(WebSocketHandler subProtocolWebSocketHandler, TaskScheduler messageBrokerTaskScheduler)`
    `HandlerMapping` | WebSocketConfigurationSupport.`webSocketHandlerMapping(TaskScheduler scheduler)`
    `WebSocketMessageBrokerStats` | WebSocketMessageBrokerConfigurationSupport.`webSocketMessageBrokerStats(AbstractBrokerMessageHandler stompBrokerRelayMessageHandler, WebSocketHandler subProtocolWebSocketHandler, TaskExecutor inboundExecutor, TaskExecutor outboundExecutor, TaskScheduler scheduler)`

    Constructors in org.springframework.web.socket.config.annotation with parameters of type TaskScheduler
    Constructor and Description
    `WebMvcStompEndpointRegistry(WebSocketHandler webSocketHandler, WebSocketTransportRegistration transportRegistration, TaskScheduler defaultSockJsTaskScheduler)`
    `WebMvcStompWebSocketEndpointRegistration(String[] paths, WebSocketHandler webSocketHandler, TaskScheduler sockJsTaskScheduler)`

  - ### Uses of TaskScheduler in org.springframework.web.socket.messaging

    Methods in org.springframework.web.socket.messaging with parameters of type TaskScheduler
    Modifier and Type | Method and Description
    --- | ---
    `void` | WebSocketStompClient.`setTaskScheduler(TaskScheduler taskScheduler)` Configure a scheduler to use for heartbeats and for receipt tracking.

  - ### Uses of TaskScheduler in org.springframework.web.socket.sockjs.client

    Methods in org.springframework.web.socket.sockjs.client with parameters of type TaskScheduler
    Modifier and Type | Method and Description
    --- | ---
    `void` | SockJsClient.`setConnectTimeoutScheduler(TaskScheduler connectTimeoutScheduler)` Configure a `TaskScheduler` for scheduling a connect timeout task where the timeout value is calculated based on the duration of the initial SockJS "Info" request.

  - ### Uses of TaskScheduler in org.springframework.web.socket.sockjs.support

    Methods in org.springframework.web.socket.sockjs.support that return TaskScheduler
    Modifier and Type | Method and Description
    --- | ---
    `TaskScheduler` | AbstractSockJsService.`getTaskScheduler()` A scheduler instance to use for scheduling heart-beat messages.

    Constructors in org.springframework.web.socket.sockjs.support with parameters of type TaskScheduler
    Constructor and Description
    `AbstractSockJsService(TaskScheduler scheduler)`

  - ### Uses of TaskScheduler in org.springframework.web.socket.sockjs.transport

    Methods in org.springframework.web.socket.sockjs.transport that return TaskScheduler
    Modifier and Type | Method and Description
    --- | ---
    `TaskScheduler` | SockJsServiceConfig.`getTaskScheduler()` A scheduler instance to use for scheduling heart-beat messages.

    Constructors in org.springframework.web.socket.sockjs.transport with parameters of type TaskScheduler
    Constructor and Description
    `TransportHandlingSockJsService(TaskScheduler scheduler, Collection<TransportHandler> handlers)` Create a TransportHandlingSockJsService with given `handler` types.
    `TransportHandlingSockJsService(TaskScheduler scheduler, TransportHandler... handlers)` Create a TransportHandlingSockJsService with given `handler` types.

  - ### Uses of TaskScheduler in org.springframework.web.socket.sockjs.transport.handler

    Constructors in org.springframework.web.socket.sockjs.transport.handler with parameters of type TaskScheduler
    Constructor and Description
    `DefaultSockJsService(TaskScheduler scheduler)` Create a DefaultSockJsService with default `handler` types.
    `DefaultSockJsService(TaskScheduler scheduler, Collection<TransportHandler> handlerOverrides)` Create a DefaultSockJsService with overridden `handler` types replacing the corresponding default handler implementation.
    `DefaultSockJsService(TaskScheduler scheduler, TransportHandler... handlerOverrides)` Create a DefaultSockJsService with overridden `handler` types replacing the corresponding default handler implementation.