Interface ExecutableMethodProcessor<A extends Annotation>

All Known Implementing Classes:
ScheduledMethodProcessor

@Indexed(ExecutableMethodProcessor.class) public interface ExecutableMethodProcessor<A extends Annotation>

A class capable of processing an ExecutableMethod instances.

The use case here is framework components that need to react to the presence of an annotation. For example given the following annotation:

 @Executable(processOnStartup=true)
 @Retention(RUNTIME)
 @Target(ElementType.METHOD)
 public @interface Scheduled {
 String cron()
 }
 

One could write a ExecutableMethodProcessor that processed all methods annotated with @Scheduled:

 
 public class MyProcessor implements ExecutableMethodProcessor<Scheduled> {
 }
 
NOTE: The processor will only be invoked for methods that needs to be processed at startup.
Since:
1.0
Author:
Graeme Rocher
  • Method Summary

    Modifier and Type
    Method
    Description
    <B> void
    process(BeanDefinition<B> beanDefinition, ExecutableMethod<B,?> method)
    The process method will be called for every ExecutableMethod that is annotated with the type parameter A.
  • Method Details

    • process

      <B> void process(BeanDefinition<B> beanDefinition, ExecutableMethod<B,?> method)
      The process method will be called for every ExecutableMethod that is annotated with the type parameter A.
      Parameters:
      beanDefinition - The bean definition to process
      method - The executable method