org.apache.tools.ant.util
Class ClasspathUtils.Delegate
java.lang.Object
org.apache.tools.ant.util.ClasspathUtils.Delegate
- ClasspathUtils
public static class ClasspathUtils.Delegate
extends java.lang.Object
Delegate that helps out any specific ProjectComponent that needs
dynamic classloading.
Ant ProjectComponents that need a to be able to dynamically load
Classes and instantiate them often expose the following ant syntax
sugar:
- nested <classpath>
- attribute @classpathref
- attribute @classname
This class functions as a delegate handling the configuration
issues for this recuring pattern. Its usage pattern, as the name
suggests is delegation, not inheritance.
- Ant 1.6
createClasspath
public Path createClasspath()
Delegate method handling the <classpath> tag.
This nested path-like structure can set a path to add to the
classpath
- the created path
getClassLoadId
public String getClassLoadId()
Computes the loaderId based on the configuration of the component.
getClassLoader
public ClassLoader getClassLoader()
Finds or creates the classloader for this
- The class loader
getClasspath
public Path getClasspath()
The classpath.
isReverseLoader
public boolean isReverseLoader()
newInstance
public Object newInstance()
Helper method obtaining a fresh instance of the class specified
in the @classname and using the specified classpath.
- the fresh instantiated object.
setClassname
public void setClassname(String fcqn)
Delegate method handling the @classname attribute.
This attribute sets the full qualified class name of the class
to lad and instantiate
fcqn
-
setClasspath
public void setClasspath(Path classpath)
This method is a Delegate method handling the @classpath attribute.
This attribute can set a path to add to the classpath
classpath
-
setClasspathref
public void setClasspathref(Reference r)
Delegate method handling the @classpathref attribute.
This attribute can add a referenced path-like structure to the
classpath
r
-
setLoaderRef
public void setLoaderRef(Reference r)
Sets the loaderRef
r
-
setReverseLoader
public void setReverseLoader(boolean reverseLoader)
Delegate method handling the @reverseLoader attribute.
This attribute can set a boolean indicating that the used
classloader should NOT follow the classical parent-first scheme.
By default this is supposed to be false
Caution: this behaviour is contradictory to the normal way
classloaders work. Do not let your ProjectComponent use it if
you are not really sure
reverseLoader
-
Copyright B) 2000-2005 Apache Software Foundation. All Rights Reserved.