# DataTypeHandler

Extends \AbstractHandler

Configures a Project (complete with Targets and Tasks) based on a XML build file.

Design/ZE2 migration note: If PHP would support nested classes. All the phing/parser/*Filter classes would be nested within this class

author | Andreas Aderhold andi@binarycloud.com
copyright | 2001,2002 THYRELL. All rights reserved
version | $Id: b8f555762a9eb7b012fb7712a208979dc18f82ab $
package | phing.parser

### Methods

## Constructs a SAX handler parser.

    __construct( $parser,  $parentHandler)

inherited

The constructor must be called by all derived classes.

### Arguments

#### $parser

``

#### $parentHandler

``

## Invoked by occurrence of #PCDATA.

    characters( $data)

inherited

throws |
exception | ExpatParserException if there is no CDATA but method was called

### Arguments

#### $data

``

## Gets invoked when a XML element ends.

    endElement( $name)

inherited

Can be overloaded by the child class. But should not. It hands over control to the parentHandler of this.

### Arguments

#### $name

``

## Gets invoked when element closes method.

    finished()

inherited

## Executes initialization actions required to setup the data structures related to the tag.

    init( $propType,  $attrs)

This includes:

- creation of the datatype object
- calling the setters for attributes
- adding the type to the target object if any
- adding a reference to the task (if id attribute is given)

throws | if attributes are incomplete or invalid

### Arguments

#### $propType

``

#### $attrs

``

## Checks for nested tags within the current one. Creates and calls handlers respectively.

    startElement( $name,  $attrs)

### Arguments

#### $name

``

#### $attrs

``

### Properties

## target

    target :

### Type(s)

``

## element

    element :

### Type(s)

``

## wrapper

    wrapper :

### Type(s)

``

## parentHandler

    parentHandler :

inherited

### Type(s)

``

## parser

    parser :

inherited

### Type(s)

``