# PhpDocumentorExternalTask

Extends \PhpDocumentorTask

Task to run phpDocumentor with an external process

This classes uses the commandline phpdoc script to build documentation. Use this task instead of the PhpDocumentorTask when you've a clash with the Smarty libraries.

author | Michiel Rook mrook@php.net
author | Markus Fischer markus@fischer.name
version | $Id: b72762694ae5d5619ecebf9b66c08bd6ff868821 $
package | phing.tasks.ext.phpdoc

### Methods

## Constructs an argument string for phpDocumentor

    constructArguments() : array

### Response

`array`

## Creates a FileSet.

    createFileset() : \FileSet

inherited

### Response

`\FileSet`

## Creates a readme/install/changelog fileset.

    createProjdocfileset() : \FileSet

inherited

### Response

`\FileSet`

## Searches include_path for PhpDocumentor install and adjusts include_path appropriately.

    findPhpDocumentorInstall()

inherited

throws

- if unable to find PhpDocumentor on include_path

## Returns the textual description of the task

    getDescription() : string

inherited

### Response

`string`

The text description of the task

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

    getLocation() : \Location

inherited

### Response

`\Location`

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

## Returns the owning target of this task.

    getOwningTarget() : \Target

inherited

### Response

`\Target`

The target object that owns this task

## Returns the path to the phpDocumentor executable

    getProgramPath()

## Returns a reference to current project

    getProject() : \Project

inherited

### Response

`\Project`

Reference to current porject object

## Returns a name

    getRegisterSlot(string $slotName) : \RegisterSlot

inherited

### Arguments

#### $slotName

`string`

### Response

`\RegisterSlot`

## Returns the wrapper object for runtime configuration

    getRuntimeConfigurableWrapper() : \RuntimeConfigurable

inherited

### Response

`\RuntimeConfigurable`

The wrapper object used by this task

## Returns the name of task, used only for log messages

    getTaskName() : string

inherited

### Response

`string`

Name of this task

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

    getTaskType() : string

inherited

### Response

`string`

The 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.

throws |

## Logs a message with the given priority.

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

inherited

### Arguments

#### $msg

`string`

The message to be logged.

#### $level

`integer`

The message's priority at this message should have

## 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 <em>phing target1 target2</em> will run all tasks in target3 twice.

    main()

inherited abstract

Should throw a BuildException if someting goes wrong with the build

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

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

    maybeConfigure()

inherited

## Perfrom this task

    perform()

inherited

throws |

## Set a directory to search for configuration files in.

    setConfigdir(\PhingFile $d)

inherited

### Arguments

#### $d

`\PhingFile`

## custom tags, will be recognized and put in tags[] instead of unknowntags[].

    setCustomtags(string $sCustomtags)

inherited

### Arguments

#### $sCustomtags

`string`

## Sets the default category name.

    setDefaultcategoryname(string $name)

inherited

### Arguments

#### $name

`string`

## Sets the default package name.

    setDefaultpackagename(string $name)

inherited

### Arguments

#### $name

`string`

## Sets a textual description of the task

    setDescription(string $desc)

inherited

### Arguments

#### $desc

`string`

The text describing the task

## Set the destination directory for the generated documentation

    setDestdir(\PhingFile $destdir)

inherited

### Arguments

#### $destdir

`\PhingFile`

## Set a directory to search for examples in.

    setExamplesdir(\PhingFile $d)

inherited

### Arguments

#### $d

`\PhingFile`

## Set files to ignore

    setIgnore(string $sIgnore)

inherited

### Arguments

#### $sIgnore

`string`

## Ignore symlinks to other files or directories.

    setIgnoresymlinks(boolean $bSet)

### Arguments

#### $bSet

`boolean`

## Set (comma-separated) list of tags to ignore.

    setIgnoretags(string $tags)

inherited

### Arguments

#### $tags

`string`

## Whether to use javadoc descriptions (more primitive).

    setJavadocdesc( $javadoc)

inherited

### Arguments

#### $javadoc

``

## Set whether to generate sourcecode for each file parsed

    setLinksource( $b)

inherited

### Arguments

#### $b

``

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

    setLocation(\Location $location)

inherited

### Arguments

#### $location

`\Location`

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

## Set the output format (e.g. HTML:Smarty:PHP).

    setOutput(string $output)

inherited

### Arguments

#### $output

`string`

## Sets the owning target this task belongs to.

    setOwningTarget(\Target $target)

inherited

### Arguments

#### $target

`\Target`

## Set (comma-separated) list of packages to output.

    setPackageoutput(string $packages)

inherited

### Arguments

#### $packages

`string`

## Should private members/classes be documented

    setParseprivate( $parseprivate)

inherited

### Arguments

#### $parseprivate

``

## Set whether to parse as PEAR repository.

    setPear(boolean $b)

inherited

### Arguments

#### $b

`boolean`

## Sets the options on the passed-in phpdoc setup object.

    setPhpDocumentorOptions(\PhingPhpDocumentorSetup $phpdoc)

inherited

### Arguments

#### $phpdoc

`\PhingPhpDocumentorSetup`

## Sets the path to the phpDocumentor executable

    setProgramPath( $programPath)

### Arguments

#### $programPath

``

## References the project to the current component.

    setProject(\Project $project) : void

inherited

### Arguments

#### $project

`\Project`

The reference to the current project

## Set whether to suppress output.

    setQuiet(boolean $b)

inherited

### Arguments

#### $b

`boolean`

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

    setRuntimeConfigurableWrapper(\RuntimeConfigurable $wrapper)

inherited

### Arguments

#### $wrapper

`\RuntimeConfigurable`

The wrapper object this task should use

## Set whether to generate sourcecode for each file parsed

    setSourcecode( $b)

inherited

### Arguments

#### $b

``

## Set the source path. A directory or a comma separate list of directories.

    setSourcepath( $sourcepath)

### Arguments

#### $sourcepath

``

## Alias for {@link setDestdir()}.

    setTarget(\PhingFile $destdir)

inherited

see | \PhpDocumentorTask::setDestdir()

### Arguments

#### $destdir

`\PhingFile`

## Sets the name of this task for log messages

    setTaskName(string $name) : string

inherited

### Arguments

#### $name

`string`

### Response

`string`

A string representing the name of this task for log

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

    setTaskType( $name)

inherited

### Arguments

#### $name

``

## Set the title for the generated documentation

    setTitle( $title)

inherited

### Arguments

#### $title

``

## Control whether or not warnings will be shown for undocumented elements.

    setUndocumentedelements(boolean $b)

inherited

Useful for identifying classes and methods that haven't yet been documented.

### Arguments

#### $b

`boolean`

## Validates that necessary minimum options have been set.

    validate()

inherited

throws | if validation doesn't pass

### Properties

## The path to the executable for phpDocumentor

    programPath :

### Type(s)

``

## sourcepath

    sourcepath :

### Type(s)

``

## ignore symlinks to other files or directories

    ignoresymlinks : boolean

var | ignore symlinks to other files or directories

### Type(s)

`boolean`

## Title for browser window / package index.

    title : string

inherited

var | Title for browser window / package index.

### Type(s)

`string`

## The target directory for output files.

    destdir : \PhingFile

inherited

var | The target directory for output files.

### Type(s)

`\PhingFile`

## FileSet[] Filesets for files to parse.

    filesets : array

inherited

var | FileSet[] Filesets for files to parse.

### Type(s)

`array`

## FileSet[] Project documentation (README/INSTALL/CHANGELOG) files.

    projDocFilesets : array

inherited

var | FileSet[] Project documentation (README/INSTALL/CHANGELOG) files.

### Type(s)

`array`

## Package output format.

    output : string

inherited

var | Package output format.

### Type(s)

`string`

## Whether to generate sourcecode for each file parsed.

    linksource : boolean

inherited

var | Whether to generate sourcecode for each file parsed.

### Type(s)

`boolean`

## Whether to parse private members.

    parsePrivate : boolean

inherited

var | Whether to parse private members.

### Type(s)

`boolean`

## Whether to use javadoc descriptions (more primitive).

    javadocDesc : boolean

inherited

var | Whether to use javadoc descriptions (more primitive).

### Type(s)

`boolean`

## Base directory for locating template files.

    templateBase : \PhingFile

inherited

var | Base directory for locating template files.

### Type(s)

`\PhingFile`

## Wheter to suppress output.

    quiet : boolean

inherited

var | Wheter to suppress output.

### Type(s)

`boolean`

## Comma-separated list of packages to output.

    packages : string

inherited

var | Comma-separated list of packages to output.

### Type(s)

`string`

## Comma-separated list of tags to ignore.

    ignoreTags : string

inherited

var | Comma-separated list of tags to ignore.

### Type(s)

`string`

## Default package name.

    defaultPackageName : string

inherited

var | Default package name.

### Type(s)

`string`

## Default category name.

    defaultCategoryName : string

inherited

var | Default category name.

### Type(s)

`string`

## Directory in which to look for examples.

    examplesDir : \PhingFile

inherited

var | Directory in which to look for examples.

### Type(s)

`\PhingFile`

## Directory in which to look for configuration files.

    configDir : \PhingFile

inherited

var | Directory in which to look for configuration files.

### Type(s)

`\PhingFile`

## Whether to parse as a PEAR repository.

    pear : boolean

inherited

var | Whether to parse as a PEAR repository.

### Type(s)

`boolean`

## Control whether or not warnings will be shown for undocumented elements. Useful for identifying classes and methods that haven't yet been documented.

    undocumentedelements : boolean

inherited

var | Control whether or not warnings will be shown for undocumented elements. Useful for identifying classes and methods that haven't yet been documented.

### Type(s)

`boolean`

## custom tags, will be recognized and put in tags[] instead of unknowntags[].

    customtags : string

inherited

var | custom tags, will be recognized and put in tags[] instead of unknowntags[].

### Type(s)

`string`

## files to ignore

    ignore : string

inherited

var | files to ignore

### Type(s)

`string`

## Owning Target object

    target : \Target

inherited

var |

### Type(s)

`\Target`

## Description of the task

    description : string

inherited

var |

### Type(s)

`string`

## Internal taskname (req)

    taskType : string

inherited

var |

### Type(s)

`string`

## Taskname for logger

    taskName : string

inherited

var |

### Type(s)

`string`

## Stored buildfile location

    location : \Location

inherited

var |

### Type(s)

`\Location`

## Wrapper of the task

    wrapper : \RuntimeConfigurable

inherited

var |

### Type(s)

`\RuntimeConfigurable`

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

    project : \Project

inherited

var | A reference to the current project instance

### Type(s)

`\Project`