org.apache.velocity.runtime.directive
Class Foreach.NullHolderContext

java.lang.Object
  extended by org.apache.velocity.runtime.directive.Foreach.NullHolderContext
All Implemented Interfaces:
Context, InternalContextAdapter, InternalEventContext, InternalWrapperContext
Enclosing class:
Foreach

protected class Foreach.NullHolderContext
extends Object
implements InternalContextAdapter

A special context to use when the foreach iterator returns a null. This is required since the standard context may not support nulls. All puts and gets are passed through, except for the foreach iterator key.


Method Summary
 EventCartridge attachEventCartridge(EventCartridge ec)
           
 boolean containsKey(Object key)
          Does the context contain the key
 Object get(String key)
          Get an object from the context, or null if the key is equal to the loop variable
 boolean getAllowRendering()
          Checks to see if rendering should be allowed.
 InternalContextAdapter getBaseContext()
          returns the base full context impl
 Resource getCurrentResource()
          temporary fix to enable #include() to figure out current encoding.
 String getCurrentTemplateName()
          get the current template name
 EventCartridge getEventCartridge()
           
 Context getInternalUserContext()
          returns the wrapped user context
 Object[] getKeys()
          Get all the keys for the values in the context
 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
 Object put(String key, Object value)
          Adds a name/value pair to the context.
 Object remove(Object key)
          Remove an object from the context
 void setAllowRendering(boolean v)
          Set whether rendering is allowed.
 void setCurrentResource(Resource r)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Method Detail

get

public Object get(String key)
Get an object from the context, or null if the key is equal to the loop variable

Specified by:
get in interface Context
Parameters:
key - The name of the desired value.
Returns:
The value corresponding to the provided key.
See Also:
Context.get(java.lang.String)

put

public Object put(String key,
                  Object value)
Description copied from interface: Context
Adds a name/value pair to the context.

Specified by:
put in interface Context
Parameters:
key - The name to key the provided value with.
value - The corresponding value.
See Also:
Context.put(java.lang.String key, java.lang.Object value)

containsKey

public boolean containsKey(Object key)
Does the context contain the key

Specified by:
containsKey in interface Context
Parameters:
key - The key to look for.
Returns:
Whether the key is in the context.
See Also:
Context.containsKey(java.lang.Object key)

getKeys

public Object[] getKeys()
Description copied from interface: Context
Get all the keys for the values in the context

Specified by:
getKeys in interface Context
See Also:
Context.getKeys()

remove

public Object remove(Object key)
Remove an object from the context

Specified by:
remove in interface Context
Parameters:
key - The name of the value to remove.
Returns:
The value that the key was mapped to, or null if unmapped.
See Also:
Context.remove(java.lang.Object key)

pushCurrentTemplateName

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

Parameters:
s - current template name
See Also:
InternalHousekeepingContext.pushCurrentTemplateName(java.lang.String s)

popCurrentTemplateName

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

See Also:
InternalHousekeepingContext.popCurrentTemplateName()

getCurrentTemplateName

public String getCurrentTemplateName()
get the current template name

Returns:
String current template name
See Also:
InternalHousekeepingContext.getCurrentTemplateName()

getTemplateNameStack

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

Returns:
Object[] with the template name stack contents.
See Also:
InternalHousekeepingContext.getTemplateNameStack()

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
See Also:
InternalHousekeepingContext.icacheGet(java.lang.Object key)

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
See Also:
InternalHousekeepingContext.icachePut(java.lang.Object key, org.apache.velocity.util.introspection.IntrospectionCacheData o)

setCurrentResource

public void setCurrentResource(Resource r)
See Also:
InternalHousekeepingContext.setCurrentResource(org.apache.velocity.runtime.resource.Resource r)

getCurrentResource

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

See Also:
InternalHousekeepingContext.getCurrentResource()

getBaseContext

public InternalContextAdapter getBaseContext()
Description copied from interface: InternalWrapperContext
returns the base full context impl

Specified by:
getBaseContext in interface InternalWrapperContext
See Also:
InternalWrapperContext.getBaseContext()

getInternalUserContext

public Context getInternalUserContext()
Description copied from interface: InternalWrapperContext
returns the wrapped user context

Specified by:
getInternalUserContext in interface InternalWrapperContext
See Also:
InternalWrapperContext.getInternalUserContext()

attachEventCartridge

public EventCartridge attachEventCartridge(EventCartridge ec)
Specified by:
attachEventCartridge in interface InternalEventContext
See Also:
InternalEventContext.attachEventCartridge(org.apache.velocity.app.event.EventCartridge ec)

getEventCartridge

public EventCartridge getEventCartridge()
Specified by:
getEventCartridge in interface InternalEventContext
See Also:
InternalEventContext.getEventCartridge()

getAllowRendering

public boolean getAllowRendering()
Checks to see if rendering should be allowed. Defaults to true but will return false after a #stop directive.

Returns:
true if rendering is allowed, false if no rendering should occur
See Also:
InternalHousekeepingContext.getAllowRendering()

setAllowRendering

public void setAllowRendering(boolean v)
Set whether rendering is allowed. Defaults to true but is set to false after a #stop directive.

See Also:
InternalHousekeepingContext.setAllowRendering(boolean v)


Copyright © 2002 Apache Software Foundation. All Rights Reserved.