Package org.apache.tools.ant.taskdefs
Class Replace
java.lang.Object
org.apache.tools.ant.ProjectComponent
org.apache.tools.ant.Task
org.apache.tools.ant.taskdefs.MatchingTask
org.apache.tools.ant.taskdefs.Replace
- All Implemented Interfaces:
Cloneable,SelectorContainer
Replaces all occurrences of one or more string tokens with given
values in the indicated files. Each value can be either a string
or the value of a property available in a designated property file.
If you want to replace a text that crosses line boundaries, you
must use a nested
<replacetoken> element.- Since:
- Ant 1.1
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionclassAn inline string to use as the replacement text.classA filter to apply. -
Field Summary
Fields inherited from class org.apache.tools.ant.taskdefs.MatchingTask
filesetFields inherited from class org.apache.tools.ant.ProjectComponent
description, location, project -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidSupport arbitrary file system based resource collections.Add a nested <replacefilter> element.Create a token to filter as the text of a nested element.Create a string to replace the token as the text of a nested element.voidexecute()Do the execution.getProperties(File propertyFile) Load a properties file.getProperties(Resource propertyResource) Load a properties resource.voidThe base directory to use when replacing a token in multiple files; required iffileis not defined.voidsetEncoding(String encoding) Set the file encoding to use on the files read and written by the task; optional, defaults to default JVM encoding.voidsetFailOnNoReplacements(boolean b) Whether the build should fail if nothing has been replaced.voidSet the source file; required unlessdiris set.voidsetPreserveLastModified(boolean b) Whether the file timestamp shall be preserved even if the file is modified.voidsetPropertyFile(File propertyFile) The name of a property file from which properties specified using nested<replacefilter>elements are drawn; required only if the property attribute of<replacefilter>is used.voidsetPropertyResource(Resource propertyResource) A resource from which properties specified using nested<replacefilter>elements are drawn; required only if the property attribute of<replacefilter>is used.voidsetReplaceFilterFile(File replaceFilterFile) Sets the name of a property file containing filters; optional.voidsetReplaceFilterResource(Resource replaceFilter) Sets the name of a resource containing filters; optional.voidsetSummary(boolean summary) Indicates whether a summary of the replace operation should be produced, detailing how many token occurrences and files were processed; optional, default=false.voidSet the string token to replace; required unless a nestedreplacetokenelement or thereplacefilterresourceattribute is used.voidSet the string value to use as token replacement; optional, default is the empty string "".voidValidate attributes provided for this task in .xml build file.voidValidate nested elements.Methods inherited from class org.apache.tools.ant.taskdefs.MatchingTask
add, addAnd, addContains, addContainsRegexp, addCustom, addDate, addDepend, addDepth, addDifferent, addFilename, addMajority, addModified, addNone, addNot, addOr, addPresent, addSelector, addSize, addType, appendSelector, createExclude, createExcludesFile, createInclude, createIncludesFile, createPatternSet, getDirectoryScanner, getImplicitFileSet, getSelectors, hasSelectors, selectorCount, selectorElements, setCaseSensitive, setDefaultexcludes, setExcludes, setExcludesfile, setFollowSymlinks, setIncludes, setIncludesfile, setProject, XsetIgnore, XsetItemsMethods inherited from class org.apache.tools.ant.Task
bindToOwner, getOwningTarget, getRuntimeConfigurableWrapper, getTaskName, getTaskType, getWrapper, handleErrorFlush, handleErrorOutput, handleFlush, handleInput, handleOutput, init, isInvalid, log, log, log, log, maybeConfigure, perform, reconfigure, setOwningTarget, setRuntimeConfigurableWrapper, setTaskName, setTaskTypeMethods inherited from class org.apache.tools.ant.ProjectComponent
clone, getDescription, getLocation, getProject, setDescription, setLocation
-
Constructor Details
-
Replace
public Replace()
-
-
Method Details
-
execute
Do the execution.- Overrides:
executein classTask- Throws:
BuildException- if we can't build
-
validateAttributes
Validate attributes provided for this task in .xml build file.- Throws:
BuildException- if any supplied attribute is invalid or any mandatory attribute is missing.
-
validateReplacefilters
Validate nested elements.- Throws:
BuildException- if any supplied attribute is invalid or any mandatory attribute is missing.
-
getProperties
Load a properties file.- Parameters:
propertyFile- the file to load the properties from.- Returns:
- loaded
Propertiesobject. - Throws:
BuildException- if the file could not be found or read.
-
getProperties
Load a properties resource.- Parameters:
propertyResource- the resource to load the properties from.- Returns:
- loaded
Propertiesobject. - Throws:
BuildException- if the resource could not be found or read.- Since:
- Ant 1.8.0
-
setFile
Set the source file; required unlessdiris set.- Parameters:
file- sourceFile.
-
setSummary
public void setSummary(boolean summary) Indicates whether a summary of the replace operation should be produced, detailing how many token occurrences and files were processed; optional, default=false.- Parameters:
summary-booleanwhether a summary of the replace operation should be logged.
-
setReplaceFilterFile
Sets the name of a property file containing filters; optional. Each property will be treated as a replacefilter where token is the name of the property and value is the value of the property.- Parameters:
replaceFilterFile-Fileto load.
-
setReplaceFilterResource
Sets the name of a resource containing filters; optional. Each property will be treated as a replacefilter where token is the name of the property and value is the value of the property.- Parameters:
replaceFilter-Resourceto load.- Since:
- Ant 1.8.0
-
setDir
The base directory to use when replacing a token in multiple files; required iffileis not defined.- Parameters:
dir-Filerepresenting the base directory.
-
setToken
Set the string token to replace; required unless a nestedreplacetokenelement or thereplacefilterresourceattribute is used.- Parameters:
token- tokenString.
-
setValue
Set the string value to use as token replacement; optional, default is the empty string "".- Parameters:
value- replacement value.
-
setEncoding
Set the file encoding to use on the files read and written by the task; optional, defaults to default JVM encoding.- Parameters:
encoding- the encoding to use on the files.
-
createReplaceToken
Create a token to filter as the text of a nested element.- Returns:
- nested token
NestedStringto configure.
-
createReplaceValue
Create a string to replace the token as the text of a nested element.- Returns:
- replacement value
NestedStringto configure.
-
setPropertyFile
The name of a property file from which properties specified using nested<replacefilter>elements are drawn; required only if the property attribute of<replacefilter>is used.- Parameters:
propertyFile-Fileto load.
-
setPropertyResource
A resource from which properties specified using nested<replacefilter>elements are drawn; required only if the property attribute of<replacefilter>is used.- Parameters:
propertyResource-Resourceto load.- Since:
- Ant 1.8.0
-
createReplacefilter
Add a nested <replacefilter> element.- Returns:
- a nested
Replacefilterobject to be configured.
-
addConfigured
Support arbitrary file system based resource collections.- Parameters:
rc- ResourceCollection- Since:
- Ant 1.8.0
-
setPreserveLastModified
public void setPreserveLastModified(boolean b) Whether the file timestamp shall be preserved even if the file is modified.- Parameters:
b- boolean- Since:
- Ant 1.8.0
-
setFailOnNoReplacements
public void setFailOnNoReplacements(boolean b) Whether the build should fail if nothing has been replaced.- Parameters:
b- boolean- Since:
- Ant 1.8.0
-