Class Node.CustomTag
java.lang.Object
org.apache.jasper.compiler.Node
org.apache.jasper.compiler.Node.ChildInfoBase
org.apache.jasper.compiler.Node.CustomTag
- All Implemented Interfaces:
TagConstants
- Enclosing class:
Node
Represents a custom tag
-
Nested Class Summary
Nested classes/interfaces inherited from class Node
Node.AttributeDirective, Node.AttributeGenerator, Node.ChildInfo, Node.ChildInfoBase, Node.Comment, Node.CustomTag, Node.Declaration, Node.DoBodyAction, Node.ELExpression, Node.Expression, Node.ForwardAction, Node.GetProperty, Node.IncludeAction, Node.IncludeDirective, Node.InvokeAction, Node.JspAttribute, Node.JspBody, Node.JspElement, Node.JspOutput, Node.JspRoot, Node.JspText, Node.NamedAttribute, Node.Nodes, Node.PageDirective, Node.ParamAction, Node.Root, Node.ScriptingElement, Node.Scriptlet, Node.SetProperty, Node.TagDirective, Node.TaglibDirective, Node.TemplateText, Node.UninterpretedTag, Node.UseBean, Node.VariableDirective, Node.Visitor -
Field Summary
Fields inherited from class Node
attrs, beginJavaLine, body, endJavaLine, innerClassName, localName, namedAttributeNodes, nonTaglibXmlnsAttrs, parent, qName, startMark, taglibAttrs, textFields inherited from interface TagConstants
ATTRIBUTE_ACTION, ATTRIBUTE_DIRECTIVE_ACTION, BODY_ACTION, DECLARATION_ACTION, DIRECTIVE_ACTION, DOBODY_ACTION, ELEMENT_ACTION, EXPRESSION_ACTION, FORWARD_ACTION, GET_PROPERTY_ACTION, INCLUDE_ACTION, INCLUDE_DIRECTIVE_ACTION, INVOKE_ACTION, JSP_ATTRIBUTE_ACTION, JSP_ATTRIBUTE_DIRECTIVE_ACTION, JSP_BODY_ACTION, JSP_DECLARATION_ACTION, JSP_DOBODY_ACTION, JSP_ELEMENT_ACTION, JSP_EXPRESSION_ACTION, JSP_FORWARD_ACTION, JSP_GET_PROPERTY_ACTION, JSP_INCLUDE_ACTION, JSP_INCLUDE_DIRECTIVE_ACTION, JSP_INVOKE_ACTION, JSP_OUTPUT_ACTION, JSP_PAGE_DIRECTIVE_ACTION, JSP_PARAM_ACTION, JSP_ROOT_ACTION, JSP_SCRIPTLET_ACTION, JSP_SET_PROPERTY_ACTION, JSP_TAG_DIRECTIVE_ACTION, JSP_TAGLIB_DIRECTIVE_ACTION, JSP_TEXT_ACTION, JSP_TEXT_ACTION_END, JSP_URI, JSP_USE_BEAN_ACTION, JSP_VARIABLE_DIRECTIVE_ACTION, OUTPUT_ACTION, PAGE_DIRECTIVE_ACTION, PARAM_ACTION, ROOT_ACTION, SCRIPTLET_ACTION, SET_PROPERTY_ACTION, TAG_DIRECTIVE_ACTION, TAGLIB_DIRECTIVE_ACTION, TEXT_ACTION, URN_JSPTAGDIR, URN_JSPTLD, USE_BEAN_ACTION, VARIABLE_DIRECTIVE_ACTION -
Method Summary
Modifier and TypeMethodDescriptionvoidbooleanChecks to see if the attribute of the given name is of type JspFragment.Returns the nodes generated at the end tag by a tag plugin.Returns the nodes generated at the start tag by a tag plugin.intGets this custom tag's custom nesting level, which is given as the number of times this custom tag is nested inside itself.Returns the parent custom tag.Returns the JSP attributes for this custom tag.Returns the number count for this custom tag.Returns the tag prefix.getScriptingVars(int scope) Gets the scripting variables for the given scope that need to be declared.Returns the tag data for this custom tag.Returns the tag file information for this custom tag.Class<?> Returns the tag handler class.Returns the tag handler pool name.Returns the tag information for this custom tag.Returns the tag plugin context for this custom tag.Returns the tag variable information from the tag info.getURI()Returns the URI namespace that this custom action belongs to.Returns the variable information computed from the tag data.booleanA custom action is considered to have an empty body if any of the following hold true: getBody() returns null all immediate children are jsp:attribute actions the action's jsp:body is emptybooleanReturns whether the tag handler implements BodyTag.booleanReturns whether the tag handler implements DynamicAttributes.booleanReturns whether the tag handler implements IterationTag.booleanReturns whether the tag handler implements JspIdConsumer.booleanReturns whether the tag handler implements SimpleTag.booleanReturns whether the tag handler implements TryCatchFinally.booleanReturns whether this custom action is supported by a tag file.voidsetAtETag(Node.Nodes eTag) Sets the nodes generated at the end tag by a tag plugin.voidsetAtSTag(Node.Nodes sTag) Sets the nodes generated at the start tag by a tag plugin.voidSets the parent custom tag.voidsetJspAttributes(Node.JspAttribute[] jspAttrs) Sets the JSP attributes for this custom tag.voidsetNumCount(Integer count) Sets the number count for this custom tag.voidsetScriptingVars(List<Object> vec, int scope) Sets the scripting variables for the given scope.voidsetTagData(TagData tagData) Sets the tag data for this custom tag.voidsetTagHandlerClass(Class<?> hc) Sets the tag handler class.voidSets the tag handler pool name.voidsetTagPluginContext(TagPluginContext tagPluginContext) Sets the tag plugin context for this custom tag.voidsetUseTagPlugin(boolean use) Sets whether to use a tag plugin for this custom tag.booleanReturns whether a tag plugin is used for this custom tag.Methods inherited from class Node.ChildInfoBase
getChildInfoMethods inherited from class Node
getAttributes, getAttributeValue, getBeginJavaLine, getBody, getEndJavaLine, getInnerClassName, getLocalName, getNamedAttributeNode, getNamedAttributeNodes, getNonTaglibXmlnsAttributes, getParent, getQName, getRoot, getStart, getTaglibAttributes, getText, getTextAttribute, setAttributes, setBeginJavaLine, setBody, setEndJavaLine, setInnerClassName
-
Method Details
-
accept
- Throws:
JasperException
-
getURI
Returns the URI namespace that this custom action belongs to.- Returns:
- The URI namespace
-
getPrefix
-
setJspAttributes
Sets the JSP attributes for this custom tag.- Parameters:
jspAttrs- The JSP attributes
-
getJspAttributes
Returns the JSP attributes for this custom tag.- Returns:
- The JSP attributes
-
setTagData
Sets the tag data for this custom tag.- Parameters:
tagData- The tag data
-
getTagData
-
setTagHandlerPoolName
Sets the tag handler pool name.- Parameters:
s- The tag handler pool name
-
getTagHandlerPoolName
Returns the tag handler pool name.- Returns:
- The tag handler pool name
-
getTagInfo
-
getTagFileInfo
Returns the tag file information for this custom tag.- Returns:
- The tag file info, or
nullif not a tag file
-
isTagFile
public boolean isTagFile()Returns whether this custom action is supported by a tag file.- Returns:
trueif this custom action is supported by a tag file,falseotherwise
-
getTagHandlerClass
-
setTagHandlerClass
Sets the tag handler class.- Parameters:
hc- The tag handler class
-
implementsIterationTag
public boolean implementsIterationTag()Returns whether the tag handler implements IterationTag.- Returns:
trueif the tag handler implements IterationTag
-
implementsBodyTag
public boolean implementsBodyTag()Returns whether the tag handler implements BodyTag.- Returns:
trueif the tag handler implements BodyTag
-
implementsTryCatchFinally
public boolean implementsTryCatchFinally()Returns whether the tag handler implements TryCatchFinally.- Returns:
trueif the tag handler implements TryCatchFinally
-
implementsJspIdConsumer
public boolean implementsJspIdConsumer()Returns whether the tag handler implements JspIdConsumer.- Returns:
trueif the tag handler implements JspIdConsumer
-
implementsSimpleTag
public boolean implementsSimpleTag()Returns whether the tag handler implements SimpleTag.- Returns:
trueif the tag handler implements SimpleTag
-
implementsDynamicAttributes
public boolean implementsDynamicAttributes()Returns whether the tag handler implements DynamicAttributes.- Returns:
trueif the tag handler implements DynamicAttributes
-
getTagVariableInfos
Returns the tag variable information from the tag info.- Returns:
- The tag variable info array
-
getVariableInfos
Returns the variable information computed from the tag data.- Returns:
- The variable info array
-
setCustomTagParent
Sets the parent custom tag.- Parameters:
n- The parent custom tag
-
getCustomTagParent
Returns the parent custom tag.- Returns:
- The parent custom tag
-
setNumCount
Sets the number count for this custom tag.- Parameters:
count- The number count
-
getNumCount
Returns the number count for this custom tag.- Returns:
- The number count
-
setScriptingVars
Sets the scripting variables for the given scope.- Parameters:
vec- The list of scripting variablesscope- The variable scope (AT_BEGIN, AT_END, or NESTED)- Throws:
IllegalArgumentException- if the scope is invalid
-
getScriptingVars
Gets the scripting variables for the given scope that need to be declared.- Parameters:
scope- The variable scope (AT_BEGIN, AT_END, or NESTED)- Returns:
- The list of scripting variables for the given scope
- Throws:
IllegalArgumentException- if the scope is invalid
-
getCustomNestingLevel
public int getCustomNestingLevel()Gets this custom tag's custom nesting level, which is given as the number of times this custom tag is nested inside itself.- Returns:
- The custom nesting level
-
checkIfAttributeIsJspFragment
Checks to see if the attribute of the given name is of type JspFragment.- Parameters:
name- The attribute to check- Returns:
trueif it is a JspFragment
-
setUseTagPlugin
public void setUseTagPlugin(boolean use) Sets whether to use a tag plugin for this custom tag.- Parameters:
use-trueto use a tag plugin
-
useTagPlugin
public boolean useTagPlugin()Returns whether a tag plugin is used for this custom tag.- Returns:
trueif a tag plugin is used
-
setTagPluginContext
Sets the tag plugin context for this custom tag.- Parameters:
tagPluginContext- The tag plugin context
-
getTagPluginContext
Returns the tag plugin context for this custom tag.- Returns:
- The tag plugin context
-
setAtSTag
Sets the nodes generated at the start tag by a tag plugin.- Parameters:
sTag- The start tag nodes
-
getAtSTag
Returns the nodes generated at the start tag by a tag plugin.- Returns:
- The start tag nodes
-
setAtETag
Sets the nodes generated at the end tag by a tag plugin.- Parameters:
eTag- The end tag nodes
-
getAtETag
Returns the nodes generated at the end tag by a tag plugin.- Returns:
- The end tag nodes
-
hasEmptyBody
public boolean hasEmptyBody()A custom action is considered to have an empty body if any of the following hold true:- getBody() returns null
- all immediate children are jsp:attribute actions
- the action's jsp:body is empty
- Returns:
trueif this custom action has an empty body, andfalseotherwise.
-