tasks/ext/CapsuleTask.php
\AssignedVar
An "inner" class for holding assigned var values.
May be need to expand beyond name/value in the future.
Properties
Methods
\CapsuleTask
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[]array()Details- Type
- array

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.
- Type
- array

string
$controlTemplate= ''
This is the control template that governs the output.
It may or may not invoke the services of worker templates.
- Type
- string

string
$outputDirectory= ''
This is where texen will place all the output that is a product of the generation process.
- Type
- string

string
$outputFile= ''
This is the file where the generated text will be placed.
- Type
- string
Methods

cleanup(
)
:
voidA 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.
| Exception | Description |
|---|---|
| \Exception | Problem cleaning up. |

getContextProperties(
)
:
\PropertiesGet the context properties that will be fed into the initial context be the generating process starts.
| Type | Description |
|---|---|
| \Properties |

getControlTemplate(
)
:
stringGet the control template for the generating process.
| Type | Description |
|---|---|
| string |

getOutputFile(
)
:
stringGet the output file for the generation process.
| Type | Description |
|---|---|
| string |

getTemplatePath(
)
:
stringGet the path where Velocity will look for templates using the file template loader.
| Type | Description |
|---|---|
| string |

initControlContext(
)
:
\SmartyCreates a Smarty object.
| Type | Description |
|---|---|
| \Smarty | initialized (cleared) Smarty context. |
| Exception | Description |
|---|---|
| \Exception | the execute method will catch and rethrow as a BuildException |

main(
)
:
voidExecute the input script with Velocity
| Exception | Description |
|---|---|
| \BuildException | BuildExceptions are thrown when required attributes are missing. Exceptions thrown by Velocity are rethrown as BuildExceptions. |

populateInitialContext(
\Capsule $context
)
:
voidPlace useful objects into the initial context.
| Name | Type | Description |
|---|---|---|
| $context | \Capsule | The context to populate, as retrieved from {@link #initControlContext()}. |
| Exception | Description |
|---|---|
| \Exception | Error while populating context. The {@link #main()} method will catch and rethrow as a BuildException. |

setContextProperties(
string $file
)
:
voidSet the context properties that will be fed into the initial context be the generating process starts.
| Name | Type | Description |
|---|---|---|
| $file | string |

setControlTemplate(
string $controlTemplate
)
:
void[REQUIRED] Set the control template for the generating process.
| Name | Type | Description |
|---|---|---|
| $controlTemplate | string |

setOutputDirectory(
\PhingFile $outputDirectory
)
:
void[REQUIRED] Set the output directory. It will be created if it doesn't exist.
| Name | Type | Description |
|---|---|---|
| $outputDirectory | \PhingFile |
| Exception | Description |
|---|---|
| \Exception |

setOutputFile(
string $outputFile
)
:
void[REQUIRED] Set the output file for the generation process.
| Name | Type | Description |
|---|---|---|
| $outputFile | string | (TODO: change this to File) |

setTemplatePath(
$templatePath
)
:
void[REQUIRED] Set the path where Velocity will look for templates using the file template loader.
| Name | Type | Description |
|---|---|---|
| $templatePath |
| Exception | Description |
|---|---|
| \Exception |