# tasks/system/MatchingTask.php

## \MatchingTask
jump to top

Package: phing\tasks\system

This is an abstract task that should be used by all those tasks that require to include or exclude files based on pattern matching.

This is very closely based on the ANT class of the same name.

Implements
  \SelectorContainer
Parent(s)
  \Task < \ProjectComponent
Children
  \ZendGuardEncodeTask
  \TarTask
  \PearPackageTask
  \ZipTask
  \ExtractBaseTask
  \PharPackageTask
Author
  Hans Lellelid (Phing)
Author
  Arnout J. Kuiper (Ant)
Author
  Stefano Mazzocchi (Ant)
Author
  Sam Ruby (Ant)
Author
  Jon S. Stevens (Ant
Author
  Stefan Bodewig (Ant)
Author
  Bruce Atherton (Ant)
Copyright
  2001,2002 THYRELL. All rights reserved
Version
  $Revision: 532 $

### Properties

`string $description= ''`
inherited

description of the taskInherited from: \Task::$description
Details

Type
  string
Inherited_from
  \Task::$description

`\FileSet $fileset= ''`

Details

Type
  \FileSet

`\Location $location= ''`
inherited

stored buildfile locationInherited from: \Task::$location
Details

Type
  \Location
Inherited_from
  \Task::$location

`\Project $project= 'null'`
inherited

Holds a reference to the project that a project component (a task, a target, etc.) belongs to

A reference to the current project instanceInherited from: \ProjectComponent::$project
Default value `null` Details

Type
  \Project
Inherited_from
  \ProjectComponent::$project

`\Target $target= ''`
inherited

owning Target objectInherited from: \Task::$target
Details

Type
  \Target
Inherited_from
  \Task::$target

`string $taskName= ''`
inherited

Taskname for loggerInherited from: \Task::$taskName
Details

Type
  string
Inherited_from
  \Task::$taskName

`string $taskType= ''`
inherited

internal taskname (req)Inherited from: \Task::$taskType
Details

Type
  string
Inherited_from
  \Task::$taskType

`boolean $useDefaultExcludes= 'true'`

Default value `true` Details

Type
  boolean

`\RuntimeConfigurable $wrapper= ''`
inherited

wrapper of the taskInherited from: \Task::$wrapper
Details

Type
  \RuntimeConfigurable
Inherited_from
  \Task::$wrapper

### Methods

`__construct( ) : void`

Create instance; set fileset to new FileSet.

`appendSelector( \FileSelector $selector ) : void`

Add a new selector into this container.

Parameters

Name | Type | Description
--- | --- | ---
$selector | \FileSelector | the new selector to add

`createAnd( ) : \AndSelector`

add an "And" selector entry on the selector list

Returns

Type | Description
--- | ---
\AndSelector |

`createContains( ) : \ContainsSelector`

add a contains selector entry on the selector list

Returns

Type | Description
--- | ---
\ContainsSelector |

`createCustom( ) : \ExtendSelector`

add an extended selector entry on the selector list

Returns

Type | Description
--- | ---
\ExtendSelector |

`createDate( ) : \DateSelector`

add a selector date entry on the selector list

Returns

Type | Description
--- | ---
\DateSelector |

`createDepend( ) : \DependSelector`

add a depends selector entry on the selector list

Returns

Type | Description
--- | ---
\DependSelector |

`createDepth( ) : \DepthSelector`

add a depth selector entry on the selector list

Returns

Type | Description
--- | ---
\DepthSelector |

`createExclude( ) : \PatternSetNameEntry`

add a name entry on the exclude list

Returns

Type | Description
--- | ---
\PatternSetNameEntry |

`createExcludesFile( ) : \PatternSetNameEntry`

add a name entry on the include files list

Returns

Type | Description
--- | ---
\PatternSetNameEntry |

`createFilename( ) : \FilenameSelector`

add a selector filename entry on the selector list

Returns

Type | Description
--- | ---
\FilenameSelector |

`createInclude( ) : \PatternSetNameEntry`

add a name entry on the include list

Returns

Type | Description
--- | ---
\PatternSetNameEntry |

`createIncludesFile( ) : \PatternSetNameEntry`

add a name entry on the include files list

Returns

Type | Description
--- | ---
\PatternSetNameEntry |

`createMajority( ) : \MajoritySelector`

add a majority selector entry on the selector list

Returns

Type | Description
--- | ---
\MajoritySelector |

`createNone( ) : \NoneSelector`

add a "None" selector entry on the selector list

Returns

Type | Description
--- | ---
\NoneSelector |

`createNot( ) : \NotSelector`

add a "Not" selector entry on the selector list

Returns

Type | Description
--- | ---
\NotSelector |

`createOr( ) : void`

add an "Or" selector entry on the selector list

`createPatternSet( ) : \PatternSet`

add a set of patterns

Returns

Type | Description
--- | ---
\PatternSet |

`createPresent( ) : \PresentSelector`

add a present selector entry on the selector list

Returns

Type | Description
--- | ---
\PresentSelector |

`createSelector( ) : \SelectSelector`

add a "Select" selector entry on the selector list

Returns

Type | Description
--- | ---
\SelectSelector |

`createSize( ) : \SizeSelector`

add a selector size entry on the selector list

Returns

Type | Description
--- | ---
\SizeSelector |

`getDescription( ) : string`
inherited

Returns the textual description of the task

Inherited from: \Task::getDescription()
Returns

Type | Description
--- | ---
string | The text description of the task

`getDirectoryScanner( $baseDir ) : \DirectoryScanner`

Returns the directory scanner needed to access the files to process.

Parameters

Name | Type | Description
--- | --- | ---
$baseDir |  |

Returns

Type | Description
--- | ---
\DirectoryScanner |

`getImplicitFileSet( ) : \FileSet`
final

Accessor for the implict fileset.

Returns

Type | Description
--- | ---
\FileSet |

`getLocation( ) : \Location`
inherited

Returns the location within the buildfile this task occurs. Used by {@link BuildException} to give detailed error messages.

Inherited from: \Task::getLocation()
Returns

Type | Description
--- | ---
\Location | The location object describing the position of this task within the buildfile.

`getOwningTarget( ) : \Target`
inherited

Returns the owning target of this task.

Inherited from: \Task::getOwningTarget()
Returns

Type | Description
--- | ---
\Target | The target object that owns this task

`getProject( ) : \Project`
inherited

Returns a reference to current project

Inherited from: \ProjectComponent::getProject()
Returns

Type | Description
--- | ---
\Project | Reference to current porject object

`getRegisterSlot( $slotName ) : void`
inherited

Returns a name

Inherited from: \Task::getRegisterSlot()
Parameters

Name | Type | Description
--- | --- | ---
$slotName |  |

`getRuntimeConfigurableWrapper( ) : \RuntimeConfigurable`
inherited

Returns the wrapper object for runtime configuration

Inherited from: \Task::getRuntimeConfigurableWrapper()
Returns

Type | Description
--- | ---
\RuntimeConfigurable | The wrapper object used by this task

`getSelectors( $p ) : array`

Returns the set of selectors as an array.

Parameters

Name | Type | Description
--- | --- | ---
$p |  |

Returns

Type | Description
--- | ---
array | FileSelector[] An array of selectors in this container

`getTaskName( ) : string`
inherited

Returns the name of task, used only for log messages

Inherited from: \Task::getTaskName()
Returns

Type | Description
--- | ---
string | Name of this task

`getTaskType( ) : string`
inherited

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

Inherited from: \Task::getTaskType()
Returns

Type | Description
--- | ---
string | The type of this task (XML Tag)

`hasSelectors( ) : boolean`

Indicates whether there are any selectors here.

Returns

Type | Description
--- | ---
boolean | Whether any selectors are in this container

`init( ) : void`
inherited

Called by the parser to let the task initialize properly.

Inherited from: \Task::init()

Should throw a BuildException if something goes wrong with the build

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

Throws

Exception | Description
--- | ---
\BuildException |

`log( string $msg, integer $level = Project::MSG_INFO ) : void`
inherited

Provides a project level log event to the task.

Inherited from: \Task::log()

@param string $msg The message to be logged.

Parameters

Name | Type | Description
--- | --- | ---
$msg | string | The message to log
$level | integer | The priority of the message

Details

See
  \BuildEvent
See
  \BuildListener

`main( ) : void`
abstract inherited

Called by the project to let the task do it's work. 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.

Inherited from: \Task::main()

Should throw a BuildException if someting goes wrong with the build

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

`maybeConfigure( ) : void`
inherited

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

Inherited from: \Task::maybeConfigure()
`perform( ) : void`
inherited

Perfrom this task

Inherited from: \Task::perform()
`selectorCount( ) : int`

Gives the count of the number of selectors in this container

Returns

Type | Description
--- | ---
int | The number of selectors in this container

`selectorElements( ) : \an`

Returns an enumerator for accessing the set of selectors.

Returns

Type | Description
--- | ---
\an | enumerator that goes through each of the selectors

`setCaseSensitive( boolean $isCaseSensitive ) : void`

Sets case sensitivity of the file system

Parameters

Name | Type | Description
--- | --- | ---
$isCaseSensitive | boolean | "true"|"on"|"yes" if file system is case sensitive, "false"|"off"|"no" when not.

`setDefaultexcludes( boolean $useDefaultExcludes ) : void`

Sets whether default exclusions should be used or not.

Parameters

Name | Type | Description
--- | --- | ---
$useDefaultExcludes | boolean | "true"|"on"|"yes" when default exclusions should be used, "false"|"off"|"no" when they shouldn't be used.

`setDescription( string $desc ) : void`
inherited

Sets a textual description of the task

Inherited from: \Task::setDescription()
Parameters

Name | Type | Description
--- | --- | ---
$desc | string | The text describing the task

`setExcludes( string $excludes ) : void`

Sets the set of exclude patterns. Patterns may be separated by a comma or a space.

Parameters

Name | Type | Description
--- | --- | ---
$excludes | string | the string containing the exclude patterns

`setExcludesfile( \PhingFile $excludesfile ) : void`

Sets the name of the file containing the includes patterns.

Parameters

Name | Type | Description
--- | --- | ---
$excludesfile | \PhingFile | A string containing the filename to fetch the include patterns from.

`setFollowSymlinks( boolean $followSymlinks ) : void`

Sets whether or not symbolic links should be followed.

Parameters

Name | Type | Description
--- | --- | ---
$followSymlinks | boolean | whether or not symbolic links should be followed

`setIncludes( string $includes ) : void`

Sets the set of include patterns. Patterns may be separated by a comma or a space.

Parameters

Name | Type | Description
--- | --- | ---
$includes | string | the string containing the include patterns

`setIncludesfile( \PhingFile $includesfile ) : void`

Sets the name of the file containing the includes patterns.

Parameters

Name | Type | Description
--- | --- | ---
$includesfile | \PhingFile | A string containing the filename to fetch the include patterns from.

`setLocation( \Location $location ) : void`
inherited

Sets the location within the buildfile this task occurs. Called by the parser to set location information.

Inherited from: \Task::setLocation()
Parameters

Name | Type | Description
--- | --- | ---
$location | \Location | The location object describing the position of this task within the buildfile.

`setOwningTarget( \Target $target ) : void`
inherited

Sets the owning target this task belongs to.

Inherited from: \Task::setOwningTarget()
Parameters

Name | Type | Description
--- | --- | ---
$target | \Target | Reference to owning target

`setProject( \Project $project ) : void`

References the project to the current component.

Parameters

Name | Type | Description
--- | --- | ---
$project | \Project | The reference to the current project

Details

See
  \ProjectComponent::setProject()

`setRuntimeConfigurableWrapper( \RuntimeConfigurable $wrapper ) : void`
inherited

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

Inherited from: \Task::setRuntimeConfigurableWrapper()
Parameters

Name | Type | Description
--- | --- | ---
$wrapper | \RuntimeConfigurable | The wrapper object this task should use

`setTaskName( $name ) : string`
inherited

Sets the name of this task for log messages

Inherited from: \Task::setTaskName()
Parameters

Name | Type | Description
--- | --- | ---
$name |  |

Returns

Type | Description
--- | ---
string | A string representing the name of this task for log

`setTaskType( string $name ) : void`
inherited

Sets the type of the task. Usually this is the name of the XML tag

Inherited from: \Task::setTaskType()
Parameters

Name | Type | Description
--- | --- | ---
$name | string | The type of this task (XML Tag)

Documentation was generated by DocBlox 0.15.1.