+ * This is useful for logging purposes.
+ *
+ * @param element The element to describe.
+ * Must not be null
.
+ *
+ * @return a description of the element type
+ *
+ * @since 1.95, Ant 1.5
+ */
+ public String getElementName(Object element) {
+ Hashtable elements = taskClassDefinitions;
+ Class elementClass = element.getClass();
+ String typeName = "task";
+ if (!elements.contains(elementClass)) {
+ elements = dataClassDefinitions;
+ typeName = "data type";
+ if (!elements.contains(elementClass)) {
+ elements = null;
+ }
+ }
+
+ if (elements != null) {
+ Enumeration e = elements.keys();
+ while (e.hasMoreElements()) {
+ String name = (String) e.nextElement();
+ Class clazz = (Class) elements.get(name);
+ if (elementClass.equals(clazz)) {
+ return "The <" + name + "> " + typeName;
+ }
+ }
+ }
+
+ return "Class " + elementClass.getName();
+ }
+
/**
* Gets the Antlib factory of the Project
*
diff --git a/proposal/mutant/src/java/common/org/apache/ant/common/model/BuildElement.java b/proposal/mutant/src/java/common/org/apache/ant/common/model/BuildElement.java
index b1fe83435..2a93a2947 100644
--- a/proposal/mutant/src/java/common/org/apache/ant/common/model/BuildElement.java
+++ b/proposal/mutant/src/java/common/org/apache/ant/common/model/BuildElement.java
@@ -61,7 +61,7 @@ import java.util.Map;
import org.apache.ant.common.util.Location;
/**
- * A BuildElement is a holder configuration information for an element of
+ * A BuildElement is a holder of configuration information for an element of
* the build. BuildElements may be grouped into a hierarchy to capture any
* level of element nesting.
*