org.apache.tools.ant.taskdefs

Class MacroInstance

Implemented Interfaces:
Cloneable, DynamicAttribute, TaskContainer

public class MacroInstance
extends Task
implements DynamicAttribute, TaskContainer

The class to be placed in the ant type definition. It is given a pointer to the template definition, and makes a copy of the unknown element, substituting the parameter values in attributes and text.
Since:
Ant 1.6

Nested Class Summary

static class
MacroInstance.Element
Embedded element in macro instance

Field Summary

Fields inherited from class org.apache.tools.ant.Task

target, taskName, taskType, wrapper

Fields inherited from class org.apache.tools.ant.ProjectComponent

description, location, project

Method Summary

void
addTask(Task nestedTask)
Add a unknownElement for the macro instances nested elements.
void
addText(String text)
Set the text contents for the macro.
Object
createDynamicElement(String name)
Deprecated. since 1.6.x.
void
execute()
Execute the templates instance.
MacroDef
getMacroDef()
void
setDynamicAttribute(String name, String value)
A parameter name value pair as a xml attribute.
void
setMacroDef(MacroDef macroDef)
Called from MacroDef.MyAntTypeDefinition#create()

Methods inherited from class org.apache.tools.ant.Task

bindToOwner, execute, getOwningTarget, getRuntimeConfigurableWrapper, getTaskName, getTaskType, getWrapper, handleErrorFlush, handleErrorOutput, handleFlush, handleInput, handleOutput, init, isInvalid, log, log, log, log, maybeConfigure, perform, reconfigure, setOwningTarget, setRuntimeConfigurableWrapper, setTaskName, setTaskType

Methods inherited from class org.apache.tools.ant.ProjectComponent

clone, getDescription, getLocation, getProject, log, log, setDescription, setLocation, setProject

Method Details

addTask

public void addTask(Task nestedTask)
Add a unknownElement for the macro instances nested elements.
Specified by:
addTask in interface TaskContainer
Parameters:
nestedTask - a nested element.

addText

public void addText(String text)
Set the text contents for the macro.
Parameters:
text - the text to be added to the macro.

createDynamicElement

public Object createDynamicElement(String name)
            throws BuildException

Deprecated. since 1.6.x.

Method present for BC purposes.
Parameters:
name - not used
Returns:
nothing
Throws:
BuildException - always

execute

public void execute()
Execute the templates instance. Copies the unknown element, substitutes the attributes, and calls perform on the unknown element.
Overrides:
execute in interface Task

getMacroDef

public MacroDef getMacroDef()
Returns:
the macro definition object for this macro instance.

setDynamicAttribute

public void setDynamicAttribute(String name,
                                String value)
A parameter name value pair as a xml attribute.
Specified by:
setDynamicAttribute in interface DynamicAttribute
Parameters:
name - the name of the attribute
value - the value of the attribute

setMacroDef

public void setMacroDef(MacroDef macroDef)
Called from MacroDef.MyAntTypeDefinition#create()
Parameters:
macroDef - a MacroDef value