Package org.eclipse.jetty.webapp
Class ClasspathPattern
- java.lang.Object
-
- java.util.AbstractCollection<E>
-
- java.util.AbstractSet<java.lang.String>
-
- org.eclipse.jetty.webapp.ClasspathPattern
-
- All Implemented Interfaces:
java.lang.Iterable<java.lang.String>,java.util.Collection<java.lang.String>,java.util.Set<java.lang.String>
public class ClasspathPattern extends java.util.AbstractSet<java.lang.String>Classpath classes list performs pattern matching of a class name against an internal array of classpath pattern entries. A class pattern is a string of one of the forms:- 'org.package.SomeClass' will match a specific class
- 'org.package.' will match a specific package hierarchy
- 'org.package.SomeClass$NestedClass ' will match a nested class exactly otherwise. Nested classes are matched by their containing class. (eg. org.example.MyClass matches org.example.MyClass$AnyNestedClass)
- 'file:///some/location/' - A file system directory from which the class was loaded
- 'file:///some/location.jar' - The URI of a jar file from which the class was loaded
- 'jrt:/modulename' - A Java9 module name
- Any of the above patterns preceded by '-' will exclude rather than include the match.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classClasspathPattern.ByClassstatic classClasspathPattern.ByLocationstatic classClasspathPattern.ByLocationOrModulestatic classClasspathPattern.ByModulestatic classClasspathPattern.ByPackagestatic classClasspathPattern.ByPackageOrName
-
Constructor Summary
Constructors Constructor Description ClasspathPattern()ClasspathPattern(java.lang.String pattern)ClasspathPattern(java.lang.String[] patterns)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description booleanadd(java.lang.String pattern)booleanadd(java.lang.String... pattern)protected booleanadd(org.eclipse.jetty.webapp.ClasspathPattern.Entry entry)voidclear()booleanexclude(java.lang.String name)booleanexclude(java.lang.String... name)java.lang.String[]getPatterns()booleaninclude(java.lang.String name)booleaninclude(java.lang.String... name)java.util.Iterator<java.lang.String>iterator()booleanmatch(java.lang.Class<?> clazz)Match the class name against the patternbooleanmatch(java.lang.String name)Match the class name against the patternbooleanmatch(java.lang.String name, java.net.URL url)protected org.eclipse.jetty.webapp.ClasspathPattern.EntrynewEntry(java.lang.String pattern)protected org.eclipse.jetty.webapp.ClasspathPattern.EntrynewEntry(java.lang.String name, boolean inclusive)booleanremove(java.lang.Object o)intsize()-
Methods inherited from class java.util.AbstractCollection
addAll, contains, containsAll, isEmpty, retainAll, toArray, toArray, toString
-
-
-
-
Method Detail
-
include
public boolean include(java.lang.String name)
-
include
public boolean include(java.lang.String... name)
-
exclude
public boolean exclude(java.lang.String name)
-
exclude
public boolean exclude(java.lang.String... name)
-
add
public boolean add(java.lang.String pattern)
- Specified by:
addin interfacejava.util.Collection<java.lang.String>- Specified by:
addin interfacejava.util.Set<java.lang.String>- Overrides:
addin classjava.util.AbstractCollection<java.lang.String>
-
add
public boolean add(java.lang.String... pattern)
-
newEntry
protected org.eclipse.jetty.webapp.ClasspathPattern.Entry newEntry(java.lang.String pattern)
-
newEntry
protected org.eclipse.jetty.webapp.ClasspathPattern.Entry newEntry(java.lang.String name, boolean inclusive)
-
add
protected boolean add(org.eclipse.jetty.webapp.ClasspathPattern.Entry entry)
-
remove
public boolean remove(java.lang.Object o)
- Specified by:
removein interfacejava.util.Collection<java.lang.String>- Specified by:
removein interfacejava.util.Set<java.lang.String>- Overrides:
removein classjava.util.AbstractCollection<java.lang.String>
-
clear
public void clear()
- Specified by:
clearin interfacejava.util.Collection<java.lang.String>- Specified by:
clearin interfacejava.util.Set<java.lang.String>- Overrides:
clearin classjava.util.AbstractCollection<java.lang.String>
-
iterator
public java.util.Iterator<java.lang.String> iterator()
- Specified by:
iteratorin interfacejava.util.Collection<java.lang.String>- Specified by:
iteratorin interfacejava.lang.Iterable<java.lang.String>- Specified by:
iteratorin interfacejava.util.Set<java.lang.String>- Specified by:
iteratorin classjava.util.AbstractCollection<java.lang.String>
-
size
public int size()
- Specified by:
sizein interfacejava.util.Collection<java.lang.String>- Specified by:
sizein interfacejava.util.Set<java.lang.String>- Specified by:
sizein classjava.util.AbstractCollection<java.lang.String>
-
getPatterns
public java.lang.String[] getPatterns()
- Returns:
- array of classpath patterns
-
match
public boolean match(java.lang.String name)
Match the class name against the pattern- Parameters:
name- name of the class to match- Returns:
- true if class matches the pattern
-
match
public boolean match(java.lang.Class<?> clazz)
Match the class name against the pattern- Parameters:
clazz- A class to try to match- Returns:
- true if class matches the pattern
-
match
public boolean match(java.lang.String name, java.net.URL url)
-
-