org.apache.tools.ant.taskdefs
Class MacroInstance

java.lang.Object
  extended by org.apache.tools.ant.ProjectComponent
      extended by org.apache.tools.ant.Task
          extended by org.apache.tools.ant.taskdefs.MacroInstance
All Implemented Interfaces:
java.lang.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
 
Constructor Summary
MacroInstance()
           
 
Method Summary
 void addTask(Task nestedTask)
          Add a unknownElement for the macro instances nested elements.
 void addText(java.lang.String text)
          Set the text contents for the macro.
 java.lang.Object createDynamicElement(java.lang.String name)
          Deprecated. since 1.6.x.
 void execute()
          Execute the templates instance.
 MacroDef getMacroDef()
           
 void setDynamicAttribute(java.lang.String name, java.lang.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, 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, setDescription, setLocation, setProject
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

MacroInstance

public MacroInstance()
Method Detail

setMacroDef

public void setMacroDef(MacroDef macroDef)
Called from MacroDef.MyAntTypeDefinition#create()

Parameters:
macroDef - a MacroDef value

getMacroDef

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

setDynamicAttribute

public void setDynamicAttribute(java.lang.String name,
                                java.lang.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

createDynamicElement

public java.lang.Object createDynamicElement(java.lang.String name)
                                      throws BuildException
Deprecated. since 1.6.x.

Method present for BC purposes.

Parameters:
name - not used
Returns:
nothing
Throws:
BuildException - always

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(java.lang.String text)
Set the text contents for the macro.

Parameters:
text - the text to be added to the macro.

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 class Task