| 
 | |||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Objectorg.apache.tools.ant.ComponentHelper
public class ComponentHelper
Component creation and configuration. The class is based around handing component definitions in an AntTypeTable. The old task/type methods have been kept for backward compatibly. Project will just delegate its calls to this class. A very simple hook mechanism is provided that allows users to plug in custom code. It is also possible to replace the default behavior ( for example in an app embedding ant )
| Field Summary | |
|---|---|
| static java.lang.String | COMPONENT_HELPER_REFERENCEreference under which we register ourselves with a project -"ant.ComponentHelper" | 
| Constructor Summary | |
|---|---|
| protected  | ComponentHelper()Creates a new ComponentHelper instance. | 
| Method Summary | |
|---|---|
|  void | addDataTypeDefinition(AntTypeDefinition def)Describe addDataTypeDefinitionmethod here. | 
|  void | addDataTypeDefinition(java.lang.String typeName,
                      java.lang.Class<?> typeClass)Adds a new datatype definition. | 
|  void | addTaskDefinition(java.lang.String taskName,
                  java.lang.Class<?> taskClass)Adds a new task definition to the project. | 
|  void | checkTaskClass(java.lang.Class<?> taskClass)Checks whether or not a class is suitable for serving as Ant task. | 
|  java.lang.Object | createComponent(java.lang.String componentName)Create an object for a component. | 
|  java.lang.Object | createComponent(UnknownElement ue,
                java.lang.String ns,
                java.lang.String componentType)Factory method to create the components. | 
|  java.lang.Object | createDataType(java.lang.String typeName)Creates a new instance of a data type. | 
|  Task | createTask(java.lang.String taskType)Creates a new instance of a task. | 
|  java.lang.String | diagnoseCreationFailure(java.lang.String componentName,
                        java.lang.String type)Handler called to do decent diagnosis on instantiation failure. | 
|  void | enterAntLib(java.lang.String uri)Called at the start of processing an antlib. | 
|  void | exitAntLib()Called at the end of processing an antlib. | 
|  java.util.Hashtable<java.lang.String,AntTypeDefinition> | getAntTypeTable()Returns the current datatype definition hashtable. | 
|  java.lang.Class<?> | getComponentClass(java.lang.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. | 
|  java.lang.String | getCurrentAntlibUri() | 
|  java.util.Hashtable<java.lang.String,java.lang.Class<?>> | getDataTypeDefinitions()Returns the current type definition hashtable. | 
|  AntTypeDefinition | getDefinition(java.lang.String componentName)Return the antTypeDefinition for a componentName. | 
|  java.lang.String | getElementName(java.lang.Object element)Returns a description of the type of the given element. | 
|  java.lang.String | getElementName(java.lang.Object o,
               boolean brief)Returns a description of the type of the given element. | 
| static java.lang.String | getElementName(Project p,
               java.lang.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. | 
|  Project | getProject()Get the project. | 
|  java.util.List<AntTypeDefinition> | getRestrictedDefinitions(java.lang.String componentName)This returns a list of restricted definitions for a name. | 
|  java.util.Hashtable<java.lang.String,java.lang.Class<?>> | 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. | 
| Methods inherited from class java.lang.Object | 
|---|
| clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait | 
| Field Detail | 
|---|
public static final java.lang.String COMPONENT_HELPER_REFERENCE
| Constructor Detail | 
|---|
protected ComponentHelper()
| Method Detail | 
|---|
public Project getProject()
public static ComponentHelper getComponentHelper(Project project)
project - the project.
public void setNext(ComponentHelper next)
next - the next chained component helper.public ComponentHelper getNext()
public void setProject(Project project)
project - the project for this helper.public void initSubProject(ComponentHelper helper)
helper - the component helper of the parent project.
public java.lang.Object createComponent(UnknownElement ue,
                                        java.lang.String ns,
                                        java.lang.String componentType)
                                 throws BuildException
ue - The Unknown Element creating this component.ns - Namespace URI. Also available as ue.getNamespace().componentType - The component type,
                       Also available as ue.getComponentName().
BuildException - if an error occurs.public java.lang.Object createComponent(java.lang.String componentName)
componentName - the name of the component, if
                      the component is in a namespace, the
                      name is prefixed with the namespace uri and ":".
public java.lang.Class<?> getComponentClass(java.lang.String componentName)
componentName - the name of the component, if
                      the component is in a namespace, the
                      name is prefixed with the namespace uri and ":".
public AntTypeDefinition getDefinition(java.lang.String componentName)
componentName - the name of the component.
public void initDefaultDefinitions()
public void addTaskDefinition(java.lang.String taskName,
                              java.lang.Class<?> taskClass)
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.
BuildException - if the class is unsuitable for being an Ant
                           task. An error level message is logged before
                           this exception is thrown.checkTaskClass(Class)
public void checkTaskClass(java.lang.Class<?> taskClass)
                    throws BuildException
taskClass - The class to be checked.
                  Must not be null.
BuildException - if the class is unsuitable for being an Ant
                           task. An error level message is logged before
                           this exception is thrown.public java.util.Hashtable<java.lang.String,java.lang.Class<?>> getTaskDefinitions()
public java.util.Hashtable<java.lang.String,java.lang.Class<?>> getDataTypeDefinitions()
public java.util.List<AntTypeDefinition> getRestrictedDefinitions(java.lang.String componentName)
componentName - the name to use.
public void addDataTypeDefinition(java.lang.String typeName,
                                  java.lang.Class<?> typeClass)
typeName - The name of the datatype.
                 Must not be null.typeClass - The full name of the class implementing the datatype.
                  Must not be null.public void addDataTypeDefinition(AntTypeDefinition def)
addDataTypeDefinition method here.
def - an AntTypeDefinition value.public java.util.Hashtable<java.lang.String,AntTypeDefinition> getAntTypeTable()
AntTypeDefinition).
public Task createTask(java.lang.String taskType)
                throws BuildException
taskType - The name of the task to create an instance of.
                 Must not be null.
null if
         the task name is not recognised.
BuildException - if the task name is recognised but task
                           creation fails.
public java.lang.Object createDataType(java.lang.String typeName)
                                throws BuildException
typeName - The name of the data type to create an instance of.
                 Must not be null.
null if
         the data type name is not recognised.
BuildException - if the data type name is recognised but
                           instance creation fails.public java.lang.String getElementName(java.lang.Object element)
This is useful for logging purposes.
element - The element to describe.
                Must not be null.
public java.lang.String getElementName(java.lang.Object o,
                                       boolean brief)
This is useful for logging purposes.
o - The element to describe.
              Must not be null.brief - whether to use a brief description.
public static java.lang.String getElementName(Project p,
                                              java.lang.Object o,
                                              boolean brief)
p - The optional Project instance.o - The element to describe.
                Must not be null.brief - whether to use a brief description.
public void enterAntLib(java.lang.String uri)
uri - the uri that is associated with this antlib.public java.lang.String getCurrentAntlibUri()
public void exitAntLib()
public java.lang.String diagnoseCreationFailure(java.lang.String componentName,
                                                java.lang.String type)
componentName - component name.type - component type, used in error messages
| 
 | |||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||