org.opencms.jsp
Class CmsJspScopedVarBodyTagSuport

java.lang.Object
  extended by javax.servlet.jsp.tagext.TagSupport
      extended by javax.servlet.jsp.tagext.BodyTagSupport
          extended by org.opencms.jsp.CmsJspScopedVarBodyTagSuport
All Implemented Interfaces:
java.io.Serializable, javax.servlet.jsp.tagext.BodyTag, javax.servlet.jsp.tagext.IterationTag, javax.servlet.jsp.tagext.JspTag, javax.servlet.jsp.tagext.Tag
Direct Known Subclasses:
CmsJspTagContentAccess, CmsJspTagContentInfo, CmsJspTagContentLoad

public class CmsJspScopedVarBodyTagSuport
extends javax.servlet.jsp.tagext.BodyTagSupport

Parent for body tags that require support for setting scoped variables to the JSP page context.

Since:
7.0.2
Version:
$Revision: 1.7 $
Author:
Alexander Kandzior
See Also:
Serialized Form

Field Summary
 
Fields inherited from class javax.servlet.jsp.tagext.BodyTagSupport
bodyContent
 
Fields inherited from class javax.servlet.jsp.tagext.TagSupport
id, pageContext
 
Fields inherited from interface javax.servlet.jsp.tagext.BodyTag
EVAL_BODY_BUFFERED, EVAL_BODY_TAG
 
Fields inherited from interface javax.servlet.jsp.tagext.IterationTag
EVAL_BODY_AGAIN
 
Fields inherited from interface javax.servlet.jsp.tagext.Tag
EVAL_BODY_INCLUDE, EVAL_PAGE, SKIP_BODY, SKIP_PAGE
 
Constructor Summary
CmsJspScopedVarBodyTagSuport()
           
 
Method Summary
 java.lang.String getScope()
          Returns the scope under which the content access bean is saved in the page context.
protected static int getScopeAsInt(java.lang.String scope)
          Returns the int value of the specified scope string.
protected static java.lang.String getScopeAsString(int scope)
          Returns the String value of the specified scope integer.
protected  int getScopeInt()
          Returns the scope as int usable for setting the JSP page context with JspContext.setAttribute(String, Object, int).
 java.lang.String getVar()
          Returns the name of the variable under which the content access bean is saved in the page context.
protected  boolean isScopeVarSet()
          Returns true in case the scoped variable has been set for this Tag.
 void release()
           
 void setScope(java.lang.String scope)
          Sets the scope under which the content access bean is saved in the page context.
 void setVar(java.lang.String var)
          Sets the name of the variable under which the content access bean is saved in the page context.
protected  void storeAttribute(java.lang.Object obj)
          Stores the provided Object as attribute in the JSP page context.
 
Methods inherited from class javax.servlet.jsp.tagext.BodyTagSupport
doAfterBody, doEndTag, doInitBody, doStartTag, getBodyContent, getPreviousOut, setBodyContent
 
Methods inherited from class javax.servlet.jsp.tagext.TagSupport
findAncestorWithClass, getId, getParent, getValue, getValues, removeValue, setId, setPageContext, setParent, setValue
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface javax.servlet.jsp.tagext.Tag
getParent, setPageContext, setParent
 

Constructor Detail

CmsJspScopedVarBodyTagSuport

public CmsJspScopedVarBodyTagSuport()
Method Detail

getScopeAsInt

protected static int getScopeAsInt(java.lang.String scope)
Returns the int value of the specified scope string.

The default value is PageContext.PAGE_SCOPE.

Parameters:
scope - the string name of the desired scope, e.g. "application", "request"
Returns:
the int value of the specified scope string

getScopeAsString

protected static java.lang.String getScopeAsString(int scope)
Returns the String value of the specified scope integer.

Valid values for the scope int parameter are 1 to 4 only.

Parameters:
scope - integer that describes the scope according to getScopeInt().

Returns:
the String value of the specified scope integer

getScope

public java.lang.String getScope()
Returns the scope under which the content access bean is saved in the page context.

Returns:
the scope under which the content access bean is saved in the page context

getVar

public java.lang.String getVar()
Returns the name of the variable under which the content access bean is saved in the page context.

Returns:
the name of the variable under which the content access bean is saved in the page context

release

public void release()
Specified by:
release in interface javax.servlet.jsp.tagext.Tag
Overrides:
release in class javax.servlet.jsp.tagext.BodyTagSupport
See Also:
Tag.release()

setScope

public void setScope(java.lang.String scope)
Sets the scope under which the content access bean is saved in the page context.

Parameters:
scope - the scope under which the content access bean is saved in the page context

setVar

public void setVar(java.lang.String var)
Sets the name of the variable under which the content access bean is saved in the page context.

Parameters:
var - the name of the variable under which the content access bean is saved in the page context

getScopeInt

protected int getScopeInt()
Returns the scope as int usable for setting the JSP page context with JspContext.setAttribute(String, Object, int).

Returns:
the scope as int usable for setting the JSP page context

isScopeVarSet

protected boolean isScopeVarSet()
Returns true in case the scoped variable has been set for this Tag.

Returns:
true in case the scoped variable has been set for this Tag

storeAttribute

protected void storeAttribute(java.lang.Object obj)
Stores the provided Object as attribute in the JSP page context.

The values of getVar() and getScope() are used to determine how the Object is stored.

Parameters:
obj - the Object to store in the JSP page context.