Class BaseFilterProcessor<A extends Annotation>

java.lang.Object
io.micronaut.http.filter.BaseFilterProcessor<A>
Type Parameters:
A - Filter annotation type
All Implemented Interfaces:
io.micronaut.context.processor.AnnotationProcessor<A,io.micronaut.inject.ExecutableMethod<?,?>>, io.micronaut.context.processor.ExecutableMethodProcessor<A>

@Internal public abstract class BaseFilterProcessor<A extends Annotation> extends Object implements io.micronaut.context.processor.ExecutableMethodProcessor<A>
Base class for processing ServerFilter and ClientFilter beans.
Since:
4.0.0
  • Constructor Details

    • BaseFilterProcessor

      public BaseFilterProcessor(@Nullable @Nullable io.micronaut.context.BeanContext beanContext, Class<A> filterAnnotation)
  • Method Details

    • process

      public void process(io.micronaut.inject.BeanDefinition<?> beanDefinition, io.micronaut.inject.ExecutableMethod<?,?> method)
      Specified by:
      process in interface io.micronaut.context.processor.AnnotationProcessor<A extends Annotation,io.micronaut.inject.ExecutableMethod<?,?>>
      Specified by:
      process in interface io.micronaut.context.processor.ExecutableMethodProcessor<A extends Annotation>
    • addFilter

      protected abstract void addFilter(Supplier<GenericHttpFilter> factory, io.micronaut.core.annotation.AnnotationMetadata methodAnnotations, BaseFilterProcessor.FilterMetadata metadata)
      Add a filter. Called during process(BeanDefinition, ExecutableMethod).
      Parameters:
      factory - Factory that will create the filter instance
      methodAnnotations - Annotations on the filter method
      metadata - Filter metadata from class and method annotations
    • prependContextPath

      @NonNull protected @NonNull List<String> prependContextPath(@NonNull @NonNull List<String> patterns)
      Prepend server context path if necessary.
      Parameters:
      patterns - Input patterns
      Returns:
      Output patterns with server context path prepended