Package org.jboss.modules.filter
Class PathFilters
- java.lang.Object
-
- org.jboss.modules.filter.PathFilters
-
public final class PathFilters extends java.lang.ObjectStatic factory methods for path filter types.- Author:
- David M. Lloyd
-
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static PathFilteracceptAll()Get a filter which always returnstrue.static PathFilterall(java.util.Collection<PathFilter> filters)Get a path filter which returnstrueif all of the given filters returntrue.static PathFilterall(PathFilter... filters)Get a path filter which returnstrueif all of the given filters returntrue.static PathFilterany(java.util.Collection<PathFilter> filters)Get a path filter which returnstrueif any of the given filters returntrue.static PathFilterany(PathFilter... filters)Get a path filter which returnstrueif any of the given filters returntrue.static java.util.Iterator<Resource>filtered(PathFilter filter, java.util.Iterator<Resource> original)Get a filtered view of a resource iteration.static PathFiltergetDefaultImportFilter()Get the default import path filter, which excludes all ofMETA-INFand its subdirectories.static PathFiltergetDefaultImportFilterWithServices()Get the default import-with-services path filter which excludes all ofMETA-INFand its subdirectories, with the exception ofMETA-INF/services.static PathFiltergetMetaInfFilter()Get a filter which matches the path"META-INF".static PathFiltergetMetaInfServicesFilter()Get a filter which matches the path"META-INF/services".static PathFiltergetMetaInfSubdirectoriesFilter()Get a filter which matches any subdirectory of the path"META-INF".static PathFiltergetMetaInfSubdirectoriesWithoutMetaInfFilter()Get a filter which matches all ofMETA-INF's subdirectories, but notMETA-INFitself.static PathFilterin(java.util.Collection<java.lang.String> paths)Get a filter which returnstrueif the tested path is contained within the given collection.static PathFilterin(java.util.Set<java.lang.String> paths)Get a filter which returnstrueif the tested path is contained within the given set.static PathFilteris(java.lang.String path)Get a path filter which matches an exact path name.static PathFilterisChildOf(java.lang.String path)Get a path filter which matches any path which is a child of the given path name (not including the path name itself).static PathFilterisOrIsChildOf(java.lang.String path)Get a path filter which matches any path which is equal to, or a child of, the given path name.static PathFiltermatch(java.lang.String glob)Get a path filter which matches a glob.static MultiplePathFilterBuildermultiplePathFilterBuilder(boolean defaultValue)Get a builder for a multiple-path filter.static PathFilternone(java.util.Collection<PathFilter> filters)Get a path filter which returnstrueif none of the given filters returntrue.static PathFilternone(PathFilter... filters)Get a path filter which returnstrueif none of the given filters returntrue.static PathFilternot(PathFilter filter)Get a path filter which istruewhen the given filter isfalse, and vice-versa.static PathFilterrejectAll()Get a filter which always returnsfalse.
-
-
-
Method Detail
-
all
public static PathFilter all(PathFilter... filters)
Get a path filter which returnstrueif all of the given filters returntrue.- Parameters:
filters- the filters- Returns:
- the "all" filter
-
all
public static PathFilter all(java.util.Collection<PathFilter> filters)
Get a path filter which returnstrueif all of the given filters returntrue.- Parameters:
filters- the filters- Returns:
- the "all" filter
-
any
public static PathFilter any(PathFilter... filters)
Get a path filter which returnstrueif any of the given filters returntrue.- Parameters:
filters- the filters- Returns:
- the "any" filter
-
any
public static PathFilter any(java.util.Collection<PathFilter> filters)
Get a path filter which returnstrueif any of the given filters returntrue.- Parameters:
filters- the filters- Returns:
- the "any" filter
-
none
public static PathFilter none(PathFilter... filters)
Get a path filter which returnstrueif none of the given filters returntrue.- Parameters:
filters- the filters- Returns:
- the "none" filter
-
none
public static PathFilter none(java.util.Collection<PathFilter> filters)
Get a path filter which returnstrueif none of the given filters returntrue.- Parameters:
filters- the filters- Returns:
- the "none" filter
-
not
public static PathFilter not(PathFilter filter)
Get a path filter which istruewhen the given filter isfalse, and vice-versa.- Parameters:
filter- the filter- Returns:
- the inverting filter
-
match
public static PathFilter match(java.lang.String glob)
Get a path filter which matches a glob. The given glob is a path separated by "/" characters, which may include the special "*" and "**" segment strings which match any directory and any number of nested directories, respectively.- Parameters:
glob- the glob- Returns:
- a filter which returns
trueif the glob matches
-
is
public static PathFilter is(java.lang.String path)
Get a path filter which matches an exact path name.- Parameters:
path- the path name- Returns:
- a filter which returns
trueif the path name is an exact match
-
isChildOf
public static PathFilter isChildOf(java.lang.String path)
Get a path filter which matches any path which is a child of the given path name (not including the path name itself).- Parameters:
path- the path name- Returns:
- a filter which returns
trueif the path name is a child of the given path
-
isOrIsChildOf
public static PathFilter isOrIsChildOf(java.lang.String path)
Get a path filter which matches any path which is equal to, or a child of, the given path name.- Parameters:
path- the path name- Returns:
- a filter which returns
trueif the path name is equal to, or a child of, the given path
-
multiplePathFilterBuilder
public static MultiplePathFilterBuilder multiplePathFilterBuilder(boolean defaultValue)
Get a builder for a multiple-path filter. Such a filter contains multiple filters, each associated with a flag which indicates that matching paths should be included or excluded.- Parameters:
defaultValue- the value to return if none of the nested filters match- Returns:
- the builder
-
acceptAll
public static PathFilter acceptAll()
Get a filter which always returnstrue.- Returns:
- the accept-all filter
-
rejectAll
public static PathFilter rejectAll()
Get a filter which always returnsfalse.- Returns:
- the reject-all filter
-
in
public static PathFilter in(java.util.Set<java.lang.String> paths)
Get a filter which returnstrueif the tested path is contained within the given set. Each member of the set is a path separated by "/" characters;nulls are disallowed.- Parameters:
paths- the path set- Returns:
- the filter
-
in
public static PathFilter in(java.util.Collection<java.lang.String> paths)
Get a filter which returnstrueif the tested path is contained within the given collection. Each member of the collection is a path separated by "/" characters;nulls are disallowed.- Parameters:
paths- the path collection- Returns:
- the filter
-
filtered
public static java.util.Iterator<Resource> filtered(PathFilter filter, java.util.Iterator<Resource> original)
Get a filtered view of a resource iteration. Only resources which pass the given filter are accepted.- Parameters:
filter- the filter to checkoriginal- the original iterator- Returns:
- the filtered iterator
-
getDefaultImportFilter
public static PathFilter getDefaultImportFilter()
Get the default import path filter, which excludes all ofMETA-INFand its subdirectories.- Returns:
- the default import path filter
-
getDefaultImportFilterWithServices
public static PathFilter getDefaultImportFilterWithServices()
Get the default import-with-services path filter which excludes all ofMETA-INFand its subdirectories, with the exception ofMETA-INF/services.- Returns:
- the default import-with-services path filter
-
getMetaInfFilter
public static PathFilter getMetaInfFilter()
Get a filter which matches the path"META-INF".- Returns:
- the filter
-
getMetaInfSubdirectoriesFilter
public static PathFilter getMetaInfSubdirectoriesFilter()
Get a filter which matches any subdirectory of the path"META-INF".- Returns:
- the filter
-
getMetaInfServicesFilter
public static PathFilter getMetaInfServicesFilter()
Get a filter which matches the path"META-INF/services".- Returns:
- the filter
-
getMetaInfSubdirectoriesWithoutMetaInfFilter
public static PathFilter getMetaInfSubdirectoriesWithoutMetaInfFilter()
Get a filter which matches all ofMETA-INF's subdirectories, but notMETA-INFitself.- Returns:
- the filter
-
-