public class ScheduledTaskRegistrar extends Object implements InitializingBean, DisposableBean
TaskScheduler, typically using cron
 expressions.
 As of Spring 3.1, ScheduledTaskRegistrar has a more prominent user-facing
 role when used in conjunction with the @EnableAsync annotation and its
 SchedulingConfigurer callback interface.
EnableAsync, 
SchedulingConfigurer| Constructor and Description | 
|---|
ScheduledTaskRegistrar()  | 
| Modifier and Type | Method and Description | 
|---|---|
void | 
addCronTask(CronTask task)
Add a  
CronTask. | 
void | 
addCronTask(Runnable task,
           String expression)
Add a Runnable task to be triggered per the given cron expression 
 | 
void | 
addFixedDelayTask(IntervalTask task)
Add a fixed-delay  
IntervalTask. | 
void | 
addFixedDelayTask(Runnable task,
                 long delay)
Add a Runnable task to be triggered with the given fixed delay. 
 | 
void | 
addFixedRateTask(IntervalTask task)
Add a fixed-rate  
IntervalTask. | 
void | 
addFixedRateTask(Runnable task,
                long interval)
Add a  
Runnable task to be triggered at the given fixed-rate interval. | 
void | 
addTriggerTask(Runnable task,
              Trigger trigger)
Add a Runnable task to be triggered per the given  
Trigger. | 
void | 
addTriggerTask(TriggerTask task)
Add a  
TriggerTask. | 
void | 
afterPropertiesSet()
Calls  
scheduleTasks() at bean construction time. | 
void | 
destroy()
Invoked by a BeanFactory on destruction of a singleton. 
 | 
List<CronTask> | 
getCronTaskList()
Get the cron tasks as an unmodifiable list of  
CronTask objects. | 
List<IntervalTask> | 
getFixedDelayTaskList()
Get the fixed-delay tasks as an unmodifiable list of  
IntervalTask objects. | 
List<IntervalTask> | 
getFixedRateTaskList()
Get the fixed-rate tasks as an unmodifiable list of  
IntervalTask objects. | 
TaskScheduler | 
getScheduler()
Return the  
TaskScheduler instance for this registrar (may be null). | 
List<TriggerTask> | 
getTriggerTaskList()
Get the trigger tasks as an unmodifiable list of  
TriggerTask objects. | 
boolean | 
hasTasks()
Return whether this  
ScheduledTaskRegistrar has any tasks registered. | 
ScheduledTask | 
scheduleCronTask(CronTask task)
Schedule the specified cron task, either right away if possible
 or on initialization of the scheduler. 
 | 
ScheduledTask | 
scheduleFixedDelayTask(IntervalTask task)
Schedule the specified fixed-delay task, either right away if possible
 or on initialization of the scheduler. 
 | 
ScheduledTask | 
scheduleFixedRateTask(IntervalTask task)
Schedule the specified fixed-rate task, either right away if possible
 or on initialization of the scheduler. 
 | 
protected void | 
scheduleTasks()
Schedule all registered tasks against the underlying task scheduler. 
 | 
ScheduledTask | 
scheduleTriggerTask(TriggerTask task)
Schedule the specified trigger task, either right away if possible
 or on initialization of the scheduler. 
 | 
void | 
setCronTasks(Map<Runnable,String> cronTasks)
Specify triggered tasks as a Map of Runnables (the tasks) and cron expressions. 
 | 
void | 
setCronTasksList(List<CronTask> cronTasks)
Specify triggered tasks as a list of  
CronTask objects. | 
void | 
setFixedDelayTasks(Map<Runnable,Long> fixedDelayTasks)
Specify triggered tasks as a Map of Runnables (the tasks) and fixed-delay values. 
 | 
void | 
setFixedDelayTasksList(List<IntervalTask> fixedDelayTasks)
Specify fixed-delay tasks as a list of  
IntervalTask objects. | 
void | 
setFixedRateTasks(Map<Runnable,Long> fixedRateTasks)
Specify triggered tasks as a Map of Runnables (the tasks) and fixed-rate values. 
 | 
void | 
setFixedRateTasksList(List<IntervalTask> fixedRateTasks)
Specify fixed-rate tasks as a list of  
IntervalTask objects. | 
void | 
setScheduler(Object scheduler)
Set the  
TaskScheduler to register scheduled tasks with, or a
 ScheduledExecutorService to be wrapped as a
 TaskScheduler. | 
void | 
setTaskScheduler(TaskScheduler taskScheduler)
Set the  
TaskScheduler to register scheduled tasks with. | 
void | 
setTriggerTasks(Map<Runnable,Trigger> triggerTasks)
Specify triggered tasks as a Map of Runnables (the tasks) and Trigger objects
 (typically custom implementations of the  
Trigger interface). | 
void | 
setTriggerTasksList(List<TriggerTask> triggerTasks)
Specify triggered tasks as a list of  
TriggerTask objects. | 
public void setTaskScheduler(TaskScheduler taskScheduler)
TaskScheduler to register scheduled tasks with.public void setScheduler(Object scheduler)
TaskScheduler to register scheduled tasks with, or a
 ScheduledExecutorService to be wrapped as a
 TaskScheduler.public TaskScheduler getScheduler()
TaskScheduler instance for this registrar (may be null).public void setTriggerTasks(Map<Runnable,Trigger> triggerTasks)
Trigger interface).public void setTriggerTasksList(List<TriggerTask> triggerTasks)
TriggerTask objects. Primarily used
 by <task:*> namespace parsing.ScheduledTasksBeanDefinitionParserpublic List<TriggerTask> getTriggerTaskList()
TriggerTask objects.null)public void setCronTasks(Map<Runnable,String> cronTasks)
CronTriggerpublic void setCronTasksList(List<CronTask> cronTasks)
CronTask objects. Primarily used by
 <task:*> namespace parsing.ScheduledTasksBeanDefinitionParserpublic List<CronTask> getCronTaskList()
CronTask objects.null)public void setFixedRateTasks(Map<Runnable,Long> fixedRateTasks)
public void setFixedRateTasksList(List<IntervalTask> fixedRateTasks)
IntervalTask objects. Primarily used
 by <task:*> namespace parsing.ScheduledTasksBeanDefinitionParserpublic List<IntervalTask> getFixedRateTaskList()
IntervalTask objects.null)public void setFixedDelayTasks(Map<Runnable,Long> fixedDelayTasks)
public void setFixedDelayTasksList(List<IntervalTask> fixedDelayTasks)
IntervalTask objects. Primarily used
 by <task:*> namespace parsing.ScheduledTasksBeanDefinitionParserpublic List<IntervalTask> getFixedDelayTaskList()
IntervalTask objects.null)public void addTriggerTask(Runnable task, Trigger trigger)
Trigger.public void addTriggerTask(TriggerTask task)
TriggerTask.TaskScheduler.scheduleAtFixedRate(Runnable, long)public void addCronTask(Runnable task, String expression)
public void addFixedRateTask(Runnable task, long interval)
Runnable task to be triggered at the given fixed-rate interval.public void addFixedRateTask(IntervalTask task)
IntervalTask.TaskScheduler.scheduleAtFixedRate(Runnable, long)public void addFixedDelayTask(Runnable task, long delay)
public void addFixedDelayTask(IntervalTask task)
IntervalTask.TaskScheduler.scheduleWithFixedDelay(Runnable, long)public boolean hasTasks()
ScheduledTaskRegistrar has any tasks registered.public void afterPropertiesSet()
scheduleTasks() at bean construction time.afterPropertiesSet in interface InitializingBeanprotected void scheduleTasks()
public ScheduledTask scheduleTriggerTask(TriggerTask task)
public ScheduledTask scheduleCronTask(CronTask task)
null if processing a previously registered task)public ScheduledTask scheduleFixedRateTask(IntervalTask task)
null if processing a previously registered task)public ScheduledTask scheduleFixedDelayTask(IntervalTask task)
null if processing a previously registered task)public void destroy()
DisposableBeandestroy in interface DisposableBean