# tasks/ext/CapsuleTask.php

## \AssignedVar
jump to top

Package: phing\tasks\ext

An "inner" class for holding assigned var values.

May be need to expand beyond name/value in the future.

### Properties

`$name= ''`
Details

Type
  n/a

`$value= ''`
Details

Type
  n/a

### Methods

`getName( ) : void`

`getValue( ) : void`

`setName( $v ) : void`

Parameters

Name | Type | Description
--- | --- | ---
$v |  |

`setValue( $v ) : void`

Parameters

Name | Type | Description
--- | --- | ---
$v |  |

## \CapsuleTask
jump to top

Package: phing\tasks\ext

A phing task for generating output by using Capsule.

This is based on the interface to TexenTask from Apache's Velocity engine.

Parent(s)
  \Task < \ProjectComponent
Author
  Hans Lellelid
Version
  $Id: CapsuleTask.php 843 2010-09-02 14:39:13Z mrook $

### Properties

`array $assignedVars= 'array()'`

Any vars assigned via the build file.

AssignedVar[]
Default value `array()`Details

Type
  array

`\Capsule $context= ''`

Capsule "template" engine.

Details

Type
  \Capsule

`array $contextProperties= ''`

<p> These are properties that are fed into the initial context from a properties file. This is simply a convenient way to set some values that you wish to make available in the context.

These values are not critical, like the template path or output path, but allow a convenient way to set a value that may be specific to a particular generation task.

<

p> For example, if you are generating scripts to allow user to automatically create a database, then you might want the

    $databaseName

to be placed in the initial context so that it is available in a script that might look something like the following:

    #!bin/sh

    echo y | mysqladmin create $databaseName

The value of

    $databaseName

isn't critical to output, and you obviously don't want to change the ant task to simply take a database name. So initial context values can be set with properties file.

Details

Type
  array

`string $controlTemplate= ''`

This is the control template that governs the output.

It may or may not invoke the services of worker templates.

Details

Type
  string

`string $outputDirectory= ''`

This is where texen will place all the output that is a product of the generation process.

Details

Type
  string

`string $outputFile= ''`

This is the file where the generated text will be placed.

Details

Type
  string

`string $templatePath= ''`

This is where Velocity will look for templates using the file template loader.

Details

Type
  string

### Methods

`cleanup( ) : void`

A hook method called at the end of {@link #execute()} which can be overridden to perform any necessary cleanup activities (such as the release of database connections, etc.). By default, does nothing.

Throws

Exception | Description
--- | ---
\Exception | Problem cleaning up.

`createAssign( ) : void`

Creates an "AssignedVar" class.

`getContextProperties( ) : \Properties`

Get the context properties that will be fed into the initial context be the generating process starts.

Returns

Type | Description
--- | ---
\Properties |

`getControlTemplate( ) : string`

Get the control template for the generating process.

Returns

Type | Description
--- | ---
string |

`getDescription( ) : void`

`getLocation( ) : void`

`getOutputDirectory( ) : string`

Get the output directory.

Returns

Type | Description
--- | ---
string |

`getOutputFile( ) : string`

Get the output file for the generation process.

Returns

Type | Description
--- | ---
string |

`getOwningTarget( ) : void`

`getProject( ) : void`

`getRegisterSlot( ) : void`

`getRuntimeConfigurableWrapper( ) : void`

`getTaskName( ) : void`

`getTaskType( ) : void`

`getTemplatePath( ) : string`

Get the path where Velocity will look for templates using the file template loader.

Returns

Type | Description
--- | ---
string |

`init( ) : void`

`initControlContext( ) : \Smarty`

Creates a Smarty object.

Returns

Type | Description
--- | ---
\Smarty | initialized (cleared) Smarty context.

Throws

Exception | Description
--- | ---
\Exception | the execute method will catch and rethrow as a `BuildException`

`log( ) : void`

`main( ) : void`

Execute the input script with Velocity

Throws

Exception | Description
--- | ---
\BuildException | BuildExceptions are thrown when required attributes are missing. Exceptions thrown by Velocity are rethrown as BuildExceptions.

`maybeConfigure( ) : void`

`perform( ) : void`

`populateInitialContext( \Capsule $context ) : void`

Place useful objects into the initial context.

Parameters

Name | Type | Description
--- | --- | ---
$context | \Capsule | The context to populate, as retrieved from {@link #initControlContext()}.

Throws

Exception | Description
--- | ---
\Exception | Error while populating context. The {@link #main()} method will catch and rethrow as a `BuildException`.

`setContextProperties( string $file ) : void`

Set the context properties that will be fed into the initial context be the generating process starts.

Parameters

Name | Type | Description
--- | --- | ---
$file | string |

`setControlTemplate( string $controlTemplate ) : void`

[REQUIRED] Set the control template for the generating process.

Parameters

Name | Type | Description
--- | --- | ---
$controlTemplate | string |

`setDescription( ) : void`

`setLocation( ) : void`

`setOutputDirectory( \PhingFile $outputDirectory ) : void`

[REQUIRED] Set the output directory. It will be created if it doesn't exist.

Parameters

Name | Type | Description
--- | --- | ---
$outputDirectory | \PhingFile |

Throws

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

`setOutputFile( string $outputFile ) : void`

[REQUIRED] Set the output file for the generation process.

Parameters

Name | Type | Description
--- | --- | ---
$outputFile | string | (TODO: change this to File)

`setOwningTarget( ) : void`

`setProject( ) : void`

`setRuntimeConfigurableWrapper( ) : void`

`setTaskName( ) : void`

`setTaskType( ) : void`

`setTemplatePath( $templatePath ) : void`

[REQUIRED] Set the path where Velocity will look for templates using the file template loader.

Parameters

Name | Type | Description
--- | --- | ---
$templatePath |  |

Throws

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

Documentation was generated by DocBlox 0.17.1.