tasks/ext/PearPackage2Task.php
A task to create a PEAR package.xml version 2.0 file.
This class uses the PEAR_PackageFileManager2 class to perform the work.
This class is designed to be very flexible -- i.e. account for changes to the package.xml w/o requiring changes to this class. We've accomplished this by having generic
The
or
The
Here's an over-simple example of how this could be used:
Look at the build.xml in the Phing base directory (assuming you have the full distro / CVS version of Phing) to see a more complete example of how to call this script.
- Author
- Stuart Binge
- Author
- Hans Lellelid
- Package
- phing.tasks.ext
- Version
- $Id: 1b20dbb6595bd4c41d1e5f1430900e3bf95de411 $
\PearPackage2Task
A task to create a PEAR package.xml version 2.0 file.
This class uses the PEAR_PackageFileManager2 class to perform the work.
This class is designed to be very flexible -- i.e. account for changes to the package.xml w/o requiring changes to this class. We've accomplished this by having generic
The
or
The
Here's an over-simple example of how this could be used:
Look at the build.xml in the Phing base directory (assuming you have the full distro / CVS version of Phing) to see a more complete example of how to call this script.
- Parent(s)
- \PearPackageTask < \MatchingTask < \SelectorContainer < \ProjectComponent
- Author
- Stuart Binge
- Author
- Hans Lellelid
- Copyright
- 2001,2002 THYRELL. All rights reserved
- Version
- $Id: 1b20dbb6595bd4c41d1e5f1430900e3bf95de411 $
Properties

string
$description= ''
Description of the task
Inherited from: \Task::$$description\MatchingTask::$$description\PearPackageTask::$$description- Type
- string
- Inherited_from
- \Task::$$description
- Inherited_from
- \MatchingTask::$$description
- Inherited_from
- \PearPackageTask::$$description

\FileSet
$fileset= ''
- Type
- \FileSet
- Inherited_from
- \MatchingTask::$$fileset
- Inherited_from
- \PearPackageTask::$$fileset

array
$filesets= 'array()'
array()Details- Type
- array
- Inherited_from
- \PearPackageTask::$$filesets

\Location
$location= ''
Stored buildfile location
Inherited from: \Task::$$location\MatchingTask::$$location\PearPackageTask::$$location- Type
- \Location
- Inherited_from
- \Task::$$location
- Inherited_from
- \MatchingTask::$$location
- Inherited_from
- \PearPackageTask::$$location

$mappings= 'array()'
array()Details- Type
- n/a
- Inherited_from
- \PearPackageTask::$$mappings

array
$options= 'array()'
array()Details- Type
- array
- Inherited_from
- \PearPackageTask::$$options

$package= ''
- Type
- n/a
- Inherited_from
- \PearPackageTask::$$package

\PEAR_PackageFileManager
$pkg= ''
- Type
- \PEAR_PackageFileManager
- Inherited_from
- \PearPackageTask::$$pkg

$preparedOptions= 'array()'
array()Details- Type
- n/a
- Inherited_from
- \PearPackageTask::$$preparedOptions

\Project
$project= 'null'
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\Task::$$project\MatchingTask::$$project\PearPackageTask::$$projectnullDetails- Type
- \Project
- Inherited_from
- \ProjectComponent::$$project
- Inherited_from
- \Task::$$project
- Inherited_from
- \MatchingTask::$$project
- Inherited_from
- \PearPackageTask::$$project

\PearPkgRole[]
$roles= 'array()'
array()Details- Type
- \PearPkgRole[]
- Inherited_from
- \PearPackageTask::$$roles

\Target
$target= ''
Owning Target object
Inherited from: \Task::$$target\MatchingTask::$$target\PearPackageTask::$$target- Type
- \Target
- Inherited_from
- \Task::$$target
- Inherited_from
- \MatchingTask::$$target
- Inherited_from
- \PearPackageTask::$$target

string
$taskName= ''
Taskname for logger
Inherited from: \Task::$$taskName\MatchingTask::$$taskName\PearPackageTask::$$taskName- Type
- string
- Inherited_from
- \Task::$$taskName
- Inherited_from
- \MatchingTask::$$taskName
- Inherited_from
- \PearPackageTask::$$taskName

string
$taskType= ''
Internal taskname (req)
Inherited from: \Task::$$taskType\MatchingTask::$$taskType\PearPackageTask::$$taskType- Type
- string
- Inherited_from
- \Task::$$taskType
- Inherited_from
- \MatchingTask::$$taskType
- Inherited_from
- \PearPackageTask::$$taskType

boolean
$useDefaultExcludes= 'true'
trueDetails- Type
- boolean
- Inherited_from
- \MatchingTask::$$useDefaultExcludes
- Inherited_from
- \PearPackageTask::$$useDefaultExcludes

\RuntimeConfigurable
$wrapper= ''
Wrapper of the task
Inherited from: \Task::$$wrapper\MatchingTask::$$wrapper\PearPackageTask::$$wrapper- Type
- \RuntimeConfigurable
- Inherited_from
- \Task::$$wrapper
- Inherited_from
- \MatchingTask::$$wrapper
- Inherited_from
- \PearPackageTask::$$wrapper
Methods

__construct(
)
:
voidCreate instance; set fileset to new FileSet.
Inherited from: \MatchingTask::__construct()\PearPackageTask::__construct()
addFileSet(
$fs
)
:
voidNested creator, creates a FileSet for this task
Inherited from: \PearPackageTask::addFileSet()| Name | Type | Description |
|---|---|---|
| $fs |

appendSelector(
\FileSelector $selector
)
:
voidAdd a new selector into this container.
Inherited from: \MatchingTask::appendSelector()\PearPackageTask::appendSelector()| Name | Type | Description |
|---|---|---|
| $selector | \FileSelector | the new selector to add |

createAnd(
)
:
\AndSelectoradd an "And" selector entry on the selector list
Inherited from: \MatchingTask::createAnd()\PearPackageTask::createAnd()| Type | Description |
|---|---|
| \AndSelector |

createContains(
)
:
\ContainsSelectoradd a contains selector entry on the selector list
Inherited from: \MatchingTask::createContains()\PearPackageTask::createContains()| Type | Description |
|---|---|
| \ContainsSelector |

createCustom(
)
:
\ExtendSelectoradd an extended selector entry on the selector list
Inherited from: \MatchingTask::createCustom()\PearPackageTask::createCustom()| Type | Description |
|---|---|
| \ExtendSelector |

createDate(
)
:
\DateSelectoradd a selector date entry on the selector list
Inherited from: \MatchingTask::createDate()\PearPackageTask::createDate()| Type | Description |
|---|---|
| \DateSelector |

createDepend(
)
:
\DependSelectoradd a depends selector entry on the selector list
Inherited from: \MatchingTask::createDepend()\PearPackageTask::createDepend()| Type | Description |
|---|---|
| \DependSelector |

createDepth(
)
:
\DepthSelectoradd a depth selector entry on the selector list
Inherited from: \MatchingTask::createDepth()\PearPackageTask::createDepth()| Type | Description |
|---|---|
| \DepthSelector |

createExclude(
)
:
\PatternSetNameEntryadd a name entry on the exclude list
Inherited from: \MatchingTask::createExclude()\PearPackageTask::createExclude()| Type | Description |
|---|---|
| \PatternSetNameEntry |

createExcludesFile(
)
:
\PatternSetNameEntryadd a name entry on the include files list
Inherited from: \MatchingTask::createExcludesFile()\PearPackageTask::createExcludesFile()| Type | Description |
|---|---|
| \PatternSetNameEntry |

createFilename(
)
:
\FilenameSelectoradd a selector filename entry on the selector list
Inherited from: \MatchingTask::createFilename()\PearPackageTask::createFilename()| Type | Description |
|---|---|
| \FilenameSelector |

createInclude(
)
:
\PatternSetNameEntryadd a name entry on the include list
Inherited from: \MatchingTask::createInclude()\PearPackageTask::createInclude()| Type | Description |
|---|---|
| \PatternSetNameEntry |

createIncludesFile(
)
:
\PatternSetNameEntryadd a name entry on the include files list
Inherited from: \MatchingTask::createIncludesFile()\PearPackageTask::createIncludesFile()| Type | Description |
|---|---|
| \PatternSetNameEntry |

createMajority(
)
:
\MajoritySelectoradd a majority selector entry on the selector list
Inherited from: \MatchingTask::createMajority()\PearPackageTask::createMajority()| Type | Description |
|---|---|
| \MajoritySelector |

createNone(
)
:
\NoneSelectoradd a "None" selector entry on the selector list
Inherited from: \MatchingTask::createNone()\PearPackageTask::createNone()| Type | Description |
|---|---|
| \NoneSelector |

createNot(
)
:
\NotSelectoradd a "Not" selector entry on the selector list
Inherited from: \MatchingTask::createNot()\PearPackageTask::createNot()| Type | Description |
|---|---|
| \NotSelector |

createOr(
)
:
voidadd an "Or" selector entry on the selector list
Inherited from: \MatchingTask::createOr()\PearPackageTask::createOr()
createPatternSet(
)
:
\PatternSetadd a set of patterns
Inherited from: \MatchingTask::createPatternSet()\PearPackageTask::createPatternSet()| Type | Description |
|---|---|
| \PatternSet |

createPresent(
)
:
\PresentSelectoradd a present selector entry on the selector list
Inherited from: \MatchingTask::createPresent()\PearPackageTask::createPresent()| Type | Description |
|---|---|
| \PresentSelector |

createSelector(
)
:
\SelectSelectoradd a "Select" selector entry on the selector list
Inherited from: \MatchingTask::createSelector()\PearPackageTask::createSelector()| Type | Description |
|---|---|
| \SelectSelector |

createSize(
)
:
\SizeSelectoradd a selector size entry on the selector list
Inherited from: \MatchingTask::createSize()\PearPackageTask::createSize()| Type | Description |
|---|---|
| \SizeSelector |

getDescription(
)
:
stringReturns the textual description of the task
Inherited from: \Task::getDescription()\MatchingTask::getDescription()\PearPackageTask::getDescription()| Type | Description |
|---|---|
| string | The text description of the task |

getDirectoryScanner(
$baseDir
)
:
\DirectoryScannerReturns the directory scanner needed to access the files to process.
Inherited from: \MatchingTask::getDirectoryScanner()\PearPackageTask::getDirectoryScanner()| Name | Type | Description |
|---|---|---|
| $baseDir |
| Type | Description |
|---|---|
| \DirectoryScanner |

getFileSets(
)
:
arrayUsed by the PEAR_PackageFileManager_PhingFileSet lister.
Inherited from: \PearPackageTask::getFileSets()| Type | Description |
|---|---|
| array | FileSet[] |

getImplicitFileSet(
)
:
\FileSetAccessor for the implict fileset.
Inherited from: \MatchingTask::getImplicitFileSet()\PearPackageTask::getImplicitFileSet()| Type | Description |
|---|---|
| \FileSet |

getLocation(
)
:
\LocationReturns the location within the buildfile this task occurs. Used by {@link BuildException} to give detailed error messages.
Inherited from: \Task::getLocation()\MatchingTask::getLocation()\PearPackageTask::getLocation()| Type | Description |
|---|---|
| \Location | The location object describing the position of this task within the buildfile. |

getOwningTarget(
)
:
\TargetReturns the owning target of this task.
Inherited from: \Task::getOwningTarget()\MatchingTask::getOwningTarget()\PearPackageTask::getOwningTarget()| Type | Description |
|---|---|
| \Target | The target object that owns this task |

getProject(
)
:
\ProjectReturns a reference to current project
Inherited from: \ProjectComponent::getProject()\Task::getProject()\MatchingTask::getProject()\PearPackageTask::getProject()| Type | Description |
|---|---|
| \Project | Reference to current porject object |

getRegisterSlot(
string $slotName
)
:
voidReturns a name
Inherited from: \Task::getRegisterSlot()\MatchingTask::getRegisterSlot()\PearPackageTask::getRegisterSlot()| Name | Type | Description |
|---|---|---|
| $slotName | string |

getRuntimeConfigurableWrapper(
)
:
\RuntimeConfigurableReturns the wrapper object for runtime configuration
Inherited from: \Task::getRuntimeConfigurableWrapper()\MatchingTask::getRuntimeConfigurableWrapper()\PearPackageTask::getRuntimeConfigurableWrapper()| Type | Description |
|---|---|
| \RuntimeConfigurable | The wrapper object used by this task |

getSelectors(
$p
)
:
arrayReturns the set of selectors as an array.
Inherited from: \MatchingTask::getSelectors()\PearPackageTask::getSelectors()| Name | Type | Description |
|---|---|---|
| $p |
| Type | Description |
|---|---|
| array | FileSelector[] An array of selectors in this container |

getTaskName(
)
:
stringReturns the name of task, used only for log messages
Inherited from: \Task::getTaskName()\MatchingTask::getTaskName()\PearPackageTask::getTaskName()| Type | Description |
|---|---|
| string | Name of this task |

getTaskType(
)
:
stringReturns the name of the task under which it was invoked, usually the XML tagname
Inherited from: \Task::getTaskType()\MatchingTask::getTaskType()\PearPackageTask::getTaskType()| Type | Description |
|---|---|
| string | The type of this task (XML Tag) |

hasSelectors(
)
:
booleanIndicates whether there are any selectors here.
Inherited from: \MatchingTask::hasSelectors()\PearPackageTask::hasSelectors()| Type | Description |
|---|---|
| boolean | Whether any selectors are in this container |

init(
)
:
voidCalled by the parser to let the task initialize properly.
Should throw a BuildException if something goes wrong with the build
This is abstract here, but may not be overloaded by subclasses.
| Exception | Description |
|---|---|
| \BuildException |

log(
string $msg, integer $level
=
Project::MSG_INFO
)
:
voidProvides a project level log event to the task.
Inherited from: \Task::log()\MatchingTask::log()\PearPackageTask::log()| Name | Type | Description |
|---|---|---|
| $msg | string | The message to log |
| $level | integer | The priority of the message |
- See
- \BuildEvent
- See
- \BuildListener

main(
)
:
voidMain entry point.
Should throw a BuildException if someting goes wrong with the build
This is abstract here. Must be overloaded by real tasks.

maybeConfigure(
)
:
voidConfigure this task if it hasn't been done already.
Inherited from: \Task::maybeConfigure()\MatchingTask::maybeConfigure()\PearPackageTask::maybeConfigure()
perform(
)
:
voidPerfrom this task
Inherited from: \Task::perform()\MatchingTask::perform()\PearPackageTask::perform()
populateOptions(
)
:
voidAdds the options that are set via attributes and the nested tags to the options array.
Inherited from: \PearPackageTask::populateOptions()
selectorCount(
)
:
intGives the count of the number of selectors in this container
Inherited from: \MatchingTask::selectorCount()\PearPackageTask::selectorCount()| Type | Description |
|---|---|
| int | The number of selectors in this container |

selectorElements(
)
:
\anReturns an enumerator for accessing the set of selectors.
Inherited from: \MatchingTask::selectorElements()\PearPackageTask::selectorElements()| Type | Description |
|---|---|
| \an | enumerator that goes through each of the selectors |

setCaseSensitive(
boolean $isCaseSensitive
)
:
voidSets case sensitivity of the file system
Inherited from: \MatchingTask::setCaseSensitive()\PearPackageTask::setCaseSensitive()| Name | Type | Description |
|---|---|---|
| $isCaseSensitive | boolean | "true"|"on"|"yes" if file system is case sensitive, "false"|"off"|"no" when not. |

setDefaultexcludes(
boolean $useDefaultExcludes
)
:
voidSets whether default exclusions should be used or not.
Inherited from: \MatchingTask::setDefaultexcludes()\PearPackageTask::setDefaultexcludes()| 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
)
:
voidSets a textual description of the task
Inherited from: \Task::setDescription()\MatchingTask::setDescription()\PearPackageTask::setDescription()| Name | Type | Description |
|---|---|---|
| $desc | string | The text describing the task |

setDestFile(
$f
)
:
voidSets the file to use for generated package.xml
Inherited from: \PearPackageTask::setDestFile()| Name | Type | Description |
|---|---|---|
| $f |

setExcludes(
string $excludes
)
:
voidSets the set of exclude patterns. Patterns may be separated by a comma or a space.
Inherited from: \MatchingTask::setExcludes()\PearPackageTask::setExcludes()| Name | Type | Description |
|---|---|---|
| $excludes | string | the string containing the exclude patterns |

setExcludesfile(
\PhingFile $excludesfile
)
:
voidSets the name of the file containing the includes patterns.
Inherited from: \MatchingTask::setExcludesfile()\PearPackageTask::setExcludesfile()| Name | Type | Description |
|---|---|---|
| $excludesfile | \PhingFile | A string containing the filename to fetch the include patterns from. |

setFollowSymlinks(
boolean $followSymlinks
)
:
voidSets whether or not symbolic links should be followed.
Inherited from: \MatchingTask::setFollowSymlinks()\PearPackageTask::setFollowSymlinks()| Name | Type | Description |
|---|---|---|
| $followSymlinks | boolean | whether or not symbolic links should be followed |

setIncludes(
string $includes
)
:
voidSets the set of include patterns. Patterns may be separated by a comma or a space.
Inherited from: \MatchingTask::setIncludes()\PearPackageTask::setIncludes()| Name | Type | Description |
|---|---|---|
| $includes | string | the string containing the include patterns |

setIncludesfile(
\PhingFile $includesfile
)
:
voidSets the name of the file containing the includes patterns.
Inherited from: \MatchingTask::setIncludesfile()\PearPackageTask::setIncludesfile()| Name | Type | Description |
|---|---|---|
| $includesfile | \PhingFile | A string containing the filename to fetch the include patterns from. |

setLocation(
\Location $location
)
:
voidSets the location within the buildfile this task occurs. Called by the parser to set location information.
Inherited from: \Task::setLocation()\MatchingTask::setLocation()\PearPackageTask::setLocation()| Name | Type | Description |
|---|---|---|
| $location | \Location | The location object describing the position of this task within the buildfile. |

setOptions(
)
:
voidSets PEAR package.xml options, based on class properties.
Inherited from: \PearPackageTask::setOptions()
setOwningTarget(
\Target $target
)
:
voidSets the owning target this task belongs to.
Inherited from: \Task::setOwningTarget()\MatchingTask::setOwningTarget()\PearPackageTask::setOwningTarget()| Name | Type | Description |
|---|---|---|
| $target | \Target | Reference to owning target |

setProject(
\Project $project
)
:
voidReferences the project to the current component.
Inherited from: \MatchingTask::setProject()\PearPackageTask::setProject()| Name | Type | Description |
|---|---|---|
| $project | \Project | The reference to the current project |

setRuntimeConfigurableWrapper(
\RuntimeConfigurable $wrapper
)
:
voidSets the wrapper object this task should use for runtime configurable elements.
Inherited from: \Task::setRuntimeConfigurableWrapper()\MatchingTask::setRuntimeConfigurableWrapper()\PearPackageTask::setRuntimeConfigurableWrapper()| Name | Type | Description |
|---|---|---|
| $wrapper | \RuntimeConfigurable | The wrapper object this task should use |

setTaskName(
string $name
)
:
stringSets the name of this task for log messages
Inherited from: \Task::setTaskName()\MatchingTask::setTaskName()\PearPackageTask::setTaskName()| Name | Type | Description |
|---|---|---|
| $name | string |
| Type | Description |
|---|---|
| string | A string representing the name of this task for log |

setTaskType(
string $name
)
:
voidSets the type of the task. Usually this is the name of the XML tag
Inherited from: \Task::setTaskType()\MatchingTask::setTaskType()\PearPackageTask::setTaskType()| Name | Type | Description |
|---|---|---|
| $name | string | The type of this task (XML Tag) |