org.apache.tools.ant.utilClass 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 FileNameMapperImplementation 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 and 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 and Description GlobPatternMapper()
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method and 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.
Field Detail
fromPrefix
protected java.lang.String fromPrefixPart of "from" pattern before the *.
fromPostfix
protected java.lang.String fromPostfixPart of "from" pattern after the *.
prefixLength
protected int prefixLengthLength of the prefix ("from" pattern).
postfixLength
protected int postfixLengthLength of the postfix ("from" pattern).
toPrefix
protected java.lang.String toPrefixPart of "to" pattern before the *.
toPostfix
protected java.lang.String toPostfixPart of "to" pattern after the *.
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).
- 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 interfaceFileNameMapper
- Parameters:
from
- a string
setTo
public void setTo(java.lang.String to)Sets the "to" pattern. Required.
- Specified by:
setTo
in interfaceFileNameMapper
- 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 interfaceFileNameMapper
- 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