JBoss Modules 1.0.2.GA

org.jboss.modules.filter
Class PathFilters

java.lang.Object
  extended by org.jboss.modules.filter.PathFilters

public final class PathFilters
extends Object

Static factory methods for path filter types.

Author:
David M. Lloyd

Method Summary
static PathFilter acceptAll()
          Get a filter which always returns true.
static PathFilter all(Collection<PathFilter> filters)
          Get a path filter which returns true if all of the given filters return true.
static PathFilter all(PathFilter... filters)
          Get a path filter which returns true if all of the given filters return true.
static PathFilter any(Collection<PathFilter> filters)
          Get a path filter which returns true if any of the given filters return true.
static PathFilter any(PathFilter... filters)
          Get a path filter which returns true if any of the given filters return true.
static PathFilter getDefaultImportFilter()
          Get the default import path filter, which excludes all of META-INF and its subdirectories.
static PathFilter getDefaultImportFilterWithServices()
          Get the default import-with-services path filter which excludes all of META-INF and its subdirectories, with the exception of META-INF/services.
static PathFilter getMetaInfFilter()
          Get a filter which matches the path "META-INF".
static PathFilter getMetaInfServicesFilter()
          Get a filter which matches the path "META-INF/services".
static PathFilter getMetaInfSubdirectoriesFilter()
          Get a filter which matches any subdirectory of the path "META-INF".
static PathFilter getMetaInfSubdirectoriesWithoutMetaInfFilter()
          Get a filter which matches all of META-INF's subdirectories, but not META-INF itself.
static PathFilter in(Set<String> paths)
          Get a filter which returns true if the tested path is contained within the given set.
static PathFilter is(String path)
          Get a path filter which matches an exact path name.
static PathFilter isChildOf(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 PathFilter match(String glob)
          Get a path filter which matches a glob.
static MultiplePathFilterBuilder multiplePathFilterBuilder(boolean defaultValue)
          Get a builder for a multiple-path filter.
static PathFilter not(PathFilter filter)
          Get a path filter which is true when the given filter is false, and vice-versa.
static PathFilter rejectAll()
          Get a filter which always returns false.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Method Detail

all

public static PathFilter all(PathFilter... filters)
Get a path filter which returns true if all of the given filters return true.

Parameters:
filters - the filters
Returns:
the "all" filter

all

public static PathFilter all(Collection<PathFilter> filters)
Get a path filter which returns true if all of the given filters return true.

Parameters:
filters - the filters
Returns:
the "all" filter

any

public static PathFilter any(PathFilter... filters)
Get a path filter which returns true if any of the given filters return true.

Parameters:
filters - the filters
Returns:
the "any" filter

any

public static PathFilter any(Collection<PathFilter> filters)
Get a path filter which returns true if any of the given filters return true.

Parameters:
filters - the filters
Returns:
the "any" filter

not

public static PathFilter not(PathFilter filter)
Get a path filter which is true when the given filter is false, and vice-versa.

Parameters:
filter - the filter
Returns:
the inverting filter

match

public static PathFilter match(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 true if the glob matches

is

public static PathFilter is(String path)
Get a path filter which matches an exact path name.

Parameters:
path - the path name
Returns:
a filter which returns true if the path name is an exact match

isChildOf

public static PathFilter isChildOf(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 true if the path name is 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 returns true.

Returns:
the accept-all filter

rejectAll

public static PathFilter rejectAll()
Get a filter which always returns false.

Returns:
the reject-all filter

in

public static PathFilter in(Set<String> paths)
Get a filter which returns true if 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

getDefaultImportFilter

public static PathFilter getDefaultImportFilter()
Get the default import path filter, which excludes all of META-INF and its subdirectories.

Returns:
the default import path filter

getDefaultImportFilterWithServices

public static PathFilter getDefaultImportFilterWithServices()
Get the default import-with-services path filter which excludes all of META-INF and its subdirectories, with the exception of META-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 of META-INF's subdirectories, but not META-INF itself.

Returns:
the filter

JBoss Modules 1.0.2.GA

Copyright © 2011 JBoss, a division of Red Hat, Inc.. All Rights Reserved.