## org.apache.tools.ant.types.resources
Class PropertyResource

    java.lang.Object
      org.apache.tools.ant.ProjectComponent
          org.apache.tools.ant.types.DataType
              org.apache.tools.ant.types.Resource
                  org.apache.tools.ant.types.resources.PropertyResource

All Implemented Interfaces:
  java.lang.Cloneable, java.lang.Comparable, ResourceCollection

    public class PropertyResource

extends Resource

Exposes an Ant property as a Resource.

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
`PropertyResource()` Default constructor.
`PropertyResource(Project p, java.lang.String n)` Construct a new PropertyResource with the specified name.

Method Summary
`boolean` `equals(java.lang.Object o)` Override to implement equality with equivalent Resources, since we are capable of proxying them.
`java.io.InputStream` `getInputStream()` Get an InputStream for the Resource.
`java.lang.Object` `getObjectValue()` Get the Object value of this PropertyResource.
`java.io.OutputStream` `getOutputStream()` Get an OutputStream for the Resource.
`protected Resource` `getReferencedOrProxied()` Get the referenced or proxied Resource, if applicable.
`long` `getSize()` Get the size of this Resource.
`java.lang.String` `getValue()` Get the value of this PropertyResource.
`int` `hashCode()` Get the hash code for this Resource.
`boolean` `isExists()` Find out whether this Resource exists.
`protected boolean` `isReferenceOrProxy()` Learn whether this PropertyResource either refers to another Resource or proxies another Resource due to its object property value being said Resource.
`java.lang.String` `toString()` Get the string representation of this Resource.

Methods inherited from class org.apache.tools.ant.types.Resource
`as, clone, compareTo, getLastModified, getMagicNumber, getName, isDirectory, isFilesystemOnly, iterator, setDirectory, setExists, setLastModified, setName, setRefid, setSize, size, toLongString`

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, pushAndInvokeCircularReferenceCheck, 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

### PropertyResource

    public PropertyResource()

  Default constructor.

### PropertyResource

    public PropertyResource(Project p,
                            java.lang.String n)

  Construct a new PropertyResource with the specified name.

  Parameters:
    `p` - the project to use.
    `n` - the String name of this PropertyResource (Ant property name/key).

Method Detail

### getValue

    public java.lang.String getValue()

  Get the value of this PropertyResource.

  Returns:
    the value of the specified Property.

### getObjectValue

    public java.lang.Object getObjectValue()

  Get the Object value of this PropertyResource.

  Returns:
    the Object value of the specified Property.
  Since:
    Ant 1.8.1

### isExists

    public boolean isExists()

  Find out whether this Resource exists.

  Overrides:
    `isExists` in class `Resource`
  Returns:
    true if the Property is set, false otherwise.

### getSize

    public long getSize()

  Get the size of this Resource.

  Overrides:
    `getSize` in class `Resource`
  Returns:
    the size, as a long, 0 if the Resource does not exist (for compatibility with java.io.File), or UNKNOWN_SIZE if not known.

### equals

    public boolean equals(java.lang.Object o)

  Override to implement equality with equivalent Resources, since we are capable of proxying them.

  Overrides:
    `equals` in class `Resource`
  Parameters:
    `o` - object to compare
  Returns:
    true if equal to o

### hashCode

    public int hashCode()

  Get the hash code for this Resource.

  Overrides:
    `hashCode` in class `Resource`
  Returns:
    hash code as int.

### toString

    public java.lang.String toString()

  Get the string representation of this Resource.

  Overrides:
    `toString` in class `Resource`
  Returns:
    this Resource formatted as a String.

### getInputStream

    public java.io.InputStream getInputStream()
                                       throws java.io.IOException

  Get an InputStream for the Resource.

  Overrides:
    `getInputStream` in class `Resource`
  Returns:
    an InputStream containing this Resource's content.
  Throws:
    `java.io.IOException` - if unable to provide the content of this Resource as a stream.
    `java.lang.UnsupportedOperationException` - if InputStreams are not supported for this Resource type.

### getOutputStream

    public java.io.OutputStream getOutputStream()
                                         throws java.io.IOException

  Get an OutputStream for the Resource.

  Overrides:
    `getOutputStream` in class `Resource`
  Returns:
    an OutputStream to which content can be written.
  Throws:
    `java.io.IOException` - if unable to provide the content of this Resource as a stream.
    `java.lang.UnsupportedOperationException` - if OutputStreams are not supported for this Resource type.

### isReferenceOrProxy

    protected boolean isReferenceOrProxy()

  Learn whether this PropertyResource either refers to another Resource or proxies another Resource due to its object property value being said Resource.

  Returns:
    boolean

### getReferencedOrProxied

    protected Resource getReferencedOrProxied()

  Get the referenced or proxied Resource, if applicable.

  Returns:
    Resource
  Throws:
    `java.lang.IllegalStateException` - if this PropertyResource neither proxies nor references another Resource.