public class FilterBuilder
extends java.lang.Object
implements com.google.common.base.Predicate<java.lang.String>
For example:
Predicatefilter1 = FilterBuilder.parsePackages("-java, "-javax"); Predicate filter2 = new FilterBuilder().include(".*").exclude("java.*");
Modifier and Type | Class and Description |
---|---|
static class |
FilterBuilder.Exclude |
static class |
FilterBuilder.Include |
static class |
FilterBuilder.Matcher |
Modifier and Type | Field and Description |
---|---|
private java.util.List<com.google.common.base.Predicate<java.lang.String>> |
chain |
Modifier | Constructor and Description |
---|---|
|
FilterBuilder() |
private |
FilterBuilder(java.lang.Iterable<com.google.common.base.Predicate<java.lang.String>> filters) |
Modifier and Type | Method and Description |
---|---|
FilterBuilder |
add(com.google.common.base.Predicate<java.lang.String> filter)
add a Predicate to the chain of predicates
|
boolean |
apply(java.lang.String regex) |
FilterBuilder |
exclude(java.lang.String regex)
exclude a regular expression
|
FilterBuilder |
excludePackage(java.lang.Class<?> aClass)
exclude a package of a given class
|
FilterBuilder |
excludePackage(java.lang.String prefix)
exclude a package of a given prefix
|
FilterBuilder |
include(java.lang.String regex)
include a regular expression
|
FilterBuilder |
includePackage(java.lang.Class<?> aClass)
include a package of a given class
|
FilterBuilder |
includePackage(java.lang.String... prefixes)
include packages of given prefixes
|
private 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) |
java.lang.String |
toString() |
private final java.util.List<com.google.common.base.Predicate<java.lang.String>> chain
public FilterBuilder()
private FilterBuilder(java.lang.Iterable<com.google.common.base.Predicate<java.lang.String>> filters)
public FilterBuilder include(java.lang.String regex)
public FilterBuilder exclude(java.lang.String regex)
public FilterBuilder add(com.google.common.base.Predicate<java.lang.String> filter)
public FilterBuilder includePackage(java.lang.Class<?> aClass)
public FilterBuilder excludePackage(java.lang.Class<?> aClass)
public FilterBuilder includePackage(java.lang.String... prefixes)
public FilterBuilder excludePackage(java.lang.String prefix)
private static java.lang.String packageNameRegex(java.lang.Class<?> aClass)
public static java.lang.String prefix(java.lang.String qualifiedName)
public java.lang.String toString()
toString
in class java.lang.Object
public boolean apply(java.lang.String regex)
apply
in interface com.google.common.base.Predicate<java.lang.String>
public static FilterBuilder parse(java.lang.String includeExcludeString)
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.
public static FilterBuilder parsePackages(java.lang.String includeExcludeString)
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.