Package io.micronaut.context.processor
Interface ExecutableMethodProcessor<A extends Annotation>
- Type Parameters:
A- The annotation type, which should be a stereotype ofExecutable
- All Superinterfaces:
AnnotationProcessor<A,ExecutableMethod<?, ?>>
- All Known Implementing Classes:
AnnotatedFunctionRouteBuilder,AnnotatedMethodRouteBuilder,BaseFilterProcessor,DefaultHttpClientFilterResolver,DefaultLocalFunctionRegistry,DeleteEndpointRouteBuilder,EndpointSensitivityProcessor,ReadEndpointRouteBuilder,ScheduledMethodProcessor,ServerFilterRouteBuilder,ServerWebSocketProcessor,WriteEndpointRouteBuilder
public interface ExecutableMethodProcessor<A extends Annotation>
extends AnnotationProcessor<A,ExecutableMethod<?,?>>
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
@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> {
}
- Since:
- 1.0
- Author:
- Graeme Rocher
-
Method Summary
Modifier and TypeMethodDescriptionvoidprocess(BeanDefinition<?> beanDefinition, ExecutableMethod<?, ?> method) The process method will be called for everyExecutableMethodthat is annotated with the type parameter A.
-
Method Details
-
process
The process method will be called for everyExecutableMethodthat is annotated with the type parameter A.- Specified by:
processin interfaceAnnotationProcessor<A extends Annotation,ExecutableMethod<?, ?>> - Parameters:
beanDefinition- The bean definition to processmethod- The executable method
-