You are viewing a plain text version of this content. The canonical link for it is here.
Posted to cvs@cocoon.apache.org by an...@apache.org on 2006/04/24 08:49:34 UTC

svn commit: r396456 - in /cocoon/trunk/core/cocoon-core/src/main/java/org/apache/cocoon/components/flow: CompilingInterpreter.java javascript/fom/FOM_JavaScriptInterpreter.java

Author: antonio
Date: Sun Apr 23 23:49:32 2006
New Revision: 396456

URL: http://svn.apache.org/viewcvs?rev=396456&view=rev
Log:

<action dev="AG" type="fix" fixes-bug="COCOON-1721" due-to="Georg Hüttenegger" due-to-email="georg.huettenegger@gmx.at">
  Performance Issue/JavaScriptFlowScript: If &lt;reload-scripts&gt; is set to false,
  do not check for last modification time of javascript source files.
</action>

Modified:
    cocoon/trunk/core/cocoon-core/src/main/java/org/apache/cocoon/components/flow/CompilingInterpreter.java
    cocoon/trunk/core/cocoon-core/src/main/java/org/apache/cocoon/components/flow/javascript/fom/FOM_JavaScriptInterpreter.java

Modified: cocoon/trunk/core/cocoon-core/src/main/java/org/apache/cocoon/components/flow/CompilingInterpreter.java
URL: http://svn.apache.org/viewcvs/cocoon/trunk/core/cocoon-core/src/main/java/org/apache/cocoon/components/flow/CompilingInterpreter.java?rev=396456&r1=396455&r2=396456&view=diff
==============================================================================
--- cocoon/trunk/core/cocoon-core/src/main/java/org/apache/cocoon/components/flow/CompilingInterpreter.java (original)
+++ cocoon/trunk/core/cocoon-core/src/main/java/org/apache/cocoon/components/flow/CompilingInterpreter.java Sun Apr 23 23:49:32 2006
@@ -107,7 +107,7 @@
             if (refresh) {
                 source.refresh();
             }
-            if (script == null || compileTime < source.getLastModified()) {
+            if (script == null || (refresh && compileTime < source.getLastModified())) {
                 script = interpreter.compileScript(context, scope, source);
                 compileTime = source.getLastModified();
             }

Modified: cocoon/trunk/core/cocoon-core/src/main/java/org/apache/cocoon/components/flow/javascript/fom/FOM_JavaScriptInterpreter.java
URL: http://svn.apache.org/viewcvs/cocoon/trunk/core/cocoon-core/src/main/java/org/apache/cocoon/components/flow/javascript/fom/FOM_JavaScriptInterpreter.java?rev=396456&r1=396455&r2=396456&view=diff
==============================================================================
--- cocoon/trunk/core/cocoon-core/src/main/java/org/apache/cocoon/components/flow/javascript/fom/FOM_JavaScriptInterpreter.java (original)
+++ cocoon/trunk/core/cocoon-core/src/main/java/org/apache/cocoon/components/flow/javascript/fom/FOM_JavaScriptInterpreter.java Sun Apr 23 23:49:32 2006
@@ -31,6 +31,7 @@
 import org.apache.avalon.framework.configuration.Configuration;
 import org.apache.avalon.framework.configuration.ConfigurationException;
 import org.apache.avalon.framework.service.ServiceManager;
+
 import org.apache.cocoon.ResourceNotFoundException;
 import org.apache.cocoon.components.ContextHelper;
 import org.apache.cocoon.components.flow.CompilingInterpreter;
@@ -45,6 +46,7 @@
 import org.apache.cocoon.environment.Redirector;
 import org.apache.cocoon.environment.Request;
 import org.apache.cocoon.environment.Session;
+
 import org.apache.commons.jxpath.JXPathIntrospector;
 import org.apache.commons.jxpath.ri.JXPathContextReferenceImpl;
 import org.apache.excalibur.source.Source;
@@ -453,7 +455,10 @@
                 String sourceURI = (String) execList.get(i);
                 ScriptSourceEntry entry =
                     (ScriptSourceEntry) compiledScripts.get(sourceURI);
-                long lastMod = entry.getSource().getLastModified();
+                long lastMod = 0;
+                if (reloadScripts && lastExecTime != 0) {
+                    lastMod = entry.getSource().getLastModified();
+                }
                 Script script = entry.getScript(context, this.scope, false, this);
                 if (lastExecTime == 0 || lastMod > lastExecTime) {
                     script.exec(context, thrScope);
@@ -488,7 +493,6 @@
             }
         }
         throw new ResourceNotFoundException(fileName + ": not found");
-
     }
 
     protected Script compileScript(Context cx, Scriptable scope, Source src)
@@ -676,10 +680,8 @@
                                                 "handleContinuation", args);
                 } catch (JavaScriptException ex) {
                     throw locationTracker.getException("Error calling continuation", ex);
-
                 } catch (EcmaError ee) {
                     throw locationTracker.getException("Error calling continuation", ee);
-
                 }
             } finally {
                 kScope.setLock(false);