org.mortbay.jetty.webapp
Class JarScanner
java.lang.Object
org.mortbay.jetty.webapp.JarScanner
- Direct Known Subclasses:
- TagLibConfiguration.TagLibJarScanner
public abstract class JarScanner
- extends Object
JarScannerConfiguration
Abstract base class for configurations that want to scan jars in
WEB-INF/lib and the classloader hierarchy.
Jar name matching based on regexp patterns is provided.
Subclasses should implement the processEntry(URL jarUrl, JarEntry entry)
method to handle entries in jar files whose names match the supplied
pattern.
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
JarScanner
public JarScanner()
processEntry
public abstract void processEntry(URL jarUrl,
JarEntry entry)
setWebAppContext
public void setWebAppContext(WebAppContext context)
getWebAppContext
public WebAppContext getWebAppContext()
scan
public void scan(Pattern pattern,
ClassLoader loader,
boolean isNullInclusive,
boolean visitParent)
throws Exception
- Find jar names from the classloader matching a pattern.
If the pattern is null and isNullInclusive is true, then
all jar names in the classloader will match.
A pattern is a set of acceptable jar names. Each acceptable
jar name is a regex. Each regex can be separated by either a
"," or a "|". If you use a "|" this or's together the jar
name patterns. This means that ordering of the matches is
unimportant to you. If instead, you want to match particular
jar names, and you want to match them in order, you should
separate the regexs with "," instead.
Eg "aaa-.\*\.jar|bbb-.\*\.jar"
Will iterate over the jar names in the classloader and match
in any order.
Eg "aaa-\*\.jar,bbb-.\*\.jar"
Will iterate over the jar names in the classloader, matching
all those starting with "aaa-" first, then "bbb-".
If visitParent is true, then the pattern is applied to the
parent loader hierarchy. If false, it is only applied to the
classloader passed in.
- Parameters:
pattern
- loader
- isNullInclusive
- visitParent
-
- Throws:
Exception
processJars
public void processJars(Pattern pattern,
URL[] urls,
boolean isNullInclusive)
throws Exception
- Throws:
Exception
processJar
public void processJar(URL url)
throws Exception
- Throws:
Exception
Copyright © 2008 Mort Bay Consulting. All Rights Reserved.