JspReader (Jasper Internal API Documentation)

org.apache.jasper.compiler
Class JspReader


java.lang.Object

  |

  +--org.apache.jasper.compiler.JspReader


public class JspReader
extends java.lang.Object

JspReader is an input buffer for the JSP parser. It should allow unlimited lookahead and pushback. It also has a bunch of parsing utility methods for understanding htmlesque thingies.

Author:
Anil K. Vijendran, Anselm Baird-Smith, Harish Prabandham, Rajiv Mordani, Mandar Raje, Danno Ferrin

Field Summary
protected  Mark current
           
 
Constructor Summary
protected JspReader(JspCompilationContext ctx, java.lang.String file, java.lang.String encoding, java.io.InputStreamReader reader)
           
 
Method Summary
 void advance(int n)
           
 java.lang.String getFile(int fileid)
           
 boolean hasMoreInput()
           
 Mark mark()
           
 boolean matches(java.lang.String string)
           
 boolean matchesIgnoreCase(java.lang.String string)
           
 int nextChar()
           
 void parseParamTag(java.util.Hashtable into)
          Parse PARAM tag attributes into the given hashtable.
 void parsePluginParamTag(java.util.Hashtable into)
          Parse jsp:param tag attributes into the given hashtable.
 org.xml.sax.Attributes parseTagAttributes()
          Parse some tag attributes.
 org.xml.sax.Attributes parseTagAttributesBean()
          Parse some tag attributes for Beans.
 java.lang.String parseToken(boolean quoted)
          Parse a space delimited token.
 int peekChar()
           
 boolean popFile()
           
protected  int registerSourceFile(java.lang.String file)
          Register a new source file.
 void reset(Mark mark)
           
 void setSingleFile(boolean val)
           
 int skipSpaces()
           
 Mark skipUntil(java.lang.String limit)
          Skip until the given string is matched in the stream.
protected  int unregisterSourceFile(java.lang.String file)
          Unregister the source file.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

current


protected Mark current
Constructor Detail

JspReader


protected JspReader(JspCompilationContext ctx,
                    java.lang.String file,
                    java.lang.String encoding,
                    java.io.InputStreamReader reader)
             throws ParseException,
                    java.io.FileNotFoundException
Method Detail

getFile


public java.lang.String getFile(int fileid)

registerSourceFile


protected int registerSourceFile(java.lang.String file)
Register a new source file. This method is used to implement file inclusion. Each included file gets a uniq identifier (which is the index in the array of source files).

Returns:
The index of the now registered file.

unregisterSourceFile


protected int unregisterSourceFile(java.lang.String file)
Unregister the source file. This method is used to implement file inclusion. Each included file gets a uniq identifier (which is the index in the array of source files).

Returns:
The index of the now registered file.

popFile


public boolean popFile()
                throws ParseException
ParseException

hasMoreInput


public boolean hasMoreInput()
                     throws ParseException
ParseException

nextChar


public int nextChar()
             throws ParseException
ParseException

peekChar


public int peekChar()

mark


public Mark mark()

reset


public void reset(Mark mark)

matchesIgnoreCase


public boolean matchesIgnoreCase(java.lang.String string)
                          throws ParseException
ParseException

matches


public boolean matches(java.lang.String string)
                throws ParseException
ParseException

advance


public void advance(int n)
             throws ParseException
ParseException

skipSpaces


public int skipSpaces()
               throws ParseException
ParseException

skipUntil


public Mark skipUntil(java.lang.String limit)
               throws ParseException
Skip until the given string is matched in the stream. When returned, the context is positioned past the end of the match.

Returns:
A non-null Mark instance if found, null otherwise.
ParseException

parseToken


public java.lang.String parseToken(boolean quoted)
                            throws ParseException
Parse a space delimited token. If quoted the token will consume all characters up to a matching quote, otherwise, it consumes up to the first delimiter character.

Parameters:
quoted - If true accept quoted strings.
ParseException

parseTagAttributesBean


public org.xml.sax.Attributes parseTagAttributesBean()
                                              throws ParseException
Parse some tag attributes for Beans. The stream is assumed to be positioned right after the tag name. The syntax recognized is:
 tag-attrs := empty | attr-list (">" | "-->" | %>)
 attr-list := empty | av spaces attr-list
 empty     := spaces 
 
Where av is defined by parseAttributeValue.

Returns:
A Hashtable mapping String instances (variable names) into String instances (variable values).
ParseException

parseTagAttributes


public org.xml.sax.Attributes parseTagAttributes()
                                          throws ParseException
Parse some tag attributes. The stream is assumed to be positioned right after the tag name. The syntax recognized is:
 tag-attrs := empty | attr-list (">" | "-->" | %>)
 attr-list := empty | av spaces attr-list
 empty     := spaces 
 
Where av is defined by parseAttributeValue.

Returns:
A Hashtable mapping String instances (variable names) into String instances (variable values).
ParseException

parseParamTag


public void parseParamTag(java.util.Hashtable into)
                   throws ParseException
Parse PARAM tag attributes into the given hashtable. Parses the PARAM tag as defined by:
 <PARAM tag-attributes %gt;
 
Two special tag attributes are recognized here:
  1. The name attribute,
  2. The value attribute.
The resulting name, value pair is stored in the provided hash table.

Parameters:
into - Storage for parameter values.
ParseException

parsePluginParamTag


public void parsePluginParamTag(java.util.Hashtable into)
                         throws ParseException
Parse jsp:param tag attributes into the given hashtable. Parses the jsp:param tag as defined by:
 <jsp:param tag-attributes %gt;
 
Two special tag attributes are recognized here:
  1. The name attribute,
  2. The value attribute.
The resulting name, value pair is stored in the provided hash table.

Parameters:
into - Storage for parameter values.
ParseException

setSingleFile


public void setSingleFile(boolean val)


Copyright 2000 Apache Software Foundation. All Rights Reserved.