Class ASTDirective
- java.lang.Object
-
- org.apache.velocity.runtime.parser.node.SimpleNode
-
- org.apache.velocity.runtime.parser.node.ASTDirective
-
- All Implemented Interfaces:
Node
,Renderable
public class ASTDirective extends SimpleNode
This class is responsible for handling the pluggable directives in VTL. For example : #foreach() Please look at the Parser.jjt file which is what controls the generation of this class.- Version:
- $Id: ASTDirective.java 736677 2009-01-22 15:39:02Z nbubna $
-
-
Field Summary
Fields Modifier and Type Field Description private Directive
directive
private java.lang.String
directiveName
private boolean
isDirective
private boolean
isInitialized
-
Constructor Summary
Constructors Constructor Description ASTDirective(int id)
ASTDirective(Parser p, int id)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.lang.String
getDirectiveName()
Gets the name of this directive.java.lang.Object
init(InternalContextAdapter context, java.lang.Object data)
java.lang.Object
jjtAccept(ParserVisitor visitor, java.lang.Object data)
boolean
render(InternalContextAdapter context, java.io.Writer writer)
void
setDirectiveName(java.lang.String str)
Sets the directive name.java.lang.String
toString()
-
Methods inherited from class org.apache.velocity.runtime.parser.node.SimpleNode
childrenAccept, dump, evaluate, execute, getColumn, getFirstToken, getInfo, getLastToken, getLine, getLocation, getRuntimeServices, getTemplateName, getType, isInvalid, jjtAddChild, jjtClose, jjtGetChild, jjtGetNumChildren, jjtGetParent, jjtOpen, jjtSetParent, literal, setFirstToken, setInfo, setInvalid, toString, value
-
-
-
-
Field Detail
-
directive
private Directive directive
-
directiveName
private java.lang.String directiveName
-
isDirective
private boolean isDirective
-
isInitialized
private boolean isInitialized
-
-
Constructor Detail
-
ASTDirective
public ASTDirective(int id)
- Parameters:
id
-
-
ASTDirective
public ASTDirective(Parser p, int id)
- Parameters:
p
-id
-
-
-
Method Detail
-
jjtAccept
public java.lang.Object jjtAccept(ParserVisitor visitor, java.lang.Object data)
- Specified by:
jjtAccept
in interfaceNode
- Overrides:
jjtAccept
in classSimpleNode
- Returns:
- The Node execution result object.
- See Also:
SimpleNode.jjtAccept(org.apache.velocity.runtime.parser.node.ParserVisitor, java.lang.Object)
-
init
public java.lang.Object init(InternalContextAdapter context, java.lang.Object data) throws TemplateInitException
- Specified by:
init
in interfaceNode
- Overrides:
init
in classSimpleNode
- Returns:
- The init result.
- Throws:
TemplateInitException
- See Also:
SimpleNode.init(org.apache.velocity.context.InternalContextAdapter, java.lang.Object)
-
render
public boolean render(InternalContextAdapter context, java.io.Writer writer) throws java.io.IOException, MethodInvocationException, ResourceNotFoundException, ParseErrorException
- Specified by:
render
in interfaceNode
- Specified by:
render
in interfaceRenderable
- Overrides:
render
in classSimpleNode
- Returns:
- True if the node rendered successfully.
- Throws:
java.io.IOException
MethodInvocationException
ResourceNotFoundException
ParseErrorException
- See Also:
SimpleNode.render(org.apache.velocity.context.InternalContextAdapter, java.io.Writer)
-
setDirectiveName
public void setDirectiveName(java.lang.String str)
Sets the directive name. Used by the parser. This keeps us from having to dig it out of the token stream and gives the parse the change to override.- Parameters:
str
-
-
getDirectiveName
public java.lang.String getDirectiveName()
Gets the name of this directive.- Returns:
- The name of this directive.
-
toString
public java.lang.String toString()
- Overrides:
toString
in classSimpleNode
- Since:
- 1.5
-
-