Package groovy.ant
Class AntBuilder
- java.lang.Object
-
- groovy.lang.GroovyObjectSupport
-
- groovy.util.BuilderSupport
-
- groovy.ant.AntBuilder
-
- All Implemented Interfaces:
groovy.lang.GroovyObject
public class AntBuilder extends groovy.util.BuilderSupportAllows Ant tasks to be used with a Groovy builder-style markup. Requires that {{ant.jar}} is on your classpath which will happen automatically if you are using the Groovy distribution but will be up to you to organize if you are embedding Groovy. If you wish to use the optional tasks you will need to add one or more additional jars from the ant distribution to your classpath - see the library dependencies for more details.
-
-
Constructor Summary
Constructors Constructor Description AntBuilder()AntBuilder(org.apache.tools.ant.Project project)AntBuilder(org.apache.tools.ant.Project project, org.apache.tools.ant.Target owningTarget)AntBuilder(org.apache.tools.ant.Task parentTask)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description protected static AttributesbuildAttributes(Map attributes)Builds anAttributesfrom aMapprotected ObjectcreateNode(Object tagName)protected ObjectcreateNode(Object name, Object value)protected ObjectcreateNode(Object name, Map attributes)protected ObjectcreateNode(Object name, Map attributes, Object value)protected static org.apache.tools.ant.ProjectcreateProject()protected ObjectdoInvokeMethod(String methodName, Object name, Object args)We don't want to return the node as created increateNode(Object, Map, Object)but the one made ready bynodeCompleted(Object, Object)org.apache.tools.ant.ProjectgetAntProject()org.apache.tools.ant.helper.AntXMLContextgetAntXmlContext()Gets the xml context of Ant used while creating tasksorg.apache.tools.ant.ProjectgetProject()# Gets the Ant project in which the tasks are executedbooleanisSaveStreams()Whether stdin, stdout, stderr streams are saved.protected voidnodeCompleted(Object parent, Object node)Determines, when the ANT Task that is represented by the "node" should perform.protected voidsetParent(Object parent, Object child)voidsetSaveStreams(boolean saveStreams)Indicates that we save stdin, stdout, stderr and replace them while AntBuilder is executing tasks with streams that funnel the normal streams into Ant's logs.protected voidsetText(Object task, String text)-
Methods inherited from class groovy.util.BuilderSupport
getCurrent, getName, invokeMethod, invokeMethod, postNodeCompletion, setClosureDelegate, setCurrent
-
-
-
-
Method Detail
-
getProject
public org.apache.tools.ant.Project getProject()
# Gets the Ant project in which the tasks are executed- Returns:
- the project
-
getAntXmlContext
public org.apache.tools.ant.helper.AntXMLContext getAntXmlContext()
Gets the xml context of Ant used while creating tasks- Returns:
- the Ant xml context
-
isSaveStreams
public boolean isSaveStreams()
Whether stdin, stdout, stderr streams are saved.- Returns:
- true if we are saving streams
- See Also:
setSaveStreams(boolean)
-
setSaveStreams
public void setSaveStreams(boolean saveStreams)
Indicates that we save stdin, stdout, stderr and replace them while AntBuilder is executing tasks with streams that funnel the normal streams into Ant's logs.- Parameters:
saveStreams- set to false to disable this behavior
-
createProject
protected static org.apache.tools.ant.Project createProject()
- Returns:
- Factory method to create new Project instances
-
setParent
protected void setParent(Object parent, Object child)
- Specified by:
setParentin classgroovy.util.BuilderSupport
-
doInvokeMethod
protected Object doInvokeMethod(String methodName, Object name, Object args)
We don't want to return the node as created increateNode(Object, Map, Object)but the one made ready bynodeCompleted(Object, Object)- Overrides:
doInvokeMethodin classgroovy.util.BuilderSupport- See Also:
BuilderSupport.doInvokeMethod(java.lang.String, java.lang.Object, java.lang.Object)
-
nodeCompleted
protected void nodeCompleted(Object parent, Object node)
Determines, when the ANT Task that is represented by the "node" should perform. Node must be an ANT Task or no "perform" is called. If node is an ANT Task, it performs right after complete construction. If node is nested in a TaskContainer, calling "perform" is delegated to that TaskContainer.- Overrides:
nodeCompletedin classgroovy.util.BuilderSupport- Parameters:
parent- note: null when node is rootnode- the node that now has all its children applied
-
createNode
protected Object createNode(Object tagName)
- Specified by:
createNodein classgroovy.util.BuilderSupport
-
createNode
protected Object createNode(Object name, Object value)
- Specified by:
createNodein classgroovy.util.BuilderSupport
-
createNode
protected Object createNode(Object name, Map attributes, Object value)
- Specified by:
createNodein classgroovy.util.BuilderSupport
-
buildAttributes
protected static Attributes buildAttributes(Map attributes)
Builds anAttributesfrom aMap- Parameters:
attributes- the attributes to wrap- Returns:
- the wrapped attributes
-
createNode
protected Object createNode(Object name, Map attributes)
- Specified by:
createNodein classgroovy.util.BuilderSupport
-
getAntProject
public org.apache.tools.ant.Project getAntProject()
-
-