Class FilterBuilder
- java.lang.Object
-
- org.reflections.util.FilterBuilder
-
- All Implemented Interfaces:
java.util.function.Predicate<java.lang.String>
public class FilterBuilder extends java.lang.Object implements java.util.function.Predicate<java.lang.String>
Builds include/exclude filters for Reflections.For example:
Predicate
filter1 = FilterBuilder.parsePackages("-java, "-javax"); Predicate filter2 = new FilterBuilder().include(".*").exclude("java.*");
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
FilterBuilder.Exclude
static class
FilterBuilder.Include
static class
FilterBuilder.Matcher
-
Field Summary
Fields Modifier and Type Field Description private java.util.List<java.util.function.Predicate<java.lang.String>>
chain
-
Constructor Summary
Constructors Modifier Constructor Description FilterBuilder()
private
FilterBuilder(java.util.Collection<java.util.function.Predicate<java.lang.String>> filters)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description FilterBuilder
add(java.util.function.Predicate<java.lang.String> filter)
add a Predicate to the chain of predicatesFilterBuilder
exclude(java.lang.String regex)
exclude a regular expressionFilterBuilder
excludePackage(java.lang.Class<?> aClass)
exclude a package of a given classFilterBuilder
excludePackage(java.lang.String prefix)
exclude a package of a given prefixFilterBuilder
include(java.lang.String regex)
include a regular expressionFilterBuilder
includePackage(java.lang.Class<?> aClass)
include a package of a given classFilterBuilder
includePackage(java.lang.String... prefixes)
include packages of given prefixesprivate static java.lang.String
packageNameRegex(java.lang.Class<?> aClass)
static FilterBuilder
parse(java.lang.String includeExcludeString)
Parses a string representation of an include/exclude filter.static FilterBuilder
parsePackages(java.lang.String includeExcludeString)
Parses a string representation of an include/exclude filter.static java.lang.String
prefix(java.lang.String qualifiedName)
boolean
test(java.lang.String regex)
java.lang.String
toString()
-
-
-
Method Detail
-
include
public FilterBuilder include(java.lang.String regex)
include a regular expression
-
exclude
public FilterBuilder exclude(java.lang.String regex)
exclude a regular expression
-
add
public FilterBuilder add(java.util.function.Predicate<java.lang.String> filter)
add a Predicate to the chain of predicates
-
includePackage
public FilterBuilder includePackage(java.lang.Class<?> aClass)
include a package of a given class
-
excludePackage
public FilterBuilder excludePackage(java.lang.Class<?> aClass)
exclude a package of a given class
-
includePackage
public FilterBuilder includePackage(java.lang.String... prefixes)
include packages of given prefixes
-
excludePackage
public FilterBuilder excludePackage(java.lang.String prefix)
exclude a package of a given prefix
-
packageNameRegex
private static java.lang.String packageNameRegex(java.lang.Class<?> aClass)
-
prefix
public static java.lang.String prefix(java.lang.String qualifiedName)
-
toString
public java.lang.String toString()
- Overrides:
toString
in classjava.lang.Object
-
test
public boolean test(java.lang.String regex)
- Specified by:
test
in interfacejava.util.function.Predicate<java.lang.String>
-
parse
public static FilterBuilder parse(java.lang.String includeExcludeString)
Parses a string representation of an include/exclude filter.The given includeExcludeString is a comma separated list of regexes, each starting with either + or - to indicate include/exclude.
For example parsePackages("-java\\..*, -javax\\..*, -sun\\..*, -com\\.sun\\..*") or parse("+com\\.myn\\..*,-com\\.myn\\.excluded\\..*"). Note that "-java\\..*" will block "java.foo" but not "javax.foo".
See also the more useful
parsePackages(String)
method.
-
parsePackages
public static FilterBuilder parsePackages(java.lang.String includeExcludeString)
Parses a string representation of an include/exclude filter.The given includeExcludeString is a comma separated list of package name segments, each starting with either + or - to indicate include/exclude.
For example parsePackages("-java, -javax, -sun, -com.sun") or parse("+com.myn,-com.myn.excluded"). Note that "-java" will block "java.foo" but not "javax.foo".
The input strings "-java" and "-java." are equivalent.
-
-