org.apache.tools.ant.types.resources
Class JavaResource

java.lang.Object
  extended by org.apache.tools.ant.ProjectComponent
      extended by org.apache.tools.ant.types.DataType
          extended by org.apache.tools.ant.types.Resource
              extended by org.apache.tools.ant.types.resources.JavaResource
All Implemented Interfaces:
java.lang.Cloneable, java.lang.Comparable, ResourceCollection

public class JavaResource
extends Resource

A Resource representation of something loadable via a Java classloader.

Since:
Ant 1.7

Field Summary
 
Fields inherited from class org.apache.tools.ant.types.Resource
MAGIC, UNKNOWN_DATETIME, UNKNOWN_SIZE
 
Fields inherited from class org.apache.tools.ant.types.DataType
checked, ref
 
Fields inherited from class org.apache.tools.ant.ProjectComponent
description, location, project
 
Constructor Summary
JavaResource()
          Default constructor.
JavaResource(java.lang.String name, Path path)
          Construct a new JavaResource using the specified name and classpath.
 
Method Summary
 int compareTo(java.lang.Object another)
          Compare this JavaResource to another Resource.
 Path createClasspath()
          Add a classpath to use when looking up a resource.
 Path getClasspath()
          get the classpath used by this LoadProperties.
 java.io.InputStream getInputStream()
          Return an InputStream for reading the contents of this Resource.
 boolean isExists()
          Learn whether this file exists.
 void setClasspath(Path classpath)
          Set the classpath to use when looking up a resource.
 void setClasspathRef(Reference r)
          Set the classpath to use when looking up a resource, given as reference to a <path> defined elsewhere
 void setLoaderRef(Reference r)
          Use the reference to locate the loader.
 void setRefid(Reference r)
          Overrides the super version.
 
Methods inherited from class org.apache.tools.ant.types.Resource
clone, equals, getLastModified, getMagicNumber, getName, getOutputStream, getSize, hashCode, isDirectory, isFilesystemOnly, iterator, setDirectory, setExists, setLastModified, setName, setSize, size, toLongString, toString
 
Methods inherited from class org.apache.tools.ant.types.DataType
checkAttributesAllowed, checkChildrenAllowed, circularReference, dieOnCircularReference, dieOnCircularReference, dieOnCircularReference, getCheckedRef, getCheckedRef, getCheckedRef, getCheckedRef, getDataTypeName, getRefid, invokeCircularReferenceCheck, isChecked, isReference, noChildrenAllowed, setChecked, tooManyAttributes
 
Methods inherited from class org.apache.tools.ant.ProjectComponent
getDescription, getLocation, getProject, log, log, setDescription, setLocation, setProject
 
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
 

Constructor Detail

JavaResource

public JavaResource()
Default constructor.


JavaResource

public JavaResource(java.lang.String name,
                    Path path)
Construct a new JavaResource using the specified name and classpath.

Parameters:
name - the resource name.
path - the classpath.
Method Detail

setClasspath

public void setClasspath(Path classpath)
Set the classpath to use when looking up a resource.

Parameters:
classpath - to add to any existing classpath

createClasspath

public Path createClasspath()
Add a classpath to use when looking up a resource.

Returns:
The classpath to be configured

setClasspathRef

public void setClasspathRef(Reference r)
Set the classpath to use when looking up a resource, given as reference to a <path> defined elsewhere

Parameters:
r - The reference value

getClasspath

public Path getClasspath()
get the classpath used by this LoadProperties.

Returns:
The classpath

setLoaderRef

public void setLoaderRef(Reference r)
Use the reference to locate the loader. If the loader is not found, taskdef will use the specified classpath and register it with the specified name. This allow multiple taskdef/typedef to use the same class loader, so they can be used together. It eliminate the need to put them in the CLASSPATH.

Parameters:
r - the reference to locate the loader.

setRefid

public void setRefid(Reference r)
Overrides the super version.

Overrides:
setRefid in class Resource
Parameters:
r - the Reference to set.

isExists

public boolean isExists()
Learn whether this file exists.

Overrides:
isExists in class Resource
Returns:
true if this resource exists.

getInputStream

public java.io.InputStream getInputStream()
                                   throws java.io.IOException
Return an InputStream for reading the contents of this Resource.

Overrides:
getInputStream in class Resource
Returns:
an InputStream object.
Throws:
java.io.IOException - if an error occurs.

compareTo

public int compareTo(java.lang.Object another)
Compare this JavaResource to another Resource.

Specified by:
compareTo in interface java.lang.Comparable
Overrides:
compareTo in class Resource
Parameters:
another - the other Resource against which to compare.
Returns:
a negative integer, zero, or a positive integer as this JavaResource is less than, equal to, or greater than the specified Resource.