org.apache.velocity.runtime.directive

Class Parse

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 
    "parse_directive.maxdepth = 10"  for example.  There is a 20 iteration
    safety in the event that the parameter isn't set.
 
Version:
$Id: Parse.java,v 1.27.4.1 2004/03/03 23:22:56 geirm Exp $
Authors:
Geir Magnusson Jr.
Jason van Zyl
Christoph Reck

Field Summary

private boolean
ready

Fields inherited from class org.apache.velocity.runtime.directive.Directive

column, line, rsvc

Fields inherited from interface org.apache.velocity.runtime.directive.DirectiveConstants

BLOCK, LINE

Method Summary

String
getName()
Return name of this directive.
int
getType()
Return type of this directive.
boolean
render(InternalContextAdapter context, Writer writer, Node node)
iterates through the argument list and renders every argument that is appropriate.

Methods inherited from class org.apache.velocity.runtime.directive.InputBase

getInputEncoding

Methods inherited from class org.apache.velocity.runtime.directive.Directive

getColumn, getLine, getName, getType, init, render, setLocation

Field Details

ready

private boolean ready

Method Details

getName

public String getName()
Return name of this directive.
Overrides:
getName in interface Directive

getType

public int getType()
Return type of this directive.
Overrides:
getType in interface Directive

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.
Overrides:
render in interface Directive

Copyright B) 2002 Apache Software Foundation. All Rights Reserved.