org.apache.tools.ant.taskdefs

## Class DefBase

- java.lang.Object
- - org.apache.tools.ant.ProjectComponent
  - - org.apache.tools.ant.Task
    - - org.apache.tools.ant.taskdefs.AntlibDefinition
      - - org.apache.tools.ant.taskdefs.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

### Field Summary

### Fields inherited from class org.apache.tools.ant.Task

`target, taskName, taskType, wrapper`

### Fields inherited from class org.apache.tools.ant.ProjectComponent

`description, location, project`

### Constructor Summary

Constructors
Constructor and Description
`DefBase()`

### Method Summary

Methods
`Path` `createClasspath()` Create the classpath to be used when searching for component being defined.
`protected java.lang.ClassLoader` `createLoader()` create a classloader for this definition
`Path` `getClasspath()`
`java.lang.String` `getClasspathId()` Returns the class path id of the class path delegate.
`java.lang.String` `getLoaderId()` Returns the loader id of the class path Delegate.
`protected boolean` `hasCpDelegate()` Check if classpath attributes have been set.
`void` `init()` Called by the project to let the task initialize properly.
`boolean` `isReverseLoader()`
`void` `setClasspath(Path classpath)` Set the classpath to be used when searching for component being defined.
`void` `setClasspathRef(Reference r)` Set a reference to a classpath to use when loading the files.
`void` `setLoaderRef(Reference r)` Use the reference to locate the loader.
`void` `setReverseLoader(boolean reverseLoader)` Deprecated. since 1.6.x. stop using this attribute

### Methods inherited from class org.apache.tools.ant.taskdefs.AntlibDefinition

`getAntlibClassLoader, getURI, setAntlibClassLoader, setURI`

### Methods inherited from class org.apache.tools.ant.Task

`bindToOwner, execute, getOwningTarget, getRuntimeConfigurableWrapper, getTaskName, getTaskType, getWrapper, handleErrorFlush, handleErrorOutput, handleFlush, handleInput, handleOutput, isInvalid, log, log, log, log, maybeConfigure, perform, reconfigure, setOwningTarget, setRuntimeConfigurableWrapper, setTaskName, setTaskType`

### Methods inherited from class org.apache.tools.ant.ProjectComponent

`clone, getDescription, getLocation, getProject, setDescription, setLocation, setProject`

### Methods inherited from class java.lang.Object

`equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### 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

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