Documentation

PathGenerator
in package

Table of Contents

$pathfinder  : Pathfinder
$router  : Router
__construct()  : mixed
generate()  : string
Uses the currently selected node and transformation to assemble the destination path for the file.
determinePath()  : string
replaceVariablesInPath()  : string

Properties

Methods

generate()

Uses the currently selected node and transformation to assemble the destination path for the file.

public generate(Descriptor $descriptor, Transformation $transformation) : string

Writers accept the use of a Query to be able to generate output for multiple objects using the same template.

The given node is the result of such a query, or if no query given the selected element, and the transformation contains the destination file.

Since it is important to be able to generate a unique name per element can the user provide a template variable in the name of the file. Such a template variable always resides between double braces and tries to take the node value of a given query string.

Example:

An artifact stating classes/{{name}}.html will try to find the node 'name' as a child of the given $node and use that value instead.

Parameters
$descriptor : Descriptor
$transformation : Transformation
Tags
throws
InvalidArgumentException

If no artifact is provided and no routing rule matches.

throws
UnexpectedValueException

If the provided node does not contain anything.

Return values
string

returns the destination location or false if generation should be aborted.

replaceVariablesInPath()

private replaceVariablesInPath(string $path, Descriptor $descriptor) : string
Parameters
$path : string
$descriptor : Descriptor
Return values
string

Search results