Mapper (Apache Ant API)
Date: 2015-06-29

org.apache.tools.ant.types

## Class Mapper

- java.lang.Object
- - org.apache.tools.ant.ProjectComponent
  - - org.apache.tools.ant.types.DataType
    - - org.apache.tools.ant.types.Mapper

- All Implemented Interfaces:
    java.lang.Cloneable

      public class Mapper
      extends DataType
      implements java.lang.Cloneable

  Element to define a FileNameMapper.

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Class and Description
    --- | ---
    `static class` | `Mapper.MapperType` Class as Argument to FileNameMapper.setType.

  - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `protected java.lang.String` | `classname`
    `protected Path` | `classpath`
    `protected java.lang.String` | `from`
    `protected java.lang.String` | `to`
    `protected Mapper.MapperType` | `type`

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

    Constructors
    Constructor and Description
    `Mapper(Project p)` Construct a new `Mapper` element.

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `add(FileNameMapper fileNameMapper)` Add a nested `FileNameMapper`.
    `void` | `addConfigured(FileNameMapper fileNameMapper)` Cannot mix add and addconfigured in same type, so provide this to override the add method.
    `void` | `addConfiguredMapper(Mapper mapper)` Add a Mapper
    `Path` | `createClasspath()` Set the classpath to load the FileNameMapper through (nested element).
    `FileNameMapper` | `getImplementation()` Returns a fully configured FileNameMapper implementation.
    `protected java.lang.Class<? extends FileNameMapper>` | `getImplementationClass()` Gets the Class object associated with the mapper implementation.
    `protected Mapper` | `getRef()` Deprecated. since Ant 1.7.1 because a mapper might ref a FileNameMapper implementation directly.
    `void` | `setClassname(java.lang.String classname)` Set the class name of the FileNameMapper to use.
    `void` | `setClasspath(Path classpath)` Set the classpath to load the FileNameMapper through (attribute).
    `void` | `setClasspathRef(Reference ref)` Set the classpath to load the FileNameMapper through via reference (attribute).
    `void` | `setFrom(java.lang.String from)` Set the argument to FileNameMapper.setFrom
    `void` | `setRefid(Reference r)` Make this Mapper instance a reference to another Mapper.
    `void` | `setTo(java.lang.String to)` Set the argument to FileNameMapper.setTo
    `void` | `setType(Mapper.MapperType type)` Set the type of `FileNameMapper` to use.

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

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

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

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

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

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

- - ### Field Detail

    - #### type

          protected Mapper.MapperType type

    - #### classname

          protected java.lang.String classname

    - #### classpath

          protected Path classpath

    - #### from

          protected java.lang.String from

    - #### to

          protected java.lang.String to

  - ### Constructor Detail

    - #### Mapper

          public Mapper(Project p)

      Construct a new `Mapper` element.
      Parameters:
        `p` - the owning Ant `Project`.

  - ### Method Detail

    - #### setType

          public void setType(Mapper.MapperType type)

      Set the type of `FileNameMapper` to use.
      Parameters:
        `type` - the `MapperType` enumerated attribute.

    - #### addConfigured

          public void addConfigured(FileNameMapper fileNameMapper)

      Cannot mix add and addconfigured in same type, so provide this to override the add method.
      Parameters:
        `fileNameMapper` - the `FileNameMapper` to add.

    - #### add

          public void add(FileNameMapper fileNameMapper)

      Add a nested `FileNameMapper`.
      Parameters:
        `fileNameMapper` - the `FileNameMapper` to add.

    - #### addConfiguredMapper

          public void addConfiguredMapper(Mapper mapper)

      Add a Mapper
      Parameters:
        `mapper` - the mapper to add

    - #### setClassname

          public void setClassname(java.lang.String classname)

      Set the class name of the FileNameMapper to use.
      Parameters:
        `classname` - the name of the class

    - #### setClasspath

          public void setClasspath(Path classpath)

      Set the classpath to load the FileNameMapper through (attribute).
      Parameters:
        `classpath` - the classpath

    - #### createClasspath

          public Path createClasspath()

      Set the classpath to load the FileNameMapper through (nested element).
      Returns:
        a path object to be configured

    - #### setClasspathRef

          public void setClasspathRef(Reference ref)

      Set the classpath to load the FileNameMapper through via reference (attribute).
      Parameters:
        `ref` - the reference to the FileNameMapper

    - #### setFrom

          public void setFrom(java.lang.String from)

      Set the argument to FileNameMapper.setFrom
      Parameters:
        `from` - the from attribute to pass to the FileNameMapper

    - #### setTo

          public void setTo(java.lang.String to)

      Set the argument to FileNameMapper.setTo
      Parameters:
        `to` - the to attribute to pass to the FileNameMapper

    - #### setRefid

          public void setRefid(Reference r)
                        throws BuildException

      Make this Mapper instance a reference to another Mapper.

      You must not set any other attribute if you make it a reference.

      Overrides:
        `setRefid` in class `DataType`
      Parameters:
        `r` - the reference to another mapper
      Throws:
        `BuildException` - if other attributes are set

    - #### getImplementation

          public FileNameMapper getImplementation()
                                           throws BuildException

      Returns a fully configured FileNameMapper implementation.
      Returns:
        a FileNameMapper object to be configured
      Throws:
        `BuildException` - on error

    - #### getImplementationClass

          protected java.lang.Class<? extends FileNameMapper> getImplementationClass()
                                                                              throws java.lang.ClassNotFoundException

      Gets the Class object associated with the mapper implementation.
      Returns:
        `Class`.
      Throws:
        `java.lang.ClassNotFoundException` - if the class cannot be found

    - #### getRef

          protected Mapper getRef()

      Deprecated. since Ant 1.7.1 because a mapper might ref a FileNameMapper implementation directly.
      Performs the check for circular references and returns the referenced Mapper.
      Returns:
        the referenced Mapper