org.apache.tools.ant.taskdefs

Class DefBase

  • All Implemented Interfaces:
    java.lang.Cloneable
    Direct Known Subclasses:
    Definer, Input.Handler, ScriptDef


    public abstract class DefBase
    extends AntlibDefinition
    Base class for Definitions handling uri and class loading. (This was part of Definer)
    Since:
    Ant 1.6
    • Constructor Detail

      • DefBase

        public DefBase()
    • Method Detail

      • hasCpDelegate

        protected boolean hasCpDelegate()
        Check if classpath attributes have been set. (to be called before getCpDelegate() is used.
        Returns:
        true if cpDelegate has been created.
      • setReverseLoader

        @Deprecated
        public void setReverseLoader(boolean reverseLoader)
        Deprecated. since 1.6.x. stop using this attribute
        Parameters:
        reverseLoader - if true a delegated loader will take precedence over the parent
      • getClasspath

        public Path getClasspath()
        Returns:
        the classpath for this definition
      • isReverseLoader

        public boolean isReverseLoader()
        Returns:
        the reverse loader attribute of the classpath delegate.
      • getLoaderId

        public java.lang.String getLoaderId()
        Returns the loader id of the class path Delegate.
        Returns:
        the loader id
      • getClasspathId

        public java.lang.String getClasspathId()
        Returns the class path id of the class path delegate.
        Returns:
        the class path id
      • setClasspath

        public void setClasspath(Path classpath)
        Set the classpath to be used when searching for component being defined.
        Parameters:
        classpath - an Ant Path object containing the classpath.
      • createClasspath

        public Path createClasspath()
        Create the classpath to be used when searching for component being defined.
        Returns:
        the classpath of the this definition
      • setClasspathRef

        public void setClasspathRef(Reference r)
        Set a reference to a classpath to use when loading the files. To actually share the same loader, set loaderref as well
        Parameters:
        r - the reference to the classpath
      • setLoaderRef

        public void setLoaderRef(Reference r)
        Use the reference to locate the loader. If the loader is not found, the specified classpath will be used and registered with the specified name. This allows multiple taskdef/typedef to use the same class loader, so they can be used together, eliminating the need to put them in the CLASSPATH.
        Parameters:
        r - the reference to locate the loader.
        Since:
        Ant 1.5
      • createLoader

        protected java.lang.ClassLoader createLoader()
        create a classloader for this definition
        Returns:
        the classloader from the cpDelegate
      • init

        public void init()
                  throws BuildException
        Description copied from class: Task
        Called by the project to let the task initialize properly. The default implementation is a no-op.
        Overrides:
        init in class Task
        Throws:
        BuildException - on error.
        Since:
        Ant 1.6
        See Also:
        Task.init()