public interface io.micronaut.http.annotation.Filter extends java.lang.annotation.Annotation
  minor version: 0
  major version: 59
  flags: flags: (0x2601) ACC_PUBLIC, ACC_INTERFACE, ACC_ABSTRACT, ACC_ANNOTATION
  this_class: io.micronaut.http.annotation.Filter
  super_class: java.lang.Object
{
  public static final java.lang.String MATCH_ALL_PATTERN;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "/**"

  public abstract java.lang.String[] value();
    descriptor: ()[Ljava/lang/String;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    AnnotationDefault: {}

  public abstract java.lang.String[] patterns();
    descriptor: ()[Ljava/lang/String;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    AnnotationDefault: {}
    RuntimeVisibleAnnotations: 
      io.micronaut.context.annotation.AliasFor(member = "value")

  public abstract io.micronaut.http.HttpMethod[] methods();
    descriptor: ()[Lio/micronaut/http/HttpMethod;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    AnnotationDefault: {}

  public abstract java.lang.String[] serviceId();
    descriptor: ()[Ljava/lang/String;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    AnnotationDefault: {}
}
SourceFile: "Filter.java"
    RuntimeVisibleAnnotations: 
      javax.inject.Singleton()
      java.lang.annotation.Documented()
      java.lang.annotation.Retention(value = java.lang.annotation.RetentionPolicy.RUNTIME:Ljava/lang/annotation/RetentionPolicy;)
      java.lang.annotation.Target(value = {java.lang.annotation.ElementType.TYPE:Ljava/lang/annotation/ElementType;})
      io.micronaut.context.annotation.Executable()