public class ScheduledAnnotationBeanPostProcessor extends Object implements org.springframework.beans.factory.config.BeanPostProcessor, org.springframework.core.Ordered, EmbeddedValueResolverAware, org.springframework.beans.factory.BeanFactoryAware, org.springframework.beans.factory.SmartInitializingSingleton, org.springframework.beans.factory.DisposableBean
Scheduled
to be invoked by a TaskScheduler
according
to the "fixedRate", "fixedDelay", or "cron" expression provided via the annotation.
This post-processor is automatically registered by Spring's
<task:annotation-driven>
XML element, and also by the @EnableScheduling
annotation.
Auto-detects any SchedulingConfigurer
instances in the container,
allowing for customization of the scheduler to be used or for fine-grained control
over task registration (e.g. registration of Trigger
tasks.
See the @EnableScheduling
javadocs for complete usage details.
Scheduled
,
EnableScheduling
,
SchedulingConfigurer
,
TaskScheduler
,
ScheduledTaskRegistrar
Constructor and Description |
---|
ScheduledAnnotationBeanPostProcessor() |
Modifier and Type | Method and Description |
---|---|
void |
afterSingletonsInstantiated() |
void |
destroy() |
int |
getOrder() |
Object |
postProcessAfterInitialization(Object bean,
String beanName) |
Object |
postProcessBeforeInitialization(Object bean,
String beanName) |
protected void |
processScheduled(Scheduled scheduled,
Method method,
Object bean) |
void |
setApplicationContext(ApplicationContext applicationContext)
Deprecated.
as of Spring 4.1, in favor of
setBeanFactory(org.springframework.beans.factory.BeanFactory) |
void |
setBeanFactory(org.springframework.beans.factory.BeanFactory beanFactory)
Making a
BeanFactory available is optional; if not set,
SchedulingConfigurer beans won't get autodetected and
a scheduler has to be explicitly configured. |
void |
setEmbeddedValueResolver(org.springframework.util.StringValueResolver resolver)
Set the StringValueResolver to use for resolving embedded definition values.
|
void |
setScheduler(Object scheduler)
Set the
TaskScheduler that will invoke
the scheduled methods, or a ScheduledExecutorService
to be wrapped as a TaskScheduler. |
public ScheduledAnnotationBeanPostProcessor()
public int getOrder()
getOrder
in interface org.springframework.core.Ordered
public void setScheduler(Object scheduler)
TaskScheduler
that will invoke
the scheduled methods, or a ScheduledExecutorService
to be wrapped as a TaskScheduler.public void setEmbeddedValueResolver(org.springframework.util.StringValueResolver resolver)
EmbeddedValueResolverAware
setEmbeddedValueResolver
in interface EmbeddedValueResolverAware
public void setBeanFactory(org.springframework.beans.factory.BeanFactory beanFactory)
BeanFactory
available is optional; if not set,
SchedulingConfigurer
beans won't get autodetected and
a scheduler
has to be explicitly configured.setBeanFactory
in interface org.springframework.beans.factory.BeanFactoryAware
@Deprecated public void setApplicationContext(ApplicationContext applicationContext)
setBeanFactory(org.springframework.beans.factory.BeanFactory)
public void afterSingletonsInstantiated()
afterSingletonsInstantiated
in interface org.springframework.beans.factory.SmartInitializingSingleton
public Object postProcessBeforeInitialization(Object bean, String beanName)
postProcessBeforeInitialization
in interface org.springframework.beans.factory.config.BeanPostProcessor
public Object postProcessAfterInitialization(Object bean, String beanName)
postProcessAfterInitialization
in interface org.springframework.beans.factory.config.BeanPostProcessor
public void destroy()
destroy
in interface org.springframework.beans.factory.DisposableBean