org.apache.velocity.context

Interface InternalHousekeepingContext

Known Subinterfaces:
InternalContextAdapter
Known Implementing Classes:
AbstractContext, InternalContextAdapterImpl, InternalContextBase, VelocityContext, VMContext

(package private) 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,v 1.6.12.1 2004/03/03 23:22:54 geirm Exp $
Authors:
Geir Magnusson Jr.
Christoph Reck

Method Summary

Resource
getCurrentResource()
temporary fix to enable #include() to figure out current encoding.
String
getCurrentTemplateName()
get the current template name
Object[]
getTemplateNameStack()
Returns the template name stack in form of an array.
IntrospectionCacheData
icacheGet(Object key)
returns an IntrospectionCache Data (@see IntrospectionCacheData) object if exists for the key
void
icachePut(Object key, IntrospectionCacheData o)
places an IntrospectionCache Data (@see IntrospectionCacheData) element in the cache for specified key
void
popCurrentTemplateName()
remove the current template name from stack
void
pushCurrentTemplateName(String s)
set the current template name on top of stack
void
setCurrentResource(Resource r)

Method Details

getCurrentResource

public Resource getCurrentResource()
temporary fix to enable #include() to figure out current encoding.

getCurrentTemplateName

public String getCurrentTemplateName()
get the current template name
Returns:
String current template name

getTemplateNameStack

public Object[] getTemplateNameStack()
Returns the template name stack in form of an array.
Returns:
Object[] with the template name stack contents.

icacheGet

public IntrospectionCacheData icacheGet(Object key)
returns an IntrospectionCache Data (@see IntrospectionCacheData) object if exists for the key
Parameters:
key - key to find in cache
Returns:
cache object

icachePut

public void icachePut(Object key,
                      IntrospectionCacheData o)
places an IntrospectionCache Data (@see IntrospectionCacheData) element in the cache for specified key
Parameters:
key - key
o - IntrospectionCacheData object to place in cache

popCurrentTemplateName

public void popCurrentTemplateName()
remove the current template name from stack

pushCurrentTemplateName

public void pushCurrentTemplateName(String s)
set the current template name on top of stack
Parameters:
s - current template name

setCurrentResource

public void setCurrentResource(Resource r)

Copyright B) 2002 Apache Software Foundation. All Rights Reserved.