org.springframework.context.annotation

## Annotation Type ComponentScan.Filter

-     @Retention(value=RUNTIME)
      @Target(value={})
      public static @interface ComponentScan.Filter

  Declares the type filter to be used as an include filter or exclude filter.

- - ### Required Element Summary

    Required Elements
    Modifier and Type | Required Element and Description
    --- | ---
    `Class<?>[]` | `value` The class or classes to use as the filter.

  - ### Optional Element Summary

    Optional Elements
    Modifier and Type | Optional Element and Description
    --- | ---
    `FilterType` | `type` The type of filter to use.

- - ### Element Detail

    - #### value

          public abstract Class<?>[] value

      The class or classes to use as the filter. In the case of `FilterType.ANNOTATION`, the class will be the annotation itself. In the case of `FilterType.ASSIGNABLE_TYPE`, the class will be the type that detected components should be assignable to. And in the case of `FilterType.CUSTOM`, the class will be an implementation of `TypeFilter`.

      When multiple classes are specified, OR logic is applied, e.g. "include types annotated with `@Foo` OR `@Bar`".

      Specifying zero classes is permitted but will have no effect on component scanning.

    - #### type

          public abstract FilterType type

      The type of filter to use. Default is `FilterType.ANNOTATION`.
      Default:
        org.springframework.context.annotation.FilterType.ANNOTATION