org.codehaus.groovy.ant
Class RootLoaderRef
java.lang.Object
  
org.apache.tools.ant.ProjectComponent
      
org.apache.tools.ant.Task
          
org.apache.tools.ant.taskdefs.MatchingTask
              
org.codehaus.groovy.ant.RootLoaderRef
- All Implemented Interfaces: 
 - Cloneable, SelectorContainer
 
public class RootLoaderRef
- extends MatchingTask
 
Sets the RootLoader as reference.
 Reexecution of this task will set a new instance of RootLoader for
 the reference. 
 arguments:
 
 
 all arguments are required.
 As ant requires an AntClassLoader as reference, this will create a RootLoader
 and set an AntClassLoader as child and stored in the reference. The AntClassLoader
 instance will not have a classpath nor will it have access to the classpath somehow,
 all loading is done by the RootLoader parent. To avoid problems with loading classes 
 multiple times and using them at the same time, this task will filter out the ant jars
 and the commons-logging jars. This only works if the ant jars are starting with "ant-" and
 the logging jar starts with "commons-logging-".
 
 This was needed because if ant wants to access a task argument that uses for example a Path
 it look for a matching method which includes a matching class. But two classes of the same name
 with different classloaders are different, so ant would not be able to find the method.
- Version:
 
  - $Revision$
 
- Author:
 
  - Jochen Theodorou
 
- See Also:
 RootLoader
 
 
 
 
 
 
| Methods inherited from class org.apache.tools.ant.taskdefs.MatchingTask | 
add, addAnd, addContains, addContainsRegexp, addCustom, addDate, addDepend, addDepth, addDifferent, addFilename, addMajority, addModified, addNone, addNot, addOr, addPresent, addSelector, addSize, addType, appendSelector, createExclude, createExcludesFile, createInclude, createIncludesFile, createPatternSet, getDirectoryScanner, getImplicitFileSet, getSelectors, hasSelectors, selectorCount, selectorElements, setCaseSensitive, setDefaultexcludes, setExcludes, setExcludesfile, setFollowSymlinks, setIncludes, setIncludesfile, setProject, XsetIgnore, XsetItems | 
 
| Methods inherited from class org.apache.tools.ant.Task | 
bindToOwner, getOwningTarget, getRuntimeConfigurableWrapper, getTaskName, getTaskType, getWrapper, handleErrorFlush, handleErrorOutput, handleFlush, handleInput, handleOutput, init, isInvalid, log, log, log, log, maybeConfigure, perform, reconfigure, setOwningTarget, setRuntimeConfigurableWrapper, setTaskName, setTaskType | 
 
 
 
RootLoaderRef
public RootLoaderRef()
setRef
public void setRef(String n)
- sets the name of the reference which should store the Loader
 
 
execute
public void execute()
             throws BuildException
- Overrides:
 execute in class Task
 
- Throws:
 BuildException
 
setClasspath
public void setClasspath(Path classpath)
- Set the classpath to be used for this compilation.
- Parameters:
 classpath - an Ant Path object containing the compilation classpath.
 
 
setClasspathRef
public void setClasspathRef(Reference r)
- Adds a reference to a classpath defined elsewhere.
- Parameters:
 r - a reference to a classpath
 
 
createClasspath
public Path createClasspath()
- Adds a path to the classpath.
- Returns:
 - a class path to be configured