org.apache.tools.ant
public class ComponentHelper extends Object
Since: Ant1.6
Field Summary | |
---|---|
static String | COMPONENT_HELPER_REFERENCE
reference under which we register ourselves with a project - |
Constructor Summary | |
---|---|
protected | ComponentHelper()
Creates a new ComponentHelper instance. |
Method Summary | |
---|---|
void | addDataTypeDefinition(String typeName, Class typeClass)
Adds a new datatype definition.
|
void | addDataTypeDefinition(AntTypeDefinition def)
Describe addDataTypeDefinition method here.
|
void | addTaskDefinition(String taskName, Class taskClass)
Adds a new task definition to the project.
|
void | checkTaskClass(Class taskClass)
Checks whether or not a class is suitable for serving as Ant task.
|
Object | createComponent(UnknownElement ue, String ns, String componentType)
Factory method to create the components.
|
Object | createComponent(String componentName)
Create an object for a component.
|
Object | createDataType(String typeName)
Creates a new instance of a data type.
|
Task | createTask(String taskType)
Creates a new instance of a task.
|
String | diagnoseCreationFailure(String componentName, String type)
Handler called to do decent diagnosis on instantiation failure. |
void | enterAntLib(String uri)
Called at the start of processing an antlib. |
void | exitAntLib()
Called at the end of processing an antlib. |
Hashtable | getAntTypeTable()
Returns the current datatype definition hashtable. |
Class | getComponentClass(String componentName)
Return the class of the component name.
|
static ComponentHelper | getComponentHelper(Project project)
Find a project component for a specific project, creating
it if it does not exist. |
String | getCurrentAntlibUri() |
Hashtable | getDataTypeDefinitions()
Returns the current type definition hashtable. |
AntTypeDefinition | getDefinition(String componentName)
Return the antTypeDefinition for a componentName. |
String | getElementName(Object element)
Returns a description of the type of the given element.
|
String | getElementName(Object o, boolean brief)
Returns a description of the type of the given element.
|
static String | getElementName(Project p, Object o, boolean brief)
Convenient way to get some element name even when you may not have a
Project context. |
ComponentHelper | getNext()
Get the next chained component helper.
|
Hashtable | getTaskDefinitions()
Returns the current task definition hashtable. |
void | initDefaultDefinitions()
This method is initialization code implementing the original ant component
loading from /org/apache/tools/ant/taskdefs/default.properties
and /org/apache/tools/ant/types/default.properties. |
void | initSubProject(ComponentHelper helper)
Used with creating child projects. |
void | setNext(ComponentHelper next)
Set the next chained component helper.
|
void | setProject(Project project)
Sets the project for this component helper.
|
Parameters: typeName The name of the datatype.
Must not be null
. typeClass The full name of the class implementing the datatype.
Must not be null
.
addDataTypeDefinition
method here.
Parameters: def an AntTypeDefinition
value.
Parameters: taskName The name of the task to add.
Must not be null
. taskClass The full name of the class implementing the task.
Must not be null
.
Throws: BuildException if the class is unsuitable for being an Ant task. An error level message is logged before this exception is thrown.
See Also: checkTaskClass
Parameters: taskClass The class to be checked.
Must not be null
.
Throws: BuildException if the class is unsuitable for being an Ant task. An error level message is logged before this exception is thrown.
Parameters: ue The Unknown Element creating this component. ns Namespace URI. Also available as ue.getNamespace(). componentType The component type, Also available as ue.getComponentName().
Returns: the created component.
Throws: BuildException if an error occurs.
Parameters: componentName the name of the component, if the component is in a namespace, the name is prefixed with the namespace uri and ":".
Returns: the class if found or null if not.
Parameters: typeName The name of the data type to create an instance of.
Must not be null
.
Returns: an instance of the specified data type, or null
if
the data type name is not recognised.
Throws: BuildException if the data type name is recognised but instance creation fails.
Parameters: taskType The name of the task to create an instance of.
Must not be null
.
Returns: an instance of the specified task, or null
if
the task name is not recognised.
Throws: BuildException if the task name is recognised but task creation fails.
Parameters: componentName component name. type component type, used in error messages
Returns: a string containing as much diagnostics info as possible.
Parameters: uri the uri that is associated with this antlib.
Returns: a map of from datatype name to implementing class (String to Class).
Parameters: componentName the name of the component, if the component is in a namespace, the name is prefixed with the namespace uri and ":".
Returns: the class if found or null if not.
Parameters: project the project.
Returns: the project component for a specific project.
Returns: the current antlib uri.
Returns: a map of from type name to implementing class (String to Class).
Parameters: componentName the name of the component.
Returns: the ant definition or null if not present.
This is useful for logging purposes.
Parameters: element The element to describe.
Must not be null
.
Returns: a description of the element type.
Since: Ant 1.6
This is useful for logging purposes.
Parameters: o The element to describe.
Must not be null
. brief whether to use a brief description.
Returns: a description of the element type.
Since: Ant 1.7
Parameters: p The optional Project instance. o The element to describe.
Must not be null
. brief whether to use a brief description.
Returns: a description of the element type.
Since: Ant 1.7
Returns: the next chained component helper.
Returns: a map of from task name to implementing class (String to Class).
Parameters: helper the component helper of the parent project.
Parameters: next the next chained component helper.
Parameters: project the project for this helper.