org.apache.velocity.runtime.directive
Class Parse
java.lang.Object
org.apache.velocity.runtime.directive.Directive
org.apache.velocity.runtime.directive.InputBase
org.apache.velocity.runtime.directive.Parse
- All Implemented Interfaces:
- Cloneable, DirectiveConstants
public class Parse
- extends InputBase
Pluggable directive that handles the #parse()
statement in VTL.
Notes:
-----
1) The parsed source material can only come from somewhere in
the TemplateRoot tree for security reasons. There is no way
around this. If you want to include content from elsewhere on
your disk, use a link from somwhere under Template Root to that
content.
2) There is a limited parse depth. It is set as a property
"directive.parse.max.depth = 10" by default. This 10 deep
limit is a safety feature to prevent infinite loops.
- Version:
- $Id: Parse.java 928253 2010-03-27 19:39:04Z nbubna $
- Author:
- Geir Magnusson Jr., Jason van Zyl, Christoph Reck
Fields inherited from class org.apache.velocity.runtime.directive.Directive |
rsvc |
Constructor Summary |
Parse()
|
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Parse
public Parse()
getName
public String getName()
- Return name of this directive.
- Specified by:
getName
in class Directive
- Returns:
- The name of this directive.
getScopeName
public String getScopeName()
- Overrides the default to use "template", so that all templates
can use the same scope reference, whether rendered via #parse
or direct merge.
- Overrides:
getScopeName
in class Directive
getType
public int getType()
- Return type of this directive.
- Specified by:
getType
in class Directive
- Returns:
- The type of this directive.
init
public void init(RuntimeServices rs,
InternalContextAdapter context,
Node node)
throws TemplateInitException
- Init's the #parse directive.
- Overrides:
init
in class Directive
- Parameters:
rs
- context
- node
-
- Throws:
TemplateInitException
render
public boolean render(InternalContextAdapter context,
Writer writer,
Node node)
throws IOException,
ResourceNotFoundException,
ParseErrorException,
MethodInvocationException
- iterates through the argument list and renders every
argument that is appropriate. Any non appropriate
arguments are logged, but render() continues.
- Specified by:
render
in class Directive
- Parameters:
context
- writer
- node
-
- Returns:
- True if the directive rendered successfully.
- Throws:
IOException
ResourceNotFoundException
ParseErrorException
MethodInvocationException
Copyright © 2000-2010 The Apache Software Foundation. All Rights Reserved.