Return-Path: Delivered-To: apmail-cocoon-cvs-archive@www.apache.org Received: (qmail 97793 invoked from network); 2 Apr 2008 03:45:30 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.2) by minotaur.apache.org with SMTP; 2 Apr 2008 03:45:30 -0000 Received: (qmail 51005 invoked by uid 500); 2 Apr 2008 03:45:30 -0000 Delivered-To: apmail-cocoon-cvs-archive@cocoon.apache.org Received: (qmail 50947 invoked by uid 500); 2 Apr 2008 03:45:30 -0000 Mailing-List: contact cvs-help@cocoon.apache.org; run by ezmlm Precedence: bulk Reply-To: dev@cocoon.apache.org list-help: list-unsubscribe: List-Post: List-Id: Delivered-To: mailing list cvs@cocoon.apache.org Received: (qmail 50936 invoked by uid 99); 2 Apr 2008 03:45:30 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 01 Apr 2008 20:45:30 -0700 X-ASF-Spam-Status: No, hits=-2000.0 required=10.0 tests=ALL_TRUSTED X-Spam-Check-By: apache.org Received: from [140.211.11.3] (HELO eris.apache.org) (140.211.11.3) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 02 Apr 2008 03:44:46 +0000 Received: by eris.apache.org (Postfix, from userid 65534) id 9C5591A9832; Tue, 1 Apr 2008 20:45:04 -0700 (PDT) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r643699 - in /cocoon/trunk: blocks/cocoon-flowscript/cocoon-flowscript-impl/src/main/java/org/apache/cocoon/components/flow/javascript/fom/ blocks/cocoon-scratchpad/cocoon-scratchpad-impl/src/main/java/org/apache/cocoon/components/flow/java... Date: Wed, 02 Apr 2008 03:45:02 -0000 To: cvs@cocoon.apache.org From: joerg@apache.org X-Mailer: svnmailer-1.0.8 Message-Id: <20080402034504.9C5591A9832@eris.apache.org> X-Virus-Checked: Checked by ClamAV on apache.org Author: joerg Date: Tue Apr 1 20:44:59 2008 New Revision: 643699 URL: http://svn.apache.org/viewvc?rev=643699&view=rev Log: remove Log from WebContinuation, change display() to toString(), logging is done "externally" Modified: cocoon/trunk/blocks/cocoon-flowscript/cocoon-flowscript-impl/src/main/java/org/apache/cocoon/components/flow/javascript/fom/FOM_Cocoon.java cocoon/trunk/blocks/cocoon-flowscript/cocoon-flowscript-impl/src/main/java/org/apache/cocoon/components/flow/javascript/fom/FOM_JavaScriptInterpreter.java cocoon/trunk/blocks/cocoon-flowscript/cocoon-flowscript-impl/src/main/java/org/apache/cocoon/components/flow/javascript/fom/FOM_WebContinuation.java cocoon/trunk/blocks/cocoon-scratchpad/cocoon-scratchpad-impl/src/main/java/org/apache/cocoon/components/flow/javascript/fom/AO_FOM_Cocoon.java cocoon/trunk/blocks/cocoon-scratchpad/cocoon-scratchpad-impl/src/main/java/org/apache/cocoon/components/flow/javascript/fom/AO_FOM_JavaScriptInterpreter.java cocoon/trunk/core/cocoon-sitemap/cocoon-sitemap-api/src/main/java/org/apache/cocoon/components/flow/WebContinuation.java cocoon/trunk/core/cocoon-sitemap/cocoon-sitemap-impl/src/main/java/org/apache/cocoon/components/flow/ContinuationsManagerImpl.java Modified: cocoon/trunk/blocks/cocoon-flowscript/cocoon-flowscript-impl/src/main/java/org/apache/cocoon/components/flow/javascript/fom/FOM_Cocoon.java URL: http://svn.apache.org/viewvc/cocoon/trunk/blocks/cocoon-flowscript/cocoon-flowscript-impl/src/main/java/org/apache/cocoon/components/flow/javascript/fom/FOM_Cocoon.java?rev=643699&r1=643698&r2=643699&view=diff ============================================================================== --- cocoon/trunk/blocks/cocoon-flowscript/cocoon-flowscript-impl/src/main/java/org/apache/cocoon/components/flow/javascript/fom/FOM_Cocoon.java (original) +++ cocoon/trunk/blocks/cocoon-flowscript/cocoon-flowscript-impl/src/main/java/org/apache/cocoon/components/flow/javascript/fom/FOM_Cocoon.java Tue Apr 1 20:44:59 2008 @@ -32,15 +32,12 @@ import org.apache.avalon.framework.context.Context; import org.apache.avalon.framework.service.ServiceManager; -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; -import org.springframework.web.context.WebApplicationContext; import org.apache.cocoon.components.ContextHelper; import org.apache.cocoon.components.LifecycleHelper; import org.apache.cocoon.components.flow.ContinuationsManager; -import org.apache.cocoon.components.flow.Interpreter.Argument; import org.apache.cocoon.components.flow.WebContinuation; +import org.apache.cocoon.components.flow.Interpreter.Argument; import org.apache.cocoon.configuration.Settings; import org.apache.cocoon.core.container.spring.avalon.AvalonUtils; import org.apache.cocoon.environment.ObjectModelHelper; @@ -51,6 +48,9 @@ import org.apache.cocoon.spring.configurator.WebAppContextUtils; import org.apache.cocoon.util.ClassUtils; +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; + import org.mozilla.javascript.JavaScriptException; import org.mozilla.javascript.NativeJavaClass; import org.mozilla.javascript.NativeJavaObject; @@ -61,6 +61,8 @@ import org.mozilla.javascript.Wrapper; import org.mozilla.javascript.continuations.Continuation; +import org.springframework.web.context.WebApplicationContext; + /** * Implementation of FOM (Flow Object Model). * @@ -99,6 +101,7 @@ this.lastContinuation = lastContinuation; if (lastContinuation != null) { fwk = new FOM_WebContinuation(lastContinuation); + fwk.setLogger(getLogger()); Scriptable scope = FOM_Cocoon.this.getParentScope(); fwk.setParentScope(scope); fwk.setPrototype(getClassPrototype(scope, fwk.getClassName())); @@ -687,7 +690,7 @@ return currentCall.avalonContext; } - private Log getLogger() { + protected Log getLogger() { return logger; } @@ -751,14 +754,16 @@ /** * Return this continuation if it is valid, or first valid parent */ - private FOM_WebContinuation findValidParent(FOM_WebContinuation wk) { + private FOM_WebContinuation findValidParent(final FOM_WebContinuation wk) { if (wk != null) { WebContinuation wc = wk.getWebContinuation(); while (wc != null && wc.disposed()) { wc = wc.getParentContinuation(); } if (wc != null) { - return new FOM_WebContinuation(wc); + FOM_WebContinuation parentWk = new FOM_WebContinuation(wc); + parentWk.setLogger(getLogger()); + return parentWk; } } @@ -808,6 +813,7 @@ getInterpreter().getInterpreterID(), null); FOM_WebContinuation result = new FOM_WebContinuation(wk); + result.setLogger(getLogger()); result.setParentScope(getParentScope()); result.setPrototype(getClassPrototype(getParentScope(), result.getClassName())); Modified: cocoon/trunk/blocks/cocoon-flowscript/cocoon-flowscript-impl/src/main/java/org/apache/cocoon/components/flow/javascript/fom/FOM_JavaScriptInterpreter.java URL: http://svn.apache.org/viewvc/cocoon/trunk/blocks/cocoon-flowscript/cocoon-flowscript-impl/src/main/java/org/apache/cocoon/components/flow/javascript/fom/FOM_JavaScriptInterpreter.java?rev=643699&r1=643698&r2=643699&view=diff ============================================================================== --- cocoon/trunk/blocks/cocoon-flowscript/cocoon-flowscript-impl/src/main/java/org/apache/cocoon/components/flow/javascript/fom/FOM_JavaScriptInterpreter.java (original) +++ cocoon/trunk/blocks/cocoon-flowscript/cocoon-flowscript-impl/src/main/java/org/apache/cocoon/components/flow/javascript/fom/FOM_JavaScriptInterpreter.java Tue Apr 1 20:44:59 2008 @@ -27,17 +27,12 @@ import java.util.ArrayList; import java.util.List; import java.util.Map; + import javax.servlet.http.HttpSession; import org.apache.avalon.framework.activity.Initializable; import org.apache.avalon.framework.configuration.Configuration; import org.apache.avalon.framework.configuration.ConfigurationException; -import org.apache.commons.jxpath.JXPathIntrospector; -import org.apache.commons.jxpath.ri.JXPathContextReferenceImpl; -import org.apache.excalibur.source.Source; -import org.apache.regexp.RE; -import org.apache.regexp.RECompiler; -import org.apache.regexp.REProgram; import org.apache.cocoon.ResourceNotFoundException; import org.apache.cocoon.components.flow.CompilingInterpreter; @@ -53,6 +48,15 @@ import org.apache.cocoon.environment.Redirector; import org.apache.cocoon.environment.Request; +import org.apache.commons.jxpath.JXPathIntrospector; +import org.apache.commons.jxpath.ri.JXPathContextReferenceImpl; + +import org.apache.excalibur.source.Source; + +import org.apache.regexp.RE; +import org.apache.regexp.RECompiler; +import org.apache.regexp.REProgram; + import org.mozilla.javascript.Context; import org.mozilla.javascript.ContextFactory; import org.mozilla.javascript.EcmaError; @@ -690,6 +694,7 @@ } cocoon.setParameters(parameters); FOM_WebContinuation fom_wk = new FOM_WebContinuation(wk); + fom_wk.setLogger(getLogger()); fom_wk.setParentScope(kScope); fom_wk.setPrototype(ScriptableObject.getClassPrototype(kScope, fom_wk.getClassName())); Modified: cocoon/trunk/blocks/cocoon-flowscript/cocoon-flowscript-impl/src/main/java/org/apache/cocoon/components/flow/javascript/fom/FOM_WebContinuation.java URL: http://svn.apache.org/viewvc/cocoon/trunk/blocks/cocoon-flowscript/cocoon-flowscript-impl/src/main/java/org/apache/cocoon/components/flow/javascript/fom/FOM_WebContinuation.java?rev=643699&r1=643698&r2=643699&view=diff ============================================================================== --- cocoon/trunk/blocks/cocoon-flowscript/cocoon-flowscript-impl/src/main/java/org/apache/cocoon/components/flow/javascript/fom/FOM_WebContinuation.java (original) +++ cocoon/trunk/blocks/cocoon-flowscript/cocoon-flowscript-impl/src/main/java/org/apache/cocoon/components/flow/javascript/fom/FOM_WebContinuation.java Tue Apr 1 20:44:59 2008 @@ -21,6 +21,7 @@ import org.apache.cocoon.components.flow.ContinuationsManager; import org.apache.cocoon.components.flow.WebContinuation; +import org.apache.commons.logging.Log; import org.mozilla.javascript.Context; import org.mozilla.javascript.Function; import org.mozilla.javascript.NativeArray; @@ -38,6 +39,7 @@ WebContinuation wk; + private Log logger; static class UserObject { boolean isBookmark; @@ -58,6 +60,10 @@ this.wk = wk; } + public void setLogger(Log logger) { + this.logger = logger; + } + // new FOM_WebContinuation([Continuation] continuation, // [FOM_WebContinuation] parent, // [Number] timeToLive) @@ -91,6 +97,7 @@ FOM_WebContinuation result; result = new FOM_WebContinuation(wk); + result.setLogger(cocoon.getLogger()); result.setParentScope(getTopLevelScope(scope)); result.setPrototype(getClassPrototype(scope, result.getClassName())); return result; @@ -136,6 +143,7 @@ } FOM_WebContinuation pwk = new FOM_WebContinuation(parent); + pwk.setLogger(logger); pwk.setParentScope(getParentScope()); pwk.setPrototype(getClassPrototype(getParentScope(), pwk.getClassName())); @@ -152,6 +160,7 @@ for (int i = 0; iter.hasNext(); i++) { WebContinuation child = (WebContinuation)iter.next(); FOM_WebContinuation cwk = new FOM_WebContinuation(child); + cwk.setLogger(logger); cwk.setParentScope(getParentScope()); cwk.setPrototype(getClassPrototype(getParentScope(), cwk.getClassName())); @@ -168,7 +177,9 @@ } public void jsFunction_display() { - wk.display(); + if (this.logger.isDebugEnabled()) { + this.logger.debug(wk.toString()); + } } public WebContinuation getWebContinuation() { @@ -236,6 +247,7 @@ } FOM_WebContinuation pwk = new FOM_WebContinuation(c); + pwk.setLogger(logger); pwk.setParentScope(getParentScope()); pwk.setPrototype(getClassPrototype(getParentScope(), pwk.getClassName())); return pwk; @@ -247,4 +259,5 @@ public String toString() { return "WC" + wk.getId(); } + } Modified: cocoon/trunk/blocks/cocoon-scratchpad/cocoon-scratchpad-impl/src/main/java/org/apache/cocoon/components/flow/javascript/fom/AO_FOM_Cocoon.java URL: http://svn.apache.org/viewvc/cocoon/trunk/blocks/cocoon-scratchpad/cocoon-scratchpad-impl/src/main/java/org/apache/cocoon/components/flow/javascript/fom/AO_FOM_Cocoon.java?rev=643699&r1=643698&r2=643699&view=diff ============================================================================== --- cocoon/trunk/blocks/cocoon-scratchpad/cocoon-scratchpad-impl/src/main/java/org/apache/cocoon/components/flow/javascript/fom/AO_FOM_Cocoon.java (original) +++ cocoon/trunk/blocks/cocoon-scratchpad/cocoon-scratchpad-impl/src/main/java/org/apache/cocoon/components/flow/javascript/fom/AO_FOM_Cocoon.java Tue Apr 1 20:44:59 2008 @@ -28,13 +28,11 @@ import org.apache.avalon.framework.context.Context; import org.apache.avalon.framework.logger.Logger; import org.apache.avalon.framework.service.ServiceManager; -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; import org.apache.cocoon.components.ContextHelper; import org.apache.cocoon.components.flow.ContinuationsManager; -import org.apache.cocoon.components.flow.Interpreter.Argument; import org.apache.cocoon.components.flow.WebContinuation; +import org.apache.cocoon.components.flow.Interpreter.Argument; import org.apache.cocoon.environment.Cookie; import org.apache.cocoon.environment.ObjectModelHelper; import org.apache.cocoon.environment.Redirector; @@ -42,6 +40,9 @@ import org.apache.cocoon.environment.Response; import org.apache.cocoon.environment.Session; +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; + import org.mozilla.javascript.JavaScriptException; import org.mozilla.javascript.Script; import org.mozilla.javascript.Scriptable; @@ -132,6 +133,7 @@ FOM_WebContinuation fom_wk = new FOM_WebContinuation(wk); + fom_wk.setLogger(logger); fom_wk.setParentScope(getParentScope()); fom_wk.setPrototype(getClassPrototype(getParentScope(), fom_wk.getClassName())); @@ -141,6 +143,7 @@ FOM_WebContinuation result = null; if (wk != null) { result = new FOM_WebContinuation(wk); + result.setLogger(logger); result.setParentScope(getParentScope()); result.setPrototype(getClassPrototype(getParentScope(), result.getClassName())); @@ -930,6 +933,7 @@ interpreter.getInterpreterID(), null); FOM_WebContinuation result = new FOM_WebContinuation(wk); + result.setLogger(logger); result.setParentScope(getParentScope()); result.setPrototype(getClassPrototype(getParentScope(), result.getClassName())); Modified: cocoon/trunk/blocks/cocoon-scratchpad/cocoon-scratchpad-impl/src/main/java/org/apache/cocoon/components/flow/javascript/fom/AO_FOM_JavaScriptInterpreter.java URL: http://svn.apache.org/viewvc/cocoon/trunk/blocks/cocoon-scratchpad/cocoon-scratchpad-impl/src/main/java/org/apache/cocoon/components/flow/javascript/fom/AO_FOM_JavaScriptInterpreter.java?rev=643699&r1=643698&r2=643699&view=diff ============================================================================== --- cocoon/trunk/blocks/cocoon-scratchpad/cocoon-scratchpad-impl/src/main/java/org/apache/cocoon/components/flow/javascript/fom/AO_FOM_JavaScriptInterpreter.java (original) +++ cocoon/trunk/blocks/cocoon-scratchpad/cocoon-scratchpad-impl/src/main/java/org/apache/cocoon/components/flow/javascript/fom/AO_FOM_JavaScriptInterpreter.java Tue Apr 1 20:44:59 2008 @@ -25,6 +25,7 @@ import java.util.HashMap; import java.util.List; import java.util.Map; + import javax.servlet.http.HttpSession; import org.apache.avalon.framework.CascadingRuntimeException; @@ -35,10 +36,6 @@ import org.apache.avalon.framework.service.ServiceException; import org.apache.avalon.framework.service.ServiceManager; import org.apache.avalon.framework.service.Serviceable; -import org.apache.commons.jxpath.JXPathIntrospector; -import org.apache.commons.jxpath.ri.JXPathContextReferenceImpl; -import org.apache.excalibur.source.Source; -import org.apache.excalibur.source.SourceResolver; import org.apache.cocoon.ProcessingException; import org.apache.cocoon.ResourceNotFoundException; @@ -55,6 +52,12 @@ import org.apache.cocoon.environment.Redirector; import org.apache.cocoon.environment.Request; +import org.apache.commons.jxpath.JXPathIntrospector; +import org.apache.commons.jxpath.ri.JXPathContextReferenceImpl; + +import org.apache.excalibur.source.Source; +import org.apache.excalibur.source.SourceResolver; + import org.mozilla.javascript.Context; import org.mozilla.javascript.EcmaError; import org.mozilla.javascript.EvaluatorException; @@ -685,6 +688,7 @@ cocoon.setParameters(parameters); FOM_WebContinuation fom_wk = new FOM_WebContinuation(wk); + fom_wk.setLogger(getLogger()); fom_wk.setParentScope(kScope); fom_wk.setPrototype(ScriptableObject.getClassPrototype(kScope, fom_wk.getClassName())); Modified: cocoon/trunk/core/cocoon-sitemap/cocoon-sitemap-api/src/main/java/org/apache/cocoon/components/flow/WebContinuation.java URL: http://svn.apache.org/viewvc/cocoon/trunk/core/cocoon-sitemap/cocoon-sitemap-api/src/main/java/org/apache/cocoon/components/flow/WebContinuation.java?rev=643699&r1=643698&r2=643699&view=diff ============================================================================== --- cocoon/trunk/core/cocoon-sitemap/cocoon-sitemap-api/src/main/java/org/apache/cocoon/components/flow/WebContinuation.java (original) +++ cocoon/trunk/core/cocoon-sitemap/cocoon-sitemap-api/src/main/java/org/apache/cocoon/components/flow/WebContinuation.java Tue Apr 1 20:44:59 2008 @@ -25,7 +25,6 @@ import org.apache.commons.collections.iterators.IteratorEnumeration; import org.apache.commons.lang.StringUtils; -import org.apache.commons.logging.Log; /** * Representation of continuations in a Web environment. @@ -45,15 +44,6 @@ public class WebContinuation implements Comparable { /** - * Logger to be used in {@link #display()}. - * - *

Not using here org.apache.cocoon.util.AbstractLogEnabled - * because there is no dependency on cocoon-util, and want to avoid - * calling LogFactory for each continuation. - */ - private Log logger; - - /** * The continuation this object represents. */ protected Object continuation; @@ -151,14 +141,6 @@ } } - public final Log getLogger() { - return this.logger; - } - - public void setLogger(Log logger) { - this.logger = logger; - } - /** * Get an attribute of this continuation * @@ -371,56 +353,6 @@ } /** - * Debugging method. - * - *

Assumes the receiving instance as the root of a tree and - * displays the tree of continuations. - */ - public void display() { - getLogger().debug("\nWK: Tree" + display(0)); - } - - /** - * Debugging method. - * - *

Displays the receiving instance as if it is at the - * indent depth in the tree of continuations. Each - * level is indented 2 spaces. - * - * @param depth an int value - */ - protected String display(int depth) { - StringBuffer tree = new StringBuffer("\n"); - for (int i = 0; i < depth; i++) { - tree.append(" "); - } - - tree.append("WK: WebContinuation ") - .append(id) - .append(" ExpireTime ["); - - if ((lastAccessTime + timeToLive) < System.currentTimeMillis()) { - tree.append("Expired"); - } else { - tree.append(lastAccessTime + timeToLive); - } - - tree.append("]"); - - // REVISIT: is this needed for some reason? - // System.out.print(spaces); System.out.println("WebContinuation " + id); - - int size = children.size(); - depth++; - - for (int i = 0; i < size; i++) { - tree.append(((WebContinuation) children.get(i)).display(depth)); - } - - return tree.toString(); - } - - /** * Update the continuation in the */ protected void updateLastAccessTime() { @@ -467,4 +399,55 @@ getParentContinuation().getChildren().remove(this); } } + + /** + * Debugging method. + * + *

Assumes the receiving instance as the root of a tree and + * displays the tree of continuations. + */ + public String toString() { + return "\nWK: Tree" + display(0); + } + + /** + * Debugging method. + * + *

Displays the receiving instance as if it is at the + * indent depth in the tree of continuations. Each + * level is indented 2 spaces. + * + * @param depth an int value + */ + protected String display(int depth) { + StringBuffer tree = new StringBuffer("\n"); + for (int i = 0; i < depth; i++) { + tree.append(" "); + } + + tree.append("WK: WebContinuation ") + .append(id) + .append(" ExpireTime ["); + + if (hasExpired()) { + tree.append("Expired"); + } else { + tree.append(lastAccessTime + timeToLive); + } + + tree.append("]"); + + // REVISIT: is this needed for some reason? + // System.out.print(spaces); System.out.println("WebContinuation " + id); + + int size = children.size(); + depth++; + + for (int i = 0; i < size; i++) { + tree.append(((WebContinuation) children.get(i)).display(depth)); + } + + return tree.toString(); + } + } Modified: cocoon/trunk/core/cocoon-sitemap/cocoon-sitemap-impl/src/main/java/org/apache/cocoon/components/flow/ContinuationsManagerImpl.java URL: http://svn.apache.org/viewvc/cocoon/trunk/core/cocoon-sitemap/cocoon-sitemap-impl/src/main/java/org/apache/cocoon/components/flow/ContinuationsManagerImpl.java?rev=643699&r1=643698&r2=643699&view=diff ============================================================================== --- cocoon/trunk/core/cocoon-sitemap/cocoon-sitemap-impl/src/main/java/org/apache/cocoon/components/flow/ContinuationsManagerImpl.java (original) +++ cocoon/trunk/core/cocoon-sitemap/cocoon-sitemap-impl/src/main/java/org/apache/cocoon/components/flow/ContinuationsManagerImpl.java Tue Apr 1 20:44:59 2008 @@ -310,7 +310,6 @@ } } - wk.setLogger(getLogger()); return wk; } @@ -431,7 +430,7 @@ synchronized (this) { final Iterator i = forest.iterator(); while (i.hasNext()) { - ((WebContinuation) i.next()).display(); + getLogger().debug(i.next().toString()); } } }