MappedResource (Apache Ant API)
Date: 2018-09-12

Package org.apache.tools.ant.types.resources

## Class MappedResource

- 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.ResourceDecorator
        - - org.apache.tools.ant.types.resources.MappedResource

- All Implemented Interfaces:
    `java.lang.Cloneable`, `java.lang.Comparable<Resource>`, `java.lang.Iterable<Resource>`, `ResourceCollection`

      public class MappedResource
      extends ResourceDecorator

  A decorator around a different resource that uses a mapper to dynamically remap the resource's name.

  Strips the FileProvider interface from decorated resources since it may be used to circumvent name mapping.

  Since:
    Ant 1.8.0

- - ### Field Summary

    - ### Fields inherited from class org.apache.tools.ant.types.DataType

      `checked, ref`

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

      `description, location, project`

    - ### Fields inherited from class org.apache.tools.ant.types.Resource

      `MAGIC, UNKNOWN_DATETIME, UNKNOWN_SIZE`

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `MappedResource​(Resource r, FileNameMapper m)` | Wraps an existing resource.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `<T> T` | `as​(java.lang.Class<T> clazz)` | Suppress FileProvider
    `boolean` | `equals​(java.lang.Object other)` | Equality check based on the resource's name in addition to the resource itself.
    `java.lang.String` | `getName()` | Maps the name.
    `int` | `hashCode()` | Get the hash code for this Resource.
    `void` | `setRefid​(Reference r)` | Not really supported since mapper is never null.
    `java.lang.String` | `toString()` | Get the string representation of this Resource.

    - ### Methods inherited from class org.apache.tools.ant.types.DataType

      `checkAttributesAllowed, checkChildrenAllowed, circularReference, dieOnCircularReference, dieOnCircularReference, getCheckedRef, getCheckedRef, getCheckedRef, getDataTypeName, getRefid, invokeCircularReferenceCheck, isChecked, isReference, noChildrenAllowed, pushAndInvokeCircularReferenceCheck, setChecked, tooManyAttributes`

    - ### Methods inherited from interface java.lang.Iterable

      `forEach, spliterator`

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

      `finalize, getClass, notify, notifyAll, wait, wait, wait`

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

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

    - ### Methods inherited from class org.apache.tools.ant.types.Resource

      `asOptional, clone, getCheckedRef, getMagicNumber, iterator, size, toLongString`

    - ### Methods inherited from interface org.apache.tools.ant.types.ResourceCollection

      `isEmpty, stream`

    - ### Methods inherited from class org.apache.tools.ant.types.resources.ResourceDecorator

      `addConfigured, compareTo, dieOnCircularReference, getInputStream, getLastModified, getOutputStream, getResource, getSize, isDirectory, isExists, isFilesystemOnly, setDirectory, setExists, setLastModified, setName, setSize`

- - ### Constructor Detail

    - #### MappedResource

          public MappedResource​(Resource r,
                                FileNameMapper m)

      Wraps an existing resource.
      Parameters:
        `r` - Resource to wrap
        `m` - FileNameMapper that handles mapping

  - ### Method Detail

    - #### getName

          public java.lang.String getName()

      Maps the name.
      Overrides:
        `getName` in class `ResourceDecorator`
      Returns:
        the name of the wrapped resource.

    - #### setRefid

          public void setRefid​(Reference r)

      Not really supported since mapper is never null.
      Overrides:
        `setRefid` in class `ResourceDecorator`
      Parameters:
        `r` - reference to set

    - #### as

          public <T> T as​(java.lang.Class<T> clazz)

      Suppress FileProvider
      Overrides:
        `as` in class `ResourceDecorator`
      Type Parameters:
        `T` - desired type
      Parameters:
        `clazz` - the type to implement
      Returns:
        resource of a desired type

    - #### hashCode

          public int hashCode()

      Get the hash code for this Resource.
      Overrides:
        `hashCode` in class `ResourceDecorator`
      Returns:
        hash code as int.
      Since:
        Ant 1.8.1

    - #### equals

          public boolean equals​(java.lang.Object other)

      Equality check based on the resource's name in addition to the resource itself.
      Overrides:
        `equals` in class `Resource`
      Parameters:
        `other` - the object to check against.
      Returns:
        true if the specified Object is equal to this Resource.
      Since:
        Ant 1.8.1

    - #### toString

          public java.lang.String toString()

      Description copied from class: `Resource`
      Get the string representation of this Resource.
      Overrides:
        `toString` in class `Resource`
      Returns:
        this Resource formatted as a String.