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