# UnknownElement.php

Wrapper class that holds all information necessary to create a task that did not exist when Phing started.

This has something to do with phing encountering an task XML element it is not aware of at start time. This is a situation where special steps need to be taken so that the element is then known.

Author
  Andreas Aderhold
Author
  Hans Lellelid
Package
  phing
Version
  $Revision: 552 $

## \UnknownElement
jump to top

Package: phing

Wrapper class that holds all information necessary to create a task that did not exist when Phing started.

This has something to do with phing encountering an task XML element it is not aware of at start time. This is a situation where special steps need to be taken so that the element is then known.

Parent(s)
  \Task < \ProjectComponent
Author
  Andreas Aderhold
Author
  Hans Lellelid
Copyright
  2001,2002 THYRELL. All rights reserved
Version
  $Revision: 552 $

### Properties

`$children= 'array()'`
Default value `array()`Details

Type
  n/a

`string $description= ''`
inherited

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

Type
  string
Inherited_from
  \Task::$$description

`$elementName= ''`
Details

Type
  n/a

`\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\Task::$$project
Default value `null` Details

Type
  \Project
Inherited_from
  \ProjectComponent::$$project
Inherited_from
  \Task::$$project

`$realThing= ''`
Details

Type
  n/a

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

`__construct( string $elementName ) : void`

Constructs a UnknownElement object

Parameters

Name | Type | Description
--- | --- | ---
$elementName | string | The XML element name that is unknown

Details

Access
  public

`addChild( object $child ) : void`

Add a child element to the unknown element

Parameters

Name | Type | Description
--- | --- | ---
$child | object | The object representing the child element

`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()\Task::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

`getTag( ) : string`

Return the XML element name that this `UnnownElement` handles.

Returns

Type | Description
--- | ---
string | The XML element name that is unknown

`getTaskName( ) : string`

Get the name of the task to use in logging messages.

@return string The task's name

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)

`handleChildren( object $parent, $parentWrapper ) : void`

Handle child elemets of the unknown element, if any.

@param ProjectComponent The parent object the unkown element belongs to

Parameters

Name | Type | Description
--- | --- | ---
$parent | object | The parent wrapper object
$parentWrapper |  |

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

Called when the real task has been configured for the first time.

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 | if the task can not be created

`makeObject( \UnknownElement $ue, \RuntimeConfigurable $w ) : object`

Creates a named task or data type. If the real object is a task, it is configured up to the init() stage.

Parameters

Name | Type | Description
--- | --- | ---
$ue | \UnknownElement | The unknown element to create the real object for. Must not be `null`.
$w | \RuntimeConfigurable | Ignored in this implementation.

Returns

Type | Description
--- | ---
object | The Task or DataType represented by the given unknown element.

`makeTask( \UnknownElement $ue, \RuntimeConfigurable $w, boolean $onTopLevel = false ) : \Task`

Create a named task and configure it up to the init() stage.

Parameters

Name | Type | Description
--- | --- | ---
$ue | \UnknownElement | The unknwon element to create a task from
$w | \RuntimeConfigurable | The wrapper object
$onTopLevel | boolean | Whether to treat this task as if it is top-level.

Returns

Type | Description
--- | ---
\Task | The freshly created task

`maybeConfigure( ) : void`

Tries to configure the unknown element

Throws

Exception | Description
--- | ---
\BuildException | if the element can not be configured

`perform( ) : void`
inherited

Perfrom this task

Inherited from: \Task::perform()
`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

`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()\Task::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

`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.17.1.