org.apache.velocity.runtime.parser.node
Class ASTElseIfStatement

java.lang.Object
  extended by org.apache.velocity.runtime.parser.node.SimpleNode
      extended by org.apache.velocity.runtime.parser.node.ASTElseIfStatement
All Implemented Interfaces:
Node

public class ASTElseIfStatement
extends SimpleNode

This class is responsible for handling the ElseIf VTL control statement. Please look at the Parser.jjt file which is what controls the generation of this class.

Version:
$Id: ASTElseIfStatement.java 517553 2007-03-13 06:09:58Z wglass $
Author:
Jason van Zyl, Geir Magnusson Jr.

Field Summary
 
Fields inherited from class org.apache.velocity.runtime.parser.node.SimpleNode
children, first, id, info, invalid, last, log, parent, parser, rsvc, state, templateName
 
Constructor Summary
ASTElseIfStatement(int id)
           
ASTElseIfStatement(Parser p, int id)
           
 
Method Summary
 boolean evaluate(InternalContextAdapter context)
          An ASTElseStatement is true if the expression it contains evaluates to true.
 Object jjtAccept(ParserVisitor visitor, Object data)
           
 boolean render(InternalContextAdapter context, Writer writer)
           
 
Methods inherited from class org.apache.velocity.runtime.parser.node.SimpleNode
childrenAccept, dump, execute, getColumn, getFirstToken, getInfo, getLastToken, getLine, getLocation, getTemplateName, getType, init, isInvalid, jjtAddChild, jjtClose, jjtGetChild, jjtGetNumChildren, jjtGetParent, jjtOpen, jjtSetParent, literal, setFirstToken, setInfo, setInvalid, toString, toString, value
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

ASTElseIfStatement

public ASTElseIfStatement(int id)
Parameters:
id -

ASTElseIfStatement

public ASTElseIfStatement(Parser p,
                          int id)
Parameters:
p -
id -
Method Detail

jjtAccept

public Object jjtAccept(ParserVisitor visitor,
                        Object data)
Specified by:
jjtAccept in interface Node
Overrides:
jjtAccept in class SimpleNode
Returns:
The Node execution result object.
See Also:
SimpleNode.jjtAccept(org.apache.velocity.runtime.parser.node.ParserVisitor, java.lang.Object)

evaluate

public boolean evaluate(InternalContextAdapter context)
                 throws MethodInvocationException
An ASTElseStatement is true if the expression it contains evaluates to true. Expressions know how to evaluate themselves, so we do that here and return the value back to ASTIfStatement where this node was originally asked to evaluate itself.

Specified by:
evaluate in interface Node
Overrides:
evaluate in class SimpleNode
Parameters:
context -
Returns:
True if all childs are true.
Throws:
MethodInvocationException
See Also:
Node.evaluate(org.apache.velocity.context.InternalContextAdapter)

render

public boolean render(InternalContextAdapter context,
                      Writer writer)
               throws IOException,
                      MethodInvocationException,
                      ResourceNotFoundException,
                      ParseErrorException
Specified by:
render in interface Node
Overrides:
render in class SimpleNode
Returns:
True if the node rendered successfully.
Throws:
IOException
MethodInvocationException
ResourceNotFoundException
ParseErrorException
See Also:
SimpleNode.render(org.apache.velocity.context.InternalContextAdapter, java.io.Writer)


Copyright © 2000-2008 The Apache Software Foundation. All Rights Reserved.