Package org.apache.jasper.compiler
Class TagFileProcessor
- java.lang.Object
-
- org.apache.jasper.compiler.TagFileProcessor
-
class TagFileProcessor extends java.lang.Object
1. Processes and extracts the directive info in a tag file. 2. Compiles and loads tag files used in a JSP file.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description private static class
TagFileProcessor.TagFileDirectiveVisitor
A visitor the tag fileprivate class
TagFileProcessor.TagFileLoaderVisitor
-
Field Summary
Fields Modifier and Type Field Description private java.util.ArrayList<Compiler>
tempVector
-
Constructor Summary
Constructors Constructor Description TagFileProcessor()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description private java.lang.Class
loadTagFile(Compiler compiler, java.lang.String tagFilePath, TagInfo tagInfo, PageInfo parentPageInfo)
Compiles and loads a tagfile.void
loadTagFiles(Compiler compiler, Node.Nodes page)
Implements a phase of the translation that compiles (if necessary) the tag files used in a JSP files.static TagInfo
parseTagFileDirectives(ParserController pc, java.lang.String name, java.lang.String path, TagLibraryInfo tagLibInfo)
Parses the tag file, and collects information on the directives included in it.void
removeProtoTypeFiles(java.lang.String classFileName)
Removed the java and class files for the tag prototype generated from the current compilation.
-
-
-
Field Detail
-
tempVector
private java.util.ArrayList<Compiler> tempVector
-
-
Method Detail
-
parseTagFileDirectives
public static TagInfo parseTagFileDirectives(ParserController pc, java.lang.String name, java.lang.String path, TagLibraryInfo tagLibInfo) throws JasperException
Parses the tag file, and collects information on the directives included in it. The method is used to obtain the info on the tag file, when the handler that it represents is referenced. The tag file is not compiled here.- Parameters:
pc
- the current ParserController used in this compilationname
- the tag name as specified in the TLDtagfile
- the path for the tagfiletagLibInfo
- the TagLibraryInfo object associated with this TagInfo- Returns:
- a TagInfo object assembled from the directives in the tag file.
- Throws:
JasperException
-
loadTagFile
private java.lang.Class loadTagFile(Compiler compiler, java.lang.String tagFilePath, TagInfo tagInfo, PageInfo parentPageInfo) throws JasperException
Compiles and loads a tagfile.- Throws:
JasperException
-
loadTagFiles
public void loadTagFiles(Compiler compiler, Node.Nodes page) throws JasperException
Implements a phase of the translation that compiles (if necessary) the tag files used in a JSP files. The directives in the tag files are assumed to have been proccessed and encapsulated as TagFileInfo in the CustomTag nodes.- Throws:
JasperException
-
removeProtoTypeFiles
public void removeProtoTypeFiles(java.lang.String classFileName)
Removed the java and class files for the tag prototype generated from the current compilation.- Parameters:
classFileName
- If non-null, remove only the class file with with this name.
-
-