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
`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 and Description
`GlobPatternMapper()`

### Method Summary

Methods
`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 Detail

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

#### GlobPatternMapper

    public GlobPatternMapper()

### Method Detail

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

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