@Retention(value=RUNTIME) @Target(value={}) public static @interface ComponentScan.Filter
| Modifier and Type | Optional Element and Description |
|---|---|
String[] |
pattern
The String pattern (or patterns) to use for the filter, as an alternative to
specifying a Class
value(). |
FilterType |
type
The type of filter to use.
|
Class<?>[] |
value
The class or classes to use as the filter.
|
public abstract FilterType type
FilterType.ANNOTATION.public abstract Class<?>[] value
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.
public abstract String[] pattern
value(). In the case of FilterType.ASPECTJ,
this is an AspectJ type pattern expression; in case of FilterType.REGEX,
a regex pattern for the fully-qualified class names to match.