Package org.apache.tools.ant.util

# Class GlobPatternMapper

java.lang.Object
org.apache.tools.ant.util.GlobPatternMapper

All Implemented Interfaces:
  `FileNameMapper`

Direct Known Subclasses:
  `PackageNameMapper`, `UnPackageNameMapper`

    public class GlobPatternMapper
    extends java.lang.Object
    implements FileNameMapper

Implementation of FileNameMapper that does simple wildcard pattern replacements.

This does simple translations like *.foo -> *.bar where the prefix to .foo will be left unchanged. It only handles a single * character, use regular expressions for more complicated situations.

This is one of the more useful Mappers, it is used by javac for example.

- ## Field Summary

  Fields
  Modifier and Type | Field | Description
  --- | --- | ---
  `protected java.lang.String` | `fromPostfix` | Part of "from" pattern after the *.
  `protected java.lang.String` | `fromPrefix` | Part of "from" pattern before the *.
  `protected int` | `postfixLength` | Length of the postfix ("from" pattern).
  `protected int` | `prefixLength` | Length of the prefix ("from" pattern).
  `protected java.lang.String` | `toPostfix` | Part of "to" pattern after the *.
  `protected java.lang.String` | `toPrefix` | Part of "to" pattern before the *.

- ## Constructor Summary

  Constructors
  Constructor | Description
  --- | ---
  `GlobPatternMapper()` |

- ## Method Summary

  Modifier and Type | Method | Description
  --- | --- | ---
  `protected java.lang.String` | `extractVariablePart​(java.lang.String name)` | Returns the part of the given string that matches the * in the "from" pattern.
  `boolean` | `getHandleDirSep()` | Attribute specifying whether to ignore the difference between / and \ (the two common directory characters).
  `java.lang.String[]` | `mapFileName​(java.lang.String sourceFileName)` | Returns null if the source file name doesn't match the "from" pattern, an one-element array containing the translated file otherwise.
  `void` | `setCaseSensitive​(boolean caseSensitive)` | Attribute specifying whether to ignore the case difference in the names.
  `void` | `setFrom​(java.lang.String from)` | Sets the "from" pattern.
  `void` | `setHandleDirSep​(boolean handleDirSep)` | Attribute specifying whether to ignore the difference between / and \ (the two common directory characters).
  `void` | `setTo​(java.lang.String to)` | Sets the "to" pattern.

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

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

- ## Field Details

  - ### fromPrefix

    protected java.lang.String fromPrefix
    Part of "from" pattern before the *.

  - ### fromPostfix

    protected java.lang.String fromPostfix
    Part of "from" pattern after the *.

  - ### prefixLength

    protected int prefixLength
    Length of the prefix ("from" pattern).

  - ### postfixLength

    protected int postfixLength
    Length of the postfix ("from" pattern).

  - ### toPrefix

    protected java.lang.String toPrefix
    Part of "to" pattern before the *.

  - ### toPostfix

    protected java.lang.String toPostfix
    Part of "to" pattern after the *.

- ## Constructor Details

  - ### GlobPatternMapper

    public GlobPatternMapper()

- ## Method Details

  - ### setHandleDirSep

    public void setHandleDirSep​(boolean handleDirSep)
    Attribute specifying whether to ignore the difference between / and \ (the two common directory characters).
    Parameters:
      `handleDirSep` - a boolean, default is false.
    Since:
      Ant 1.6.3

  - ### getHandleDirSep

    public boolean getHandleDirSep()
    Attribute specifying whether to ignore the difference between / and \ (the two common directory characters).
    Returns:
      boolean
    Since:
      Ant 1.8.3

  - ### setCaseSensitive

    public void setCaseSensitive​(boolean caseSensitive)
    Attribute specifying whether to ignore the case difference in the names.
    Parameters:
      `caseSensitive` - a boolean, default is false.
    Since:
      Ant 1.6.3

  - ### setFrom

    public void setFrom​(java.lang.String from)
    Sets the "from" pattern. Required.
    Specified by:
      `setFrom` in interface `FileNameMapper`
    Parameters:
      `from` - a string

  - ### setTo

    public void setTo​(java.lang.String to)
    Sets the "to" pattern. Required.
    Specified by:
      `setTo` in interface `FileNameMapper`
    Parameters:
      `to` - a string

  - ### mapFileName

    public java.lang.String[] mapFileName​(java.lang.String sourceFileName)
    Returns null if the source file name doesn't match the "from" pattern, an one-element array containing the translated file otherwise.
    Specified by:
      `mapFileName` in interface `FileNameMapper`
    Parameters:
      `sourceFileName` - the filename to map
    Returns:
      a list of converted filenames

  - ### extractVariablePart

    protected java.lang.String extractVariablePart​(java.lang.String name)
    Returns the part of the given string that matches the * in the "from" pattern.
    Parameters:
      `name` - the source file name
    Returns:
      the variable part of the name