spring-framework / org.springframework.scheduling.commonj

Package org.springframework.scheduling.commonj

Types

DelegatingTimerListener

open class DelegatingTimerListener : TimerListener

Simple TimerListener adapter that delegates to a given Runnable.

DelegatingWork

open class DelegatingWork : Work

Simple Work adapter that delegates to a given Runnable.

ScheduledTimerListener

open class ScheduledTimerListener

JavaBean that describes a scheduled TimerListener, consisting of the TimerListener itself (or a Runnable to create a TimerListener for) and a delay plus period. Period needs to be specified; there is no point in a default for it.

The CommonJ TimerManager does not offer more sophisticated scheduling options such as cron expressions. Consider using Quartz for such advanced needs.

Note that the TimerManager uses a TimerListener instance that is shared between repeated executions, in contrast to Quartz which instantiates a new Job for each execution.

TimerManagerAccessor

abstract class TimerManagerAccessor : JndiLocatorSupport, InitializingBean, DisposableBean, Lifecycle

Base class for classes that are accessing a CommonJ commonj.timers.TimerManager Defines common configuration settings and common lifecycle handling.

TimerManagerFactoryBean

open class TimerManagerFactoryBean : TimerManagerAccessor, FactoryBean<TimerManager>, InitializingBean, DisposableBean, Lifecycle

org.springframework.beans.factory.FactoryBean that retrieves a CommonJ commonj.timers.TimerManager and exposes it for bean references.

This is the central convenience class for setting up a CommonJ TimerManager in a Spring context.

Allows for registration of ScheduledTimerListeners. This is the main purpose of this class; the TimerManager itself could also be fetched from JNDI via org.springframework.jndi.JndiObjectFactoryBean. In scenarios that just require static registration of tasks at startup, there is no need to access the TimerManager itself in application code.

Note that the TimerManager uses a TimerListener instance that is shared between repeated executions, in contrast to Quartz which instantiates a new Job for each execution.

TimerManagerTaskScheduler

open class TimerManagerTaskScheduler : TimerManagerAccessor, TaskScheduler

Implementation of Spring's TaskScheduler interface, wrapping a CommonJ commonj.timers.TimerManager.

WorkManagerTaskExecutor

open class WorkManagerTaskExecutor : JndiLocatorSupport, AsyncListenableTaskExecutor, SchedulingTaskExecutor, WorkManager, InitializingBean

TaskExecutor implementation that delegates to a CommonJ WorkManager, implementing the commonj.work.WorkManager interface, which either needs to be specified as reference or through the JNDI name.

This is the central convenience class for setting up a CommonJ WorkManager in a Spring context.

Also implements the CommonJ WorkManager interface itself, delegating all calls to the target WorkManager. Hence, a caller can choose whether it wants to talk to this executor through the Spring TaskExecutor interface or the CommonJ WorkManager interface.

The CommonJ WorkManager will usually be retrieved from the application server's JNDI environment, as defined in the server's management console.

Note: On the upcoming EE 7 compliant versions of WebLogic and WebSphere, a org.springframework.scheduling.concurrent.DefaultManagedTaskExecutor should be preferred, following JSR-236 support in Java EE 7.