org.apache.tools.ant.util

Class RegexpPatternMapper

Implemented Interfaces:
FileNameMapper

public class RegexpPatternMapper
extends java.lang.Object
implements FileNameMapper

Implementation of FileNameMapper that does regular expression replacements.

Field Summary

protected RegexpMatcher
reg
protected StringBuffer
result
protected char[]
to

Constructor Summary

RegexpPatternMapper()
Constructor for RegexpPatternMapper.

Method Summary

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.
protected String
replaceReferences(String source)
Replace all backreferences in the to pattern with the matched groups of the source.
void
setCaseSensitive(boolean caseSensitive)
Attribute specifing whether to ignore the case difference in the names.
void
setFrom(String from)
Sets the "from" pattern.
void
setHandleDirSep(boolean handleDirSep)
Attribute specifing whether to ignore the difference between / and \ (the two common directory characters).
void
setTo(String to)
Sets the "to" pattern.

Field Details

reg

protected RegexpMatcher reg

result

protected StringBuffer result

to

protected char[] to

Constructor Details

RegexpPatternMapper

public RegexpPatternMapper()
            throws BuildException
Constructor for RegexpPatternMapper.
Throws:
BuildException - on error.

Method Details

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 source file name
Returns:
a one-element array containing the translated file or null if the to pattern did not match

replaceReferences

protected String replaceReferences(String source)
Replace all backreferences in the to pattern with the matched groups of the source.
Parameters:
source - the source file name.
Returns:
the translated file name.

setCaseSensitive

public void setCaseSensitive(boolean caseSensitive)
Attribute specifing 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)
            throws BuildException
Sets the "from" pattern. Required.
Specified by:
setFrom in interface FileNameMapper
Parameters:
from - the from pattern.
Throws:
BuildException - on error.

setHandleDirSep

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

setTo

public void setTo(String to)
Sets the "to" pattern. Required.
Specified by:
setTo in interface FileNameMapper
Parameters:
to - the to pattern.

Copyright B) 2000-2007 Apache Software Foundation. All Rights Reserved.