Author: lgawron
Date: Wed Feb 23 05:28:04 2005
New Revision: 155006

URL: http://svn.apache.org/viewcvs?view=rev&rev=155006
Log:
add TemplateObjectModelHelper.addJavaPackages so the object model is not messed 
with NativeJavaPackages by default

Modified:
    
cocoon/trunk/src/blocks/template/java/org/apache/cocoon/environment/FlowObjectModelHelper.java
    
cocoon/trunk/src/blocks/template/java/org/apache/cocoon/template/jxtg/script/event/Event.java
    
cocoon/trunk/src/java/org/apache/cocoon/environment/TemplateObjectModelHelper.java

Modified: 
cocoon/trunk/src/blocks/template/java/org/apache/cocoon/environment/FlowObjectModelHelper.java
URL: 
http://svn.apache.org/viewcvs/cocoon/trunk/src/blocks/template/java/org/apache/cocoon/environment/FlowObjectModelHelper.java?view=diff&r1=155005&r2=155006
==============================================================================
--- 
cocoon/trunk/src/blocks/template/java/org/apache/cocoon/environment/FlowObjectModelHelper.java
 (original)
+++ 
cocoon/trunk/src/blocks/template/java/org/apache/cocoon/environment/FlowObjectModelHelper.java
 Wed Feb 23 05:28:04 2005
@@ -36,7 +36,9 @@
     public static ExpressionContext getFOMExpressionContext(final Map 
objectModel, 
                                                             final Parameters 
parameters) {
         ExpressionContext context = new ExpressionContext();
-        
context.setVars((Map)TemplateObjectModelHelper.getTemplateObjectModel(objectModel,
 parameters));
+        Map expressionContext = 
(Map)TemplateObjectModelHelper.getTemplateObjectModel(objectModel, parameters);
+        expressionContext = (Map) TemplateObjectModelHelper.addJavaPackages( 
expressionContext );
+        context.setVars( expressionContext );
         context.setContextBean(FlowHelper.getContextObject(objectModel));
 
         return context;

Modified: 
cocoon/trunk/src/blocks/template/java/org/apache/cocoon/template/jxtg/script/event/Event.java
URL: 
http://svn.apache.org/viewcvs/cocoon/trunk/src/blocks/template/java/org/apache/cocoon/template/jxtg/script/event/Event.java?view=diff&r1=155005&r2=155006
==============================================================================
--- 
cocoon/trunk/src/blocks/template/java/org/apache/cocoon/template/jxtg/script/event/Event.java
 (original)
+++ 
cocoon/trunk/src/blocks/template/java/org/apache/cocoon/template/jxtg/script/event/Event.java
 Wed Feb 23 05:28:04 2005
@@ -15,7 +15,11 @@
  */
 package org.apache.cocoon.template.jxtg.script.event;
 
+import org.apache.cocoon.components.expression.ExpressionContext;
+import org.apache.cocoon.template.jxtg.environment.ExecutionContext;
+import org.apache.cocoon.xml.XMLConsumer;
 import org.xml.sax.Locator;
+import org.xml.sax.SAXException;
 import org.xml.sax.helpers.LocatorImpl;
 
 public class Event {
@@ -52,5 +56,13 @@
             buf.append("." + col);
         }
         return buf.toString();
+    }
+
+    public Event execute(final XMLConsumer consumer,
+                         ExpressionContext expressionContext,
+                         ExecutionContext executionContext,
+                         StartElement macroCall, Event startEvent, Event 
endEvent) 
+        throws SAXException {
+        return getNext();
     }
 }

Modified: 
cocoon/trunk/src/java/org/apache/cocoon/environment/TemplateObjectModelHelper.java
URL: 
http://svn.apache.org/viewcvs/cocoon/trunk/src/java/org/apache/cocoon/environment/TemplateObjectModelHelper.java?view=diff&r1=155005&r2=155006
==============================================================================
--- 
cocoon/trunk/src/java/org/apache/cocoon/environment/TemplateObjectModelHelper.java
 (original)
+++ 
cocoon/trunk/src/java/org/apache/cocoon/environment/TemplateObjectModelHelper.java
 Wed Feb 23 05:28:04 2005
@@ -134,12 +134,21 @@
             fillContext(contextObject, map);
         }
         
+        return map;
+    }
+
+    /**
+     * Add java packages to object model. Allows to construct java objects.
+     * @param objectModel usually the result of invoking getTemplateObjectModel
+     */
+    public static Object addJavaPackages( Map objectModel ) {
         Object javaPkg = FOM_JavaScriptFlowHelper.getJavaPackage(objectModel);
         Object pkgs = FOM_JavaScriptFlowHelper.getPackages(objectModel);
         
+        // packages might have already been set up if flowscript is being used
         if ( javaPkg != null && pkgs != null ) {
-            map.put( "Packages", javaPkg );
-            map.put( "java", pkgs );
+            objectModel.put( "Packages", javaPkg );
+            objectModel.put( "java", pkgs );
         } else { 
             Context cx = Context.enter();
             try {
@@ -152,13 +161,12 @@
                 newPackages.setParentScope( scope );
                 newPackages.setPrototype( ScriptableObject.getClassPrototype(  
 scope,
                                                                                
 JAVA_PACKAGE ) );
-                map.put( "Packages", newPackages );
-                map.put( "java", ScriptableObject.getProperty( scope, "java" ) 
);
+                objectModel.put( "Packages", newPackages );
+                objectModel.put( "java", ScriptableObject.getProperty( scope, 
"java" ) );
             } finally {
                 Context.exit();
             }
         }
-        return map;
+        return objectModel;
     }
-
 }


Reply via email to