# tasks/ext/pdepend/PhpDependTask.php

$Id: PhpDependTask.php 1038 2011-02-08 12:22:02Z mrook $

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

This software consists of voluntary contributions made by many individuals and is licensed under the LGPL. For more information please see http://phing.info.

## \PhpDependTask
jump to top

Package: phing\tasks\ext\pdepend

Runs the PHP_Depend software analyzer and metric tool.

Performs static code analysis on a given source base.

Parent(s)
  \Task < \ProjectComponent
Author
  Benjamin Schultz
Copyright
  2001,2002 THYRELL. All rights reserved
Since
  2.4.1
Version
  $Id: PhpDependTask.php 1038 2011-02-08 12:22:02Z mrook $

### Properties

`\array<string> $_allowedFileExtensions= 'array('php''`

List of allowed file extensions. Default file extensions are <b>php</b> and <p>php5</b>.

Default value `array('php'`Details

Type
  \array<string>

`\array<PhpDependAnalyzerElement> $_analyzers= 'array()'`

Analyzer elements

Default value `array()`Details

Type
  \array<PhpDependAnalyzerElement>

`\PhingFile $_configFile= 'null'`

PHP_Depend configuration file

Default value `null` Details

Type
  \PhingFile

`boolean $_debug= 'false'`

Flag for enable/disable debugging

Default value `false` Details

Type
  boolean

`\array<string> $_excludeDirectories= 'array('.git''`

List of exclude directories. Default exclude dirs are <b>.git</b>, <b>.svn</b> and <b>CVS</b>.

Default value `array('.git'`Details

Type
  \array<string>

`\array<string> $_excludePackages= 'array()'`

List of exclude packages

Default value `array()`Details

Type
  \array<string>

`\PhingFile $_file= 'null'`

A php source code filename or directory

Default value `null` Details

Type
  \PhingFile

`\array<FileSet> $_filesets= 'array()'`

All fileset objects assigned to this task

Default value `array()`Details

Type
  \array<FileSet>

`boolean $_haltonerror= 'false'`

Flag that determines whether to halt on error

Default value `false` Details

Type
  boolean

`\array<PhpDependLoggerElement> $_loggers= 'array()'`

Logger elements

Default value `array()`Details

Type
  \array<PhpDependLoggerElement>

`\PHP_Depend_TextUI_Runner $_runner= 'null'`

Holds the PHP_Depend runner instance

Default value `null` Details

Type
  \PHP_Depend_TextUI_Runner

`boolean $_supportBadDocumentation= 'false'`

Should PHP_Depend treat <b>+global</b> as a regular project package?

Default value `false` Details

Type
  boolean

`boolean $_withoutAnnotations= 'false'`

Should the parse ignore doc comment annotations?

Default value `false` Details

Type
  boolean

`string $description= ''`
inherited

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

Type
  string
Inherited_from
  \Task::$description

`\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

`\RuntimeConfigurable $wrapper= ''`
inherited

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

Type
  \RuntimeConfigurable
Inherited_from
  \Task::$wrapper

### Methods

`createAnalyzer( ) : \PhpDependAnalyzerElement`

Create object for nested analyzer element

Returns

Type | Description
--- | ---
\PhpDependAnalyzerElement |

`createFileSet( ) : \FileSet`

Nested creator, adds a set of files (nested fileset attribute)

Returns

Type | Description
--- | ---
\FileSet | The created fileset object

`createLogger( ) : \PhpDependLoggerElement`

Create object for nested logger element

Returns

Type | Description
--- | ---
\PhpDependLoggerElement |

`getDescription( ) : string`
inherited

Returns the textual description of the task

Inherited from: \Task::getDescription()
Returns

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

`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

`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)

`init( ) : void`

Load the necessary environment for running PHP_Depend

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`

Executes PHP_Depend_TextUI_Runner against PhingFile or a FileSet

Should throw a BuildException if someting goes wrong with the build

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

Throws

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

`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()
`setAllowedFileExtensions( string $fileExtensions ) : void`

Sets a list of filename extensions for valid php source code files

Parameters

Name | Type | Description
--- | --- | ---
$fileExtensions | string | List of valid file extensions

`setConfigFile( \PhingFile $configFile ) : void`

Set the configuration file

Parameters

Name | Type | Description
--- | --- | ---
$configFile | \PhingFile | The configuration file

`setDebug( boolean $debug ) : void`

Set debugging On/Off

Parameters

Name | Type | Description
--- | --- | ---
$debug | boolean |

`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

`setExcludeDirectories( string $excludeDirectories ) : void`

Sets a list of exclude directories

Parameters

Name | Type | Description
--- | --- | ---
$excludeDirectories | string | List of exclude directories

`setExcludePackages( string $excludePackages ) : void`

Sets a list of exclude packages

Parameters

Name | Type | Description
--- | --- | ---
$excludePackages | string | Exclude packages

`setFile( \PhingFile $file ) : void`

Set the input source file or directory

Parameters

Name | Type | Description
--- | --- | ---
$file | \PhingFile | The input source file or directory

`setHaltonerror( boolean $haltonerror ) : void`

Set halt on error

Parameters

Name | Type | Description
--- | --- | ---
$haltonerror | boolean |

`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`
inherited

References the project to the current component.

Inherited from: \ProjectComponent::setProject()
Parameters

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

`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

`setSupportBadDocumentation( boolean $supportBadDocumentation ) : void`

Should PHP_Depend support projects with a bad documentation. If this option is set to true, PHP_Depend will treat the default package +global as a regular project package.

Parameters

Name | Type | Description
--- | --- | ---
$supportBadDocumentation | boolean |

`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)

`setWithoutAnnotations( boolean $withoutAnnotations ) : void`

Should the parser ignore doc comment annotations?

Parameters

Name | Type | Description
--- | --- | ---
$withoutAnnotations | boolean |

`validateAnalyzers( ) : void`

Validates the available analyzers

Throws

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

`validateLoggers( ) : void`

Validates the available loggers

Throws

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

Documentation was generated by DocBlox 0.15.1.