Package org.apache.velocity.tools
Class Toolbox
- java.lang.Object
-
- org.apache.velocity.tools.Toolbox
-
- All Implemented Interfaces:
java.io.Serializable
public class Toolbox extends java.lang.Object implements java.io.Serializable
Instances of this class are typically created by a
ToolboxFactory
on a one-per-scope basis. So, for each application, there would be one application-scoped Toolbox from which you would retrieve tool instances, and for each request, there would be one request-scoped Toolbox. Of course, none of the above is enforced. There's no reason that you can't manually create a Toolbox or have multiple Toolboxes for each scope.When a Toolbox creates a tool instance asked of it (see
get(java.lang.String)
), it will cache that instance for future requests.- Version:
- $Id: Toolbox.java 511959 2007-02-26 19:24:39Z nbubna $
- Author:
- Nathan Bubna
- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description private java.util.Map<java.lang.String,java.lang.Object>
cache
private java.util.Map<java.lang.String,ToolInfo>
infoMap
static java.lang.String
KEY
The key used to place instances in various scopes.private java.util.Map<java.lang.String,java.lang.Object>
properties
private static long
serialVersionUID
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected void
cacheData(java.util.Map<java.lang.String,java.lang.Object> data)
Toolbox
combine(Toolbox... toolboxes)
java.lang.Object
get(java.lang.String key)
java.lang.Object
get(java.lang.String key, java.lang.String path)
java.lang.Object
get(java.lang.String key, java.lang.String path, java.util.Map<java.lang.String,java.lang.Object> context)
java.lang.Object
get(java.lang.String key, java.util.Map<java.lang.String,java.lang.Object> context)
java.util.Map<java.lang.String,java.lang.Object>
getAll(java.util.Map<java.lang.String,java.lang.Object> context)
protected java.lang.Object
getFromCache(java.lang.String key, java.lang.String path)
protected java.lang.Object
getFromInfo(java.lang.String key, java.lang.String path, java.util.Map<java.lang.String,java.lang.Object> context)
java.util.Set<java.lang.String>
getKeys()
java.util.Map<java.lang.String,java.lang.Object>
getProperties()
java.util.Map<java.lang.String,java.lang.Class>
getToolClassMap()
Return a newMap
link tools' keys to theirClass
es.protected boolean
hasPermission(ToolInfo info, java.lang.String path)
-
-
-
Field Detail
-
KEY
public static final java.lang.String KEY
The key used to place instances in various scopes.
-
serialVersionUID
private static final long serialVersionUID
- See Also:
- Constant Field Values
-
infoMap
private java.util.Map<java.lang.String,ToolInfo> infoMap
-
properties
private java.util.Map<java.lang.String,java.lang.Object> properties
-
cache
private java.util.Map<java.lang.String,java.lang.Object> cache
-
-
Method Detail
-
cacheData
protected void cacheData(java.util.Map<java.lang.String,java.lang.Object> data)
-
getProperties
public java.util.Map<java.lang.String,java.lang.Object> getProperties()
-
get
public java.lang.Object get(java.lang.String key)
-
get
public java.lang.Object get(java.lang.String key, java.lang.String path)
-
get
public java.lang.Object get(java.lang.String key, java.util.Map<java.lang.String,java.lang.Object> context)
-
get
public java.lang.Object get(java.lang.String key, java.lang.String path, java.util.Map<java.lang.String,java.lang.Object> context)
-
getFromCache
protected java.lang.Object getFromCache(java.lang.String key, java.lang.String path)
-
getFromInfo
protected java.lang.Object getFromInfo(java.lang.String key, java.lang.String path, java.util.Map<java.lang.String,java.lang.Object> context)
-
hasPermission
protected boolean hasPermission(ToolInfo info, java.lang.String path)
-
getKeys
public java.util.Set<java.lang.String> getKeys()
-
getToolClassMap
public java.util.Map<java.lang.String,java.lang.Class> getToolClassMap()
Return a newMap
link tools' keys to theirClass
es. This will not instantiate any tools, it is merely informational. This will not include the keys for any cached data. Note that inclusion in this map does NOT mean that all these tools will be available for all requests, as this map ignores all path restrictions on the tools.
-
getAll
public java.util.Map<java.lang.String,java.lang.Object> getAll(java.util.Map<java.lang.String,java.lang.Object> context)
-
-