You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@velocity.apache.org by nb...@apache.org on 2004/11/11 05:02:03 UTC
cvs commit: jakarta-velocity-tools/src/java/org/apache/velocity/tools/view XMLToolboxManager.java
nbubna 2004/11/10 20:02:03
Modified: src/java/org/apache/velocity/tools/view
XMLToolboxManager.java
Log:
handle DataInfo more efficiently and wean this off of deprecated ToolboxContext
Revision Changes Path
1.12 +22 -6 jakarta-velocity-tools/src/java/org/apache/velocity/tools/view/XMLToolboxManager.java
Index: XMLToolboxManager.java
===================================================================
RCS file: /home/cvs/jakarta-velocity-tools/src/java/org/apache/velocity/tools/view/XMLToolboxManager.java,v
retrieving revision 1.11
retrieving revision 1.12
diff -u -r1.11 -r1.12
--- XMLToolboxManager.java 16 Apr 2004 20:39:28 -0000 1.11
+++ XMLToolboxManager.java 11 Nov 2004 04:02:03 -0000 1.12
@@ -79,7 +79,7 @@
{
private List toolinfo;
- private Map toolbox;
+ private Map data;
private static RuleSet ruleSet = new ToolboxRuleSet();
@@ -90,7 +90,7 @@
public XMLToolboxManager()
{
toolinfo = new ArrayList();
- toolbox = new HashMap();
+ data = new HashMap();
}
@@ -98,21 +98,37 @@
public void addTool(ToolInfo info)
{
- toolinfo.add(info);
+ if (info instanceof DataInfo)
+ {
+ data.put(info.getKey(), info.getInstance(null));
+ }
+ else
+ {
+ toolinfo.add(info);
+ }
Velocity.info("Added "+info.getKey()+" ("+info.getClassname()+") to the toolbox.");
}
+ /**
+ * @deprecated Use getToolbox(Object) instead.
+ */
public ToolboxContext getToolboxContext(Object initData)
{
+ return new ToolboxContext(getToolbox(initData));
+ }
+
+
+ public Map getToolbox(Object initData)
+ {
+ Map toolbox = new HashMap(data);
Iterator i = toolinfo.iterator();
while(i.hasNext())
{
ToolInfo info = (ToolInfo)i.next();
toolbox.put(info.getKey(), info.getInstance(initData));
}
-
- return new ToolboxContext(toolbox);
+ return toolbox;
}
---------------------------------------------------------------------
To unsubscribe, e-mail: velocity-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: velocity-dev-help@jakarta.apache.org