Class ContextTool

java.lang.Object
org.apache.velocity.tools.generic.SafeConfig
org.apache.velocity.tools.generic.ContextTool
All Implemented Interfaces:
Serializable

@DefaultKey("context") @InvalidScope({"application","session"}) public class ContextTool extends SafeConfig implements Serializable

Tool for convenient access to Context data and meta-data.

Template example(s):

 #foreach( $key in $context.keys )
   $key = $context.get($key)
 #end

Toolbox configuration:
<tools>
  <toolbox scope="request">
    <tool class="org.apache.velocity.tools.generic.ContextTool"/>
  </toolbox>
</tools>

This class is only designed for use as a request-scope tool.

Since:
VelocityTools 2.0
Version:
$Id: ContextTool.java 385122 2006-03-11 18:37:42Z nbubna $
Author:
Nathan Bubna
See Also:
  • Field Details

    • context

      protected org.apache.velocity.context.Context context
    • toolbox

      protected Map<String,Object> toolbox
  • Constructor Details

    • ContextTool

      public ContextTool()
  • Method Details

    • configure

      protected void configure(ValueParser parser)
      Initializes this instance for the current request. Also looks for a safe-mode configuration setting. By default, safeMode is true and thus keys with '.' in them are hidden.
      Overrides:
      configure in class SafeConfig
      Parameters:
      parser - configuration values
    • getThis

      public org.apache.velocity.context.Context getThis()
      Returns the context being analyzed by this tool.
      Returns:
      analyzed context
    • getToolbox

      public Map<String,Object> getToolbox()

      Returns a read-only view of the toolbox Map for this context.

      Returns:
      a map of all available tools for this request or null if such a map is not available
    • getKeys

      public Set getKeys()

      Return a Set of the available reference keys in the current context.

      Returns:
      keys set
    • fillKeyset

      protected void fillKeyset(Set keys)
      Actually do the work of filling in the set of keys for getKeys() here so subclasses can add keys too.
      Parameters:
      keys - set to fill with keys
    • getValues

      public Set getValues()

      Return a Set of the available values in the current context.

      Returns:
      values set
    • contains

      public boolean contains(Object refName)

      Returns true if the context contains a value for the specified reference name (aka context key).

      Parameters:
      refName - context key
      Returns:
      true if key is present in the context
    • get

      public Object get(Object refName)
      Retrieves the value for the specified reference name (aka context key).
      Parameters:
      refName - context key
      Returns:
      found value, or null