org.apache.tools.ant.taskdefs
Class MacroDef

java.lang.Object
  extended by org.apache.tools.ant.ProjectComponent
      extended by org.apache.tools.ant.Task
          extended by org.apache.tools.ant.taskdefs.AntlibDefinition
              extended by org.apache.tools.ant.taskdefs.MacroDef
All Implemented Interfaces:
java.lang.Cloneable

public class MacroDef
extends AntlibDefinition

Describe class MacroDef here.

Since:
Ant 1.6

Nested Class Summary
static class MacroDef.Attribute
          An attribute for the MacroDef task.
static class MacroDef.NestedSequential
          The class corresponding to the sequential nested element.
static class MacroDef.TemplateElement
          A nested element for the MacroDef task.
static class MacroDef.Text
          A nested text element for the MacroDef task.
 
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
MacroDef()
           
 
Method Summary
 void addConfiguredAttribute(MacroDef.Attribute attribute)
          Add an attribute element.
 void addConfiguredElement(MacroDef.TemplateElement element)
          Add an element element.
 void addConfiguredText(MacroDef.Text text)
          Add the text element.
 MacroDef.NestedSequential createSequential()
          This is the sequential nested element of the macrodef.
 void execute()
          Create a new ant type based on the embedded tasks and types.
 java.util.List getAttributes()
          Gets this macro's attribute (and define?) list.
 boolean getBackTrace()
           
 java.util.Map getElements()
          Gets this macro's elements.
 UnknownElement getNestedTask()
          Convert the nested sequential to an unknown element
 MacroDef.Text getText()
           
static boolean isValidNameCharacter(char c)
          Check if a character is a valid character for an element or attribute name.
 boolean sameDefinition(java.lang.Object obj)
          Equality method for this definition
 void setBackTrace(boolean backTrace)
          Set the backTrace attribute.
 void setName(java.lang.String name)
          Name of the definition
 boolean similar(java.lang.Object obj)
          Similar method for this definition
 
Methods inherited from class org.apache.tools.ant.taskdefs.AntlibDefinition
getAntlibClassLoader, getURI, setAntlibClassLoader, setURI
 
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

MacroDef

public MacroDef()
Method Detail

setName

public void setName(java.lang.String name)
Name of the definition

Parameters:
name - the name of the definition

addConfiguredText

public void addConfiguredText(MacroDef.Text text)
Add the text element.

Parameters:
text - the nested text element to add
Since:
ant 1.6.1

getText

public MacroDef.Text getText()
Returns:
the nested text element
Since:
ant 1.6.1

setBackTrace

public void setBackTrace(boolean backTrace)
Set the backTrace attribute.

Parameters:
backTrace - if true and the macro instance generates an error, a backtrace of the location within the macro and call to the macro will be output. if false, only the location of the call to the macro will be shown. Default is true.
Since:
ant 1.7

getBackTrace

public boolean getBackTrace()
Returns:
the backTrace attribute.
Since:
ant 1.7

createSequential

public MacroDef.NestedSequential createSequential()
This is the sequential nested element of the macrodef.

Returns:
a sequential element to be configured.

getNestedTask

public UnknownElement getNestedTask()
Convert the nested sequential to an unknown element

Returns:
the nested sequential as an unknown element.

getAttributes

public java.util.List getAttributes()
Gets this macro's attribute (and define?) list.

Returns:
the nested Attributes

getElements

public java.util.Map getElements()
Gets this macro's elements.

Returns:
the map nested elements, keyed by element name, with MacroDef.TemplateElement values.

isValidNameCharacter

public static boolean isValidNameCharacter(char c)
Check if a character is a valid character for an element or attribute name.

Parameters:
c - the character to check
Returns:
true if the character is a letter or digit or '.' or '-' attribute name

addConfiguredAttribute

public void addConfiguredAttribute(MacroDef.Attribute attribute)
Add an attribute element.

Parameters:
attribute - an attribute nested element.

addConfiguredElement

public void addConfiguredElement(MacroDef.TemplateElement element)
Add an element element.

Parameters:
element - an element nested element.

execute

public void execute()
Create a new ant type based on the embedded tasks and types.

Overrides:
execute in class Task

similar

public boolean similar(java.lang.Object obj)
Similar method for this definition

Parameters:
obj - another definition
Returns:
true if the definitions are similar

sameDefinition

public boolean sameDefinition(java.lang.Object obj)
Equality method for this definition

Parameters:
obj - another definition
Returns:
true if the definitions are the same