Groovy Documentation

org.codehaus.groovy.ant
[Java] 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

public class RootLoaderRef
extends org.apache.tools.ant.taskdefs.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.
Authors:
Jochen Theodorou
Version:
\$Revision\$
See Also:
RootLoader


Method Summary
org.apache.tools.ant.types.Path createClasspath()

Adds a path to the classpath.

void execute()

void setClasspath(org.apache.tools.ant.types.Path classpath)

Set the classpath to be used for this compilation.

void setClasspathRef(org.apache.tools.ant.types.Reference r)

Adds a reference to a classpath defined elsewhere.

void setRef(java.lang.String n)

sets the name of the reference which should store the Loader

 
Methods inherited from class org.apache.tools.ant.taskdefs.MatchingTask
org.apache.tools.ant.taskdefs.MatchingTask#setCaseSensitive(boolean), org.apache.tools.ant.taskdefs.MatchingTask#setIncludes(java.lang.String), org.apache.tools.ant.taskdefs.MatchingTask#setExcludes(java.lang.String), org.apache.tools.ant.taskdefs.MatchingTask#setProject(org.apache.tools.ant.Project), org.apache.tools.ant.taskdefs.MatchingTask#createPatternSet(), org.apache.tools.ant.taskdefs.MatchingTask#createInclude(), org.apache.tools.ant.taskdefs.MatchingTask#createIncludesFile(), org.apache.tools.ant.taskdefs.MatchingTask#createExclude(), org.apache.tools.ant.taskdefs.MatchingTask#createExcludesFile(), org.apache.tools.ant.taskdefs.MatchingTask#addCustom(org.apache.tools.ant.types.selectors.ExtendSelector), org.apache.tools.ant.taskdefs.MatchingTask#addContains(org.apache.tools.ant.types.selectors.ContainsSelector), org.apache.tools.ant.taskdefs.MatchingTask#addPresent(org.apache.tools.ant.types.selectors.PresentSelector), org.apache.tools.ant.taskdefs.MatchingTask#addDepth(org.apache.tools.ant.types.selectors.DepthSelector), org.apache.tools.ant.taskdefs.MatchingTask#addDepend(org.apache.tools.ant.types.selectors.DependSelector), org.apache.tools.ant.taskdefs.MatchingTask#addContainsRegexp(org.apache.tools.ant.types.selectors.ContainsRegexpSelector), org.apache.tools.ant.taskdefs.MatchingTask#addModified(org.apache.tools.ant.types.selectors.modifiedselector.ModifiedSelector), org.apache.tools.ant.taskdefs.MatchingTask#XsetIgnore(java.lang.String), org.apache.tools.ant.taskdefs.MatchingTask#setIncludesfile(java.io.File), org.apache.tools.ant.taskdefs.MatchingTask#setExcludesfile(java.io.File), org.apache.tools.ant.taskdefs.MatchingTask#setDefaultexcludes(boolean), org.apache.tools.ant.taskdefs.MatchingTask#hasSelectors(), org.apache.tools.ant.taskdefs.MatchingTask#selectorCount(), org.apache.tools.ant.taskdefs.MatchingTask#getSelectors(org.apache.tools.ant.Project), org.apache.tools.ant.taskdefs.MatchingTask#selectorElements(), org.apache.tools.ant.taskdefs.MatchingTask#appendSelector(org.apache.tools.ant.types.selectors.FileSelector), org.apache.tools.ant.taskdefs.MatchingTask#addSelector(org.apache.tools.ant.types.selectors.SelectSelector), org.apache.tools.ant.taskdefs.MatchingTask#addAnd(org.apache.tools.ant.types.selectors.AndSelector), org.apache.tools.ant.taskdefs.MatchingTask#addOr(org.apache.tools.ant.types.selectors.OrSelector), org.apache.tools.ant.taskdefs.MatchingTask#addNot(org.apache.tools.ant.types.selectors.NotSelector), org.apache.tools.ant.taskdefs.MatchingTask#addNone(org.apache.tools.ant.types.selectors.NoneSelector), org.apache.tools.ant.taskdefs.MatchingTask#addMajority(org.apache.tools.ant.types.selectors.MajoritySelector), org.apache.tools.ant.taskdefs.MatchingTask#addSize(org.apache.tools.ant.types.selectors.SizeSelector), org.apache.tools.ant.taskdefs.MatchingTask#addDifferent(org.apache.tools.ant.types.selectors.DifferentSelector), org.apache.tools.ant.taskdefs.MatchingTask#addFilename(org.apache.tools.ant.types.selectors.FilenameSelector), org.apache.tools.ant.taskdefs.MatchingTask#addType(org.apache.tools.ant.types.selectors.TypeSelector), org.apache.tools.ant.taskdefs.MatchingTask#XsetItems(java.lang.String), org.apache.tools.ant.taskdefs.MatchingTask#setFollowSymlinks(boolean), org.apache.tools.ant.taskdefs.MatchingTask#add(org.apache.tools.ant.types.selectors.FileSelector), org.apache.tools.ant.taskdefs.MatchingTask#addDate(org.apache.tools.ant.types.selectors.DateSelector), org.apache.tools.ant.taskdefs.MatchingTask#getTaskName(), org.apache.tools.ant.taskdefs.MatchingTask#getTaskType(), org.apache.tools.ant.taskdefs.MatchingTask#setTaskType(java.lang.String), org.apache.tools.ant.taskdefs.MatchingTask#setTaskName(java.lang.String), org.apache.tools.ant.taskdefs.MatchingTask#getRuntimeConfigurableWrapper(), org.apache.tools.ant.taskdefs.MatchingTask#setRuntimeConfigurableWrapper(org.apache.tools.ant.RuntimeConfigurable), org.apache.tools.ant.taskdefs.MatchingTask#maybeConfigure(), org.apache.tools.ant.taskdefs.MatchingTask#getOwningTarget(), org.apache.tools.ant.taskdefs.MatchingTask#setOwningTarget(org.apache.tools.ant.Target), org.apache.tools.ant.taskdefs.MatchingTask#reconfigure(), org.apache.tools.ant.taskdefs.MatchingTask#perform(), org.apache.tools.ant.taskdefs.MatchingTask#bindToOwner(org.apache.tools.ant.Task), org.apache.tools.ant.taskdefs.MatchingTask#log(java.lang.String, java.lang.Throwable, int), org.apache.tools.ant.taskdefs.MatchingTask#log(java.lang.Throwable, int), org.apache.tools.ant.taskdefs.MatchingTask#log(java.lang.String), org.apache.tools.ant.taskdefs.MatchingTask#log(java.lang.String, int), org.apache.tools.ant.taskdefs.MatchingTask#init(), org.apache.tools.ant.taskdefs.MatchingTask#execute(), org.apache.tools.ant.taskdefs.MatchingTask#getProject(), org.apache.tools.ant.taskdefs.MatchingTask#clone(), org.apache.tools.ant.taskdefs.MatchingTask#getLocation(), org.apache.tools.ant.taskdefs.MatchingTask#setLocation(org.apache.tools.ant.Location), org.apache.tools.ant.taskdefs.MatchingTask#getDescription(), org.apache.tools.ant.taskdefs.MatchingTask#setDescription(java.lang.String), org.apache.tools.ant.taskdefs.MatchingTask#wait(long, int), org.apache.tools.ant.taskdefs.MatchingTask#wait(long), org.apache.tools.ant.taskdefs.MatchingTask#wait(), org.apache.tools.ant.taskdefs.MatchingTask#equals(java.lang.Object), org.apache.tools.ant.taskdefs.MatchingTask#toString(), org.apache.tools.ant.taskdefs.MatchingTask#hashCode(), org.apache.tools.ant.taskdefs.MatchingTask#getClass(), org.apache.tools.ant.taskdefs.MatchingTask#notify(), org.apache.tools.ant.taskdefs.MatchingTask#notifyAll()
 
Methods inherited from class org.apache.tools.ant.Task
org.apache.tools.ant.Task#getTaskName(), org.apache.tools.ant.Task#getTaskType(), org.apache.tools.ant.Task#setTaskType(java.lang.String), org.apache.tools.ant.Task#setTaskName(java.lang.String), org.apache.tools.ant.Task#getRuntimeConfigurableWrapper(), org.apache.tools.ant.Task#setRuntimeConfigurableWrapper(org.apache.tools.ant.RuntimeConfigurable), org.apache.tools.ant.Task#maybeConfigure(), org.apache.tools.ant.Task#getOwningTarget(), org.apache.tools.ant.Task#setOwningTarget(org.apache.tools.ant.Target), org.apache.tools.ant.Task#reconfigure(), org.apache.tools.ant.Task#perform(), org.apache.tools.ant.Task#bindToOwner(org.apache.tools.ant.Task), org.apache.tools.ant.Task#log(java.lang.String, java.lang.Throwable, int), org.apache.tools.ant.Task#log(java.lang.Throwable, int), org.apache.tools.ant.Task#log(java.lang.String), org.apache.tools.ant.Task#log(java.lang.String, int), org.apache.tools.ant.Task#init(), org.apache.tools.ant.Task#execute(), org.apache.tools.ant.Task#getProject(), org.apache.tools.ant.Task#setProject(org.apache.tools.ant.Project), org.apache.tools.ant.Task#clone(), org.apache.tools.ant.Task#getLocation(), org.apache.tools.ant.Task#setLocation(org.apache.tools.ant.Location), org.apache.tools.ant.Task#getDescription(), org.apache.tools.ant.Task#setDescription(java.lang.String), org.apache.tools.ant.Task#wait(long, int), org.apache.tools.ant.Task#wait(long), org.apache.tools.ant.Task#wait(), org.apache.tools.ant.Task#equals(java.lang.Object), org.apache.tools.ant.Task#toString(), org.apache.tools.ant.Task#hashCode(), org.apache.tools.ant.Task#getClass(), org.apache.tools.ant.Task#notify(), org.apache.tools.ant.Task#notifyAll()
 

Method Detail

createClasspath

public org.apache.tools.ant.types.Path createClasspath()
Adds a path to the classpath.
Returns:
a class path to be configured


execute

public void execute()


setClasspath

public void setClasspath(org.apache.tools.ant.types.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(org.apache.tools.ant.types.Reference r)
Adds a reference to a classpath defined elsewhere.
Parameters:
r - a reference to a classpath


setRef

public void setRef(java.lang.String n)
sets the name of the reference which should store the Loader


 

Groovy Documentation