Patches a file by applying a 'diff' file to it

Requires "patch" to be on the execution path.

package phing.tasks.ext
author Andreas Aderhold
copyright 2001,2002 THYRELL. All rights reserved
version $Id$

 Methods

Returns the textual description of the task

getDescription() : string
Inherited
inherited_from \Task::getDescription()

Returns

stringThe text description of the task

Returns the location within the buildfile this task occurs.

getLocation() : \Location
Inherited

Used by BuildException to give detailed error messages.

inherited_from \Task::getLocation()

Returns

\LocationThe location object describing the position of this task within the buildfile.

Returns the owning target of this task.

getOwningTarget() : \Target
Inherited
inherited_from \Task::getOwningTarget()

Returns

\TargetThe target object that owns this task

Returns a reference to current project

getProject() : \Project
Inherited
inherited_from \ProjectComponent::getProject()
inherited_from \Task::getProject()

Returns

\ProjectReference to current porject object

Returns the wrapper object for runtime configuration

getRuntimeConfigurableWrapper() : \RuntimeConfigurable
Inherited
inherited_from \Task::getRuntimeConfigurableWrapper()

Returns

\RuntimeConfigurableThe wrapper object used by this task

Returns the name of task, used only for log messages

getTaskName() : string
Inherited
inherited_from \Task::getTaskName()

Returns

stringName of this task

Returns the name of the task under which it was invoked, usually the XML tagname

getTaskType() : string
Inherited
inherited_from \Task::getTaskType()

Returns

stringThe type of this task (XML Tag)

Called by the parser to let the task initialize properly.

init() 
Inherited

Should throw a BuildException if something goes wrong with the build

This is abstract here, but may not be overloaded by subclasses.

inherited_from \Task::init()

Exceptions

\BuildException

Provides a project level log event to the task.

log(string $msg, integer $level) 
Inherited
see \global\BuildEvent
see \global\BuildListener
inherited_from \Task::log()

Parameters

$msg

string

The message to log

$level

integer

The priority of the message

Main task method

main() : void

This method may be called more than once, if the task is invoked more than once. For example, if target1 and target2 both depend on target3, then running phing target1 target2 will run all tasks in target3 twice.

Should throw a BuildException if someting goes wrong with the build

This is abstract here. Must be overloaded by real tasks.

Exceptions

\BuildException when it all goes a bit pear shaped

Configure this task if it hasn't been done already.

maybeConfigure() 
Inherited
inherited_from \Task::maybeConfigure()

Perfrom this task

perform() 
Inherited
inherited_from \Task::perform()

Flag to create backups

setBackups(bool $backups) : void

Optional, default - false

Parameters

$backups

bool

If true create backups

Sets a textual description of the task

setDescription(string $desc) 
Inherited
inherited_from \Task::setDescription()

Parameters

$desc

string

The text describing the task

The name of a file to send the output to, instead of patching the file(s) in place

setDestFile(string $file) : void

Optional.

Parameters

$file

string

File to send the output to

The directory to run the patch command in

setDir(string $directory) : void

Defaults to the project's base directory.

Parameters

$directory

string

Directory to run the patch command in

Ignore patches that seem to be reversed or already applied

setForward(bool $flag) : void

Parameters

$flag

bool

If true set the -N (--forward) option

Set the maximum fuzz factor

setFuzz(string $value) : void

Defaults to 0

Parameters

$value

string

Value of a fuzz factor

If true, stop the build process if the patch command exits with an error status.

setHaltOnFailure(bool $value) : void

The default is "false"

Parameters

$value

bool

"true" if it should halt, otherwise "false"

Flag to ignore whitespace differences;

setIgnoreWhiteSpace(bool $ignore) : void

Default - false

Parameters

$ignore

bool

If true ignore whitespace differences

Sets the location within the buildfile this task occurs.

setLocation(\Location $location) 
Inherited

Called by the parser to set location information.

inherited_from \Task::setLocation()

Parameters

$location

\Location

The location object describing the position of this task within the buildfile.

The file to patch

setOriginalFile(string $file) : void

Optional if it can be inferred from the diff file.

Parameters

$file

string

File to patch

Sets the owning target this task belongs to.

setOwningTarget(\Target $target) 
Inherited
inherited_from \Task::setOwningTarget()

Parameters

$target

\Target

Reference to owning target

The file containing the diff output

setPatchFile(string $file) : void

Required.

Parameters

$file

string

File containing the diff output

Exceptions

\BuildException if $file not exists

References the project to the current component.

setProject(\Project $project) 
Inherited
inherited_from \ProjectComponent::setProject()
inherited_from \Task::setProject()

Parameters

$project

\Project

The reference to the current project

Work silently unless an error occurs

setQuiet(bool $flag) : void

Optional, default - false

Parameters

$flag

bool

If true suppress set the -s option on the patch command

Assume patch was created with old and new files swapped

setReverse(bool $flag) : void

Optional, default - false

Parameters

$flag

bool

If true set the -R option on the patch command

Sets the wrapper object this task should use for runtime configurable elements.

setRuntimeConfigurableWrapper(\RuntimeConfigurable $wrapper) 
Inherited
inherited_from \Task::setRuntimeConfigurableWrapper()

Parameters

$wrapper

\RuntimeConfigurable

The wrapper object this task should use

Strip the smallest prefix containing <i>num</i> leading slashes from filenames.

setStrip(int $num) : void

patch's --strip option.

Parameters

$num

int

number of lines to strip

Exceptions

\BuildException if num is < 0, or other errors

Sets the name of this task for log messages

setTaskName(string $name) : string
Inherited
inherited_from \Task::setTaskName()

Parameters

$name

string

Returns

stringA string representing the name of this task for log

Sets the type of the task.

setTaskType(string $name) 
Inherited

Usually this is the name of the XML tag

inherited_from \Task::setTaskType()

Parameters

$name

string

The type of this task (XML Tag)

Returns a name

getRegisterSlot(string $slotName) 
Inherited
inherited_from \Task::getRegisterSlot()

Parameters

$slotName

string

 Properties

 

$description : string
Inherited
inherited_from \Task::$$description
 

$location : \Location
Inherited
inherited_from \Task::$$location
 

$project : \Project
Inherited
inherited_from \ProjectComponent::$$project
inherited_from \Task::$$project
 

$target : \Target
Inherited
inherited_from \Task::$$target
 

$taskName : string
Inherited
inherited_from \Task::$$taskName
 

$taskType : string
Inherited
inherited_from \Task::$$taskType
 

$wrapper : \RuntimeConfigurable
Inherited
inherited_from \Task::$$wrapper
 

$cmdArgs : array
 

$haltOnFailure : bool
 

$originalFile : string
 

$patchFile : string
 

$strip : int

 Constants

 

Base command to be executed (must end with a space character!)

CMD : string