## org.apache.jasper.compiler
Class JspCompiler

    java.lang.Object
      |
      +--org.apache.jasper.compiler.Compiler
            |
            +--org.apache.jasper.compiler.JspCompiler

All Implemented Interfaces:
  Mangler

public class JspCompiler
extends Compiler
implements Mangler

JspCompiler is an implementation of Compiler with a funky code mangling and code generation scheme. The reason that it is both a sub-class of compiler and an implementation of mangler is because the isOutDated method that is overridden and the name mangulation both depend on the actual existance of other class and java files. I.e. the value of a mangled name is a function of both the name to be mangled and also of the state of the scratchdir.

Author:
  Anil K. Vijendran

Field Summary

Fields inherited from class org.apache.jasper.compiler.Compiler
`ctxt, javac, mangler`

Constructor Summary
`JspCompiler(JspCompilationContext ctxt)`

Method Summary
`java.lang.String` `getClassFileName()` The full name of the .class file ( without version number)
`java.lang.String` `getClassName()` The class name ( without package ) of the generated servlet, including the version number
`java.lang.String` `getJavaFileName()` The full name of the .java file, including version number ( based on className and outputDir )
`boolean` `isOutDated()` Determines whether the current JSP class is older than the JSP file from whence it came

Methods inherited from class org.apache.jasper.compiler.Compiler
`changeEncodingIfNecessary, compile, removeGeneratedFiles, setJavaCompiler, setMangler`

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

Constructor Detail

### JspCompiler

    public JspCompiler(JspCompilationContext ctxt)
                throws JasperException

Method Detail

### getClassName

    public final java.lang.String getClassName()

  Description copied from interface: `Mangler`
  The class name ( without package ) of the generated servlet, including the version number

  Specified by:
    `getClassName` in interface `Mangler`

### getJavaFileName

    public final java.lang.String getJavaFileName()

  Description copied from interface: `Mangler`
  The full name of the .java file, including version number ( based on className and outputDir )

  Specified by:
    `getJavaFileName` in interface `Mangler`

### getClassFileName

    public final java.lang.String getClassFileName()

  Description copied from interface: `Mangler`
  The full name of the .class file ( without version number)

  Specified by:
    `getClassFileName` in interface `Mangler`

### isOutDated

    public boolean isOutDated()

  Determines whether the current JSP class is older than the JSP file from whence it came

  Overrides:
    `isOutDated` in class `Compiler`

Copyright © 2000 Apache Software Foundation. All Rights Reserved.