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 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 String`
`fromPostfix`
Part of "from" pattern after the *.
`protected 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 String`
`toPostfix`
Part of "to" pattern after the *.
`protected String`
`toPrefix`
Part of "to" pattern before the *.

## Constructor Summary

Constructors
Constructor
Description
`GlobPatternMapper()`

## Method Summary

Modifier and Type
Method
Description
`protected String`
`extractVariablePart(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).
`String[]`
`mapFileName(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(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(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 String fromPrefix
Part of "from" pattern before the *.

### fromPostfix

protected 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 String toPrefix
Part of "to" pattern before the *.

### toPostfix

protected 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(String from)
Sets the "from" pattern. Required.

Specified by:
  `setFrom` in interface `FileNameMapper`
Parameters:
  `from` - a string

### setTo

public void setTo(String to)
Sets the "to" pattern. Required.

Specified by:
  `setTo` in interface `FileNameMapper`
Parameters:
  `to` - a string

### mapFileName

public String[] mapFileName(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 String extractVariablePart(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