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 Details

  • Method Details

    • 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()