Class Patch
java.lang.Object
org.apache.tools.ant.ProjectComponent
org.apache.tools.ant.Task
org.apache.tools.ant.taskdefs.Patch
- All Implemented Interfaces:
Cloneable
Patches a file by applying a 'diff' file to it; requires "patch" to be
on the execution path.
- Since:
- Ant 1.1
-
Field Summary
Fields inherited from class ProjectComponent
description, location, project -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidexecute()execute patchvoidsetBackups(boolean backups) flag to create backups; optional, default=falsevoidsetDestfile(File file) The name of a file to send the output to, instead of patching the file(s) in place; optional.voidThe directory to run the patch command in, defaults to the project's base directory.voidsetFailOnError(boolean value) Iftrue, stop the build process if the patch command exits with an error status.voidsetIgnorewhitespace(boolean ignore) flag to ignore whitespace differences; default=falsevoidsetOriginalfile(File file) The file to patch; optional if it can be inferred from the diff filevoidsetPatchfile(File file) The file containing the diff output; required.voidsetQuiet(boolean q) Work silently unless an error occurs; optional, default=falsevoidsetReverse(boolean r) Assume patch was created with old and new files swapped; optional, default=falsevoidsetStrip(int num) Strip the smallest prefix containing num leading slashes from filenames.Methods inherited from class Task
bindToOwner, getOwningTarget, getRuntimeConfigurableWrapper, getTaskName, getTaskType, getWrapper, handleErrorFlush, handleErrorOutput, handleFlush, handleInput, handleOutput, init, isInvalid, log, log, log, log, maybeConfigure, perform, reconfigure, setOwningTarget, setRuntimeConfigurableWrapper, setTaskName, setTaskTypeModifier and TypeMethodDescriptionfinal voidbindToOwner(Task owner) Bind a task to another; use this when configuring a newly created task to do work on behalf of another.Returns the container target of this task.Returns the wrapper used for runtime configuration.Returns the name to use in logging messages.Return the type of task.protected RuntimeConfigurableReturn the runtime configurable structure for this task.protected voidhandleErrorFlush(String output) Handles an error line by logging it with the WARN priority.protected voidhandleErrorOutput(String output) Handles an error output by logging it with the WARN priority.protected voidhandleFlush(String output) Handles output by logging it with the INFO priority.protected inthandleInput(byte[] buffer, int offset, int length) Handle an input request by this task.protected voidhandleOutput(String output) Handles output by logging it with the INFO priority.voidinit()Called by the project to let the task initialize properly.protected final booleanHas this task been marked invalid?voidLogs a message with the default (INFO) priority.voidLogs a message with the given priority.voidLogs a message with the given priority.voidLogs a message with the given priority.voidConfigures this task - if it hasn't been done already.final voidperform()Performs this task if it's still valid, or gets a replacement version and performs that otherwise.voidForce the task to be reconfigured from its RuntimeConfigurable.voidsetOwningTarget(Target target) Sets the target container of this task.voidSets the wrapper to be used for runtime configuration.voidsetTaskName(String name) Sets the name to use in logging messages.voidsetTaskType(String type) Sets the name with which the task has been invoked.Methods inherited from class ProjectComponent
clone, getDescription, getLocation, getProject, setDescription, setLocation, setProjectModifier and TypeMethodDescriptionclone()Returns the description of the current action.Returns the file/location where this task was defined.Returns the project to which this component belongs.voidsetDescription(String desc) Sets a description of the current action.voidsetLocation(Location location) Sets the file/location where this task was defined.voidsetProject(Project project) Sets the project object of this component.
-
Constructor Details
-
Patch
public Patch()
-
-
Method Details
-
setOriginalfile
The file to patch; optional if it can be inferred from the diff file- Parameters:
file- the file to patch
-
setDestfile
The name of a file to send the output to, instead of patching the file(s) in place; optional.- Parameters:
file- the file to send the output to- Since:
- Ant 1.6
-
setPatchfile
The file containing the diff output; required.- Parameters:
file- the file containing the diff output
-
setBackups
public void setBackups(boolean backups) flag to create backups; optional, default=false- Parameters:
backups- if true create backups
-
setIgnorewhitespace
public void setIgnorewhitespace(boolean ignore) flag to ignore whitespace differences; default=false- Parameters:
ignore- if true ignore whitespace differences
-
setStrip
Strip the smallest prefix containing num leading slashes from filenames.patch's -p option.
- Parameters:
num- number of lines to strip- Throws:
BuildException- if num is < 0, or other errors
-
setQuiet
public void setQuiet(boolean q) Work silently unless an error occurs; optional, default=false- Parameters:
q- if true suppress set the -s option on the patch command
-
setReverse
public void setReverse(boolean r) Assume patch was created with old and new files swapped; optional, default=false- Parameters:
r- if true set the -R option on the patch command
-
setDir
The directory to run the patch command in, defaults to the project's base directory.- Parameters:
directory- the directory to run the patch command in- Since:
- Ant 1.5
-
setFailOnError
public void setFailOnError(boolean value) Iftrue, stop the build process if the patch command exits with an error status.- Parameters:
value-trueif it should halt, otherwisefalse. The default isfalse.- Since:
- Ant 1.8.0
-
execute
execute patch- Overrides:
executein classTask- Throws:
BuildException- when it all goes a bit pear shaped
-