Package org.apache.velocity.context
Interface InternalHousekeepingContext
- All Known Subinterfaces:
InternalContextAdapter
- All Known Implementing Classes:
AbstractContext
,ChainedInternalContextAdapter
,EvaluateContext
,Foreach.NullHolderContext
,InternalContextAdapterImpl
,InternalContextBase
,ProxyVMContext
,VelocityContext
interface InternalHousekeepingContext
interface to encapsulate the 'stuff' for internal operation of velocity.
We use the context as a thread-safe storage : we take advantage of the
fact that it's a visitor of sorts to all nodes (that matter) of the
AST during init() and render().
Currently, it carries the template name for namespace
support, as well as node-local context data introspection caching.
- Version:
- $Id: InternalHousekeepingContext.java 731266 2009-01-04 15:11:20Z byron $
-
Method Summary
Modifier and TypeMethodDescriptionint
get the current macro call depthget the current macro nametemporary fix to enable #include() to figure out current encoding.get the current template nameGet the macro library list for the current template.Object[]
Returns the macro name stack in form of an array.Object[]
Returns the template name stack in form of an array.returns an IntrospectionCache Data (@see IntrospectionCacheData) object if exists for the keyvoid
icachePut
(Object key, IntrospectionCacheData o) places an IntrospectionCache Data (@see IntrospectionCacheData) element in the cache for specified keyvoid
remove the current macro name from stackvoid
remove the current template name from stackvoid
set the current macro name on top of stackvoid
set the current template name on top of stackvoid
void
setMacroLibraries
(List macroLibraries) Set the macro library list for the current template.
-
Method Details
-
pushCurrentTemplateName
set the current template name on top of stack- Parameters:
s
- current template name
-
popCurrentTemplateName
void popCurrentTemplateName()remove the current template name from stack -
getCurrentTemplateName
String getCurrentTemplateName()get the current template name- Returns:
- String current template name
-
getTemplateNameStack
Object[] getTemplateNameStack()Returns the template name stack in form of an array.- Returns:
- Object[] with the template name stack contents.
-
pushCurrentMacroName
set the current macro name on top of stack- Parameters:
s
- current macro name
-
popCurrentMacroName
void popCurrentMacroName()remove the current macro name from stack -
getCurrentMacroName
String getCurrentMacroName()get the current macro name- Returns:
- String current macro name
-
getCurrentMacroCallDepth
int getCurrentMacroCallDepth()get the current macro call depth- Returns:
- int current macro call depth
-
getMacroNameStack
Object[] getMacroNameStack()Returns the macro name stack in form of an array.- Returns:
- Object[] with the macro name stack contents.
-
icacheGet
returns an IntrospectionCache Data (@see IntrospectionCacheData) object if exists for the key- Parameters:
key
- key to find in cache- Returns:
- cache object
-
icachePut
places an IntrospectionCache Data (@see IntrospectionCacheData) element in the cache for specified key- Parameters:
key
- keyo
- IntrospectionCacheData object to place in cache
-
getCurrentResource
Resource getCurrentResource()temporary fix to enable #include() to figure out current encoding.- Returns:
- The current resource.
-
setCurrentResource
- Parameters:
r
-
-
setMacroLibraries
Set the macro library list for the current template.- Parameters:
macroLibraries
- list of macro libraries to set
-
getMacroLibraries
List getMacroLibraries()Get the macro library list for the current template.- Returns:
- List of macro library names
-