class DelegatingEngine implements EngineInterface, StreamingEngineInterface

DelegatingEngine selects an engine for a given template.

Methods

__construct(array $engines = array())

Constructor.

string
render(string|TemplateReferenceInterface $name, array $parameters = array())

Renders a template.

stream(string|TemplateReferenceInterface $name, array $parameters = array())

Streams a template.

bool
exists(string|TemplateReferenceInterface $name)

Returns true if the template exists.

addEngine(EngineInterface $engine)

Adds an engine.

bool
supports(string|TemplateReferenceInterface $name)

Returns true if this class is able to render the given template.

getEngine(string|TemplateReferenceInterface $name)

Get an engine able to render the given template.

Details

at line line 31
__construct(array $engines = array())

Constructor.

Parameters

array $engines An array of EngineInterface instances to add

at line line 41
string render(string|TemplateReferenceInterface $name, array $parameters = array())

Renders a template.

Parameters

string|TemplateReferenceInterface $name A template name or a TemplateReferenceInterface instance
array $parameters An array of parameters to pass to the template

Return Value

string The evaluated template as a string

Exceptions

RuntimeException if the template cannot be rendered

at line line 49
stream(string|TemplateReferenceInterface $name, array $parameters = array())

Streams a template.

The implementation should output the content directly to the client.

Parameters

string|TemplateReferenceInterface $name A template name or a TemplateReferenceInterface instance
array $parameters An array of parameters to pass to the template

Exceptions

RuntimeException if the template cannot be rendered
LogicException if the template cannot be streamed

at line line 62
bool exists(string|TemplateReferenceInterface $name)

Returns true if the template exists.

Parameters

string|TemplateReferenceInterface $name A template name or a TemplateReferenceInterface instance

Return Value

bool true if the template exists, false otherwise

Exceptions

RuntimeException if the engine cannot handle the template name

at line line 72
addEngine(EngineInterface $engine)

Adds an engine.

Parameters

EngineInterface $engine An EngineInterface instance

at line line 80
bool supports(string|TemplateReferenceInterface $name)

Returns true if this class is able to render the given template.

Parameters

string|TemplateReferenceInterface $name A template name or a TemplateReferenceInterface instance

Return Value

bool true if this class supports the given template, false otherwise

at line line 100
EngineInterface getEngine(string|TemplateReferenceInterface $name)

Get an engine able to render the given template.

Parameters

string|TemplateReferenceInterface $name A template name or a TemplateReferenceInterface instance

Return Value

EngineInterface The engine

Exceptions

RuntimeException if no engine able to work with the template is found