## org.apache.jasper.compiler
Class TagEndGenerator

    java.lang.Object
      |
      +--org.apache.jasper.compiler.GeneratorBase
            |
            +--org.apache.jasper.compiler.TagGeneratorBase
                  |
                  +--org.apache.jasper.compiler.TagEndGenerator

All Implemented Interfaces:
  Generator, ServiceMethodPhase

public class TagEndGenerator
extends org.apache.jasper.compiler.TagGeneratorBase
implements ServiceMethodPhase

Custom tag support.

Author:
  Anil K. Vijendran, Danno Ferrin

Field Summary
`protected JspCompilationContext` `ctxt`

Constructor Summary
`TagEndGenerator(java.lang.String prefix, java.lang.String shortTagName, org.xml.sax.Attributes attrs, javax.servlet.jsp.tagext.TagLibraryInfo tli, javax.servlet.jsp.tagext.TagInfo ti, TagLibraries libraries, java.util.Stack tagHandlerStack, java.util.Hashtable tagVarNumbers, boolean hasBody)`

Method Summary
`protected void` `declareVariables(ServletWriter writer, javax.servlet.jsp.tagext.VariableInfo[] vi, javax.servlet.jsp.tagext.TagVariableInfo[] tvi, javax.servlet.jsp.tagext.TagData tagData, boolean declare, boolean update, int scope)`
`void` `generate(ServletWriter writer, java.lang.Class phase)`
`boolean` `generateCoordinates(java.lang.Class phase)`
`protected java.lang.String` `getTagVarName(java.lang.String prefix, java.lang.String shortTagName)` Return a tag variable name from the given prefix and shortTagName.
`void` `init(JspCompilationContext ctxt)`
`protected void` `setTagHandlerStack(java.util.Stack tagHandlerStack)` Sets the tag handler nesting stack for the current page.
`protected void` `setTagVarNumbers(java.util.Hashtable tagVarNumbers)` Sets the tag variable number repository for the current page.
`protected void` `tagBegin(org.apache.jasper.compiler.TagGeneratorBase.TagVariableData tvd)`
`protected org.apache.jasper.compiler.TagGeneratorBase.TagVariableData` `tagEnd()`
`protected org.apache.jasper.compiler.TagGeneratorBase.TagVariableData` `topTag()`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Field Detail

### ctxt

    protected JspCompilationContext ctxt

Constructor Detail

### TagEndGenerator

    public TagEndGenerator(java.lang.String prefix,
                           java.lang.String shortTagName,
                           org.xml.sax.Attributes attrs,
                           javax.servlet.jsp.tagext.TagLibraryInfo tli,
                           javax.servlet.jsp.tagext.TagInfo ti,
                           TagLibraries libraries,
                           java.util.Stack tagHandlerStack,
                           java.util.Hashtable tagVarNumbers,
                           boolean hasBody)

Method Detail

### generate

    public void generate(ServletWriter writer,
                         java.lang.Class phase)

  Specified by:
    `generate` in interface `Generator`

### setTagHandlerStack

    protected void setTagHandlerStack(java.util.Stack tagHandlerStack)

  Sets the tag handler nesting stack for the current page. Called when an instance is created.

### setTagVarNumbers

    protected void setTagVarNumbers(java.util.Hashtable tagVarNumbers)

  Sets the tag variable number repository for the current page. Called when an instance is created.

### tagBegin

    protected void tagBegin(org.apache.jasper.compiler.TagGeneratorBase.TagVariableData tvd)

### tagEnd

    protected org.apache.jasper.compiler.TagGeneratorBase.TagVariableData tagEnd()

### topTag

    protected org.apache.jasper.compiler.TagGeneratorBase.TagVariableData topTag()

### getTagVarName

    protected java.lang.String getTagVarName(java.lang.String prefix,
                                             java.lang.String shortTagName)

  Return a tag variable name from the given prefix and shortTagName. Not all NMTOKEN's are legal Java identifiers, since they may contain '-', '.', or ':'. We use the following mapping: substitute '-' with "$1", '.' with "$2", and ':' with "$3".

### declareVariables

    protected void declareVariables(ServletWriter writer,
                                    javax.servlet.jsp.tagext.VariableInfo[] vi,
                                    javax.servlet.jsp.tagext.TagVariableInfo[] tvi,
                                    javax.servlet.jsp.tagext.TagData tagData,
                                    boolean declare,
                                    boolean update,
                                    int scope)

### init

    public void init(JspCompilationContext ctxt)
              throws JasperException

  Specified by:
    `init` in interface `Generator`
    `JasperException`

### generateCoordinates

    public boolean generateCoordinates(java.lang.Class phase)

  Specified by:
    `generateCoordinates` in interface `Generator`

Copyright © 2000 Apache Software Foundation. All Rights Reserved.