jrun.jsp.compiler
Class JSPCompiler

java.lang.Object
  |
  +--jrun.jsp.compiler.JSPCompiler
All Implemented Interfaces:
JSPParserTreeConstants
Direct Known Subclasses:
JSTCompiler

public class JSPCompiler
extends java.lang.Object
implements JSPParserTreeConstants


Inner Class Summary
 class JSPCompiler.CompoundCompilerException
           
 class JSPCompiler.DirectiveExtraAttributes
          ({line}) The {directive} has invalid attribute(s): {attrs}
 class JSPCompiler.DirectiveMissingAttribute
          ({line}) {directive} directive missing {attr} attribute
 class JSPCompiler.InvalidAutoFlushAttribute
          ({line}) autoFlush attribute must be true or false: {value}
 class JSPCompiler.InvalidAutoFlushBufferAttributes
          ({line}) buffer cannot be none when autoFlush is false
 class JSPCompiler.InvalidBufferAttribute
          ({line}) buffer attribute must be a number followed by kb: {value}
 class JSPCompiler.InvalidDirective
          ({line}) No such directive {directive}
 class JSPCompiler.LanguageNotSupportedException
          ({line}) The language {language} is not supported.
 class JSPCompiler.NoSuchAttributeException
          ({line}) The {tagName} tag does not have a {attr} attribute
 class JSPCompiler.RuntimeExpressionAttributeNotAllowed
          ({line}) The {attribute} attribute of the {tagName} tag cannot be a runtime expression
 class JSPCompiler.TagException
           
 class JSPCompiler.TagHandlerClassNotFoundException
          ({line}) The tag {tagName}'s handler class {clazz} was not found in the classpath
 class JSPCompiler.TagLoadException
          ({line}) Could not load JST {tagName}: {rootCause}
 class JSPCompiler.TagMissingRequiredAttributesException
          ({line}) The tag {tagName} was missing the following required attribute(s): {list}
 class JSPCompiler.TagNotInTagLibraryException
          The tag {tagName} was not in the tag library {urn} [prefix={prefix},uri={uri}]
 class JSPCompiler.TagNotValidException
          ({line}) {message}
 class JSPCompiler.TagNotValidFromTEIException
          ({line}) Tag {tagName} is not valid according to its TEI class
 class JSPCompiler.UnbalancedEndTagException
          ({line}) Encountered end tag {tagName} with no start tag
 
Field Summary
 int BODY
           
protected  jrun.jsp.compiler.JSPCompiler.CodeEmitter codeEmitter
           
protected  TranslationContext context
           
 int ITERATOR
           
protected  JSPEngine jspEngine
           
static java.lang.String LINE_SEP
           
static java.lang.String PAGE_NAME
           
protected  java.util.Map pageDirectives
           
 int TRY_CATCH_FINALLY
           
static int VERSION
           
static java.lang.String VERSION_NAME
           
protected  java.util.List visitors
           
 
Fields inherited from interface jrun.jsp.parser.JSPParserTreeConstants
JJTACDATA, JJTARTEXPR, JJTATTRIBUTE, JJTATTRIBUTE_VALUE, JJTCOMMENT, JJTDECLARATION, JJTDIRECTIVE, JJTDIRECTIVE_TYPE, JJTEMPTY_TAG_CLOSE, JJTEND_TAG, JJTEXPRESSION, JJTJSP, jjtNodeName, JJTPASS, JJTQCDATA, JJTQRTEXPR, JJTSCRIPTLET, JJTSTART_TAG, JJTSTART_TAG_CLOSE
 
Constructor Summary
JSPCompiler(javax.servlet.ServletContext application, JSPEngine jspEngine, TranslationContext tc)
           
 
Method Summary
 void compile()
           
 void compile(SimpleNode tree)
           
protected  void error(java.lang.Exception t)
           
protected  java.util.List getInterfaces()
           
protected  java.lang.String getSuperClass()
           
protected  void handleIncludeDirective(SimpleNode s, java.util.Map attrs, Visitor v)
          Includes are hung off the file attribute's value node.
protected  boolean isThreadSafe()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

LINE_SEP

public static final java.lang.String LINE_SEP

VERSION

public static final int VERSION

VERSION_NAME

public static java.lang.String VERSION_NAME

PAGE_NAME

public static java.lang.String PAGE_NAME

TRY_CATCH_FINALLY

public final int TRY_CATCH_FINALLY

ITERATOR

public final int ITERATOR

BODY

public final int BODY

visitors

protected java.util.List visitors

jspEngine

protected JSPEngine jspEngine

codeEmitter

protected jrun.jsp.compiler.JSPCompiler.CodeEmitter codeEmitter

context

protected TranslationContext context

pageDirectives

protected java.util.Map pageDirectives
Constructor Detail

JSPCompiler

public JSPCompiler(javax.servlet.ServletContext application,
                   JSPEngine jspEngine,
                   TranslationContext tc)
Method Detail

compile

public void compile()
             throws ParseException,
                    java.io.IOException,
                    CompilerException

compile

public void compile(SimpleNode tree)
             throws CompilerException,
                    java.io.IOException

error

protected void error(java.lang.Exception t)

handleIncludeDirective

protected void handleIncludeDirective(SimpleNode s,
                                      java.util.Map attrs,
                                      Visitor v)
Includes are hung off the file attribute's value node. Makes it convenient for sandwich'ing a push/pop around it which we do so error messages are reported against the right file.

getSuperClass

protected java.lang.String getSuperClass()

isThreadSafe

protected boolean isThreadSafe()

getInterfaces

protected java.util.List getInterfaces()


Copyright � 2002 Macromedia Corporation. All Rights Reserved.