# ConditionBase

Extends \ProjectComponent Implements \IteratorAggregate, \CustomChildCreator

Abstract baseclass for the <condition> task as well as several conditions - ensures that the types of conditions inside the task and the "container" conditions are in sync.

author | Hans Lellelid hans@xmpl.org
author | Andreas Aderhold andi@binarycloud.com
copyright | 2001,2002 THYRELL. All rights reserved
version | $Id: 5b9e26c628e54bdf2ee64764af119a01734b4315 $
package | phing.tasks.system.condition

### Methods

## addAvailable

    addAvailable(\AvailableTask $a) : void

### Arguments

#### $a

`\AvailableTask`

## countConditions

    countConditions() : integer

### Response

`integer`

## createAnd

    createAnd() : \AndCondition

### Response

`\AndCondition`

## createContains

    createContains() : \ContainsCondition

### Response

`\ContainsCondition`

## createEquals

    createEquals() : \EqualsCondition

### Response

`\EqualsCondition`

## createFilesMatch

    createFilesMatch()

## createHasFreeSpace

    createHasFreeSpace()

## createHttp

    createHttp()

## createIsFalse

    createIsFalse() : \IsFalseCondition

### Response

`\IsFalseCondition`

## createIsSet

    createIsSet() : \IsSetCondition

### Response

`\IsSetCondition`

## createIsTrue

    createIsTrue() : \IsTrueCondition

### Response

`\IsTrueCondition`

## createNot

    createNot() : \NotCondition

### Response

`\NotCondition`

## createOr

    createOr() : \OrCondition

### Response

`\OrCondition`

## createOs

    createOs() : \OsCondition

### Response

`\OsCondition`

## createPhingVersion

    createPhingVersion()

## createReferenceExists

    createReferenceExists() : \ReferenceExistsCondition

### Response

`\ReferenceExistsCondition`

## createSocket

    createSocket()

## createVersionCompare

    createVersionCompare()

## createXor

    createXor() : \XorCondition

### Response

`\XorCondition`

## Creates the object for the child element

    customChildCreator(string $elementName, \Project $project) : \Condition

throws |

### Arguments

#### $elementName

`string`

#### $project

`\Project`

### Response

`\Condition`

## getConditions

    getConditions() : array<mixed,\Condition>

### Response

`array<mixed,\Condition>`

## Required for IteratorAggregate

    getIterator()

## Returns a reference to current project

    getProject() : \Project

inherited

### Response

`\Project`

Reference to current porject object

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

## References the project to the current component.

    setProject(\Project $project) : void

inherited

### Arguments

#### $project

`\Project`

The reference to the current project

### Properties

## conditions

    conditions :

### Type(s)

``

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