Return-Path: Delivered-To: apmail-cocoon-cvs-archive@www.apache.org Received: (qmail 51695 invoked from network); 20 Mar 2005 21:26:17 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (209.237.227.199) by minotaur.apache.org with SMTP; 20 Mar 2005 21:26:17 -0000 Received: (qmail 93715 invoked by uid 500); 20 Mar 2005 21:26:16 -0000 Delivered-To: apmail-cocoon-cvs-archive@cocoon.apache.org Received: (qmail 93662 invoked by uid 500); 20 Mar 2005 21:26:16 -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: Delivered-To: mailing list cvs@cocoon.apache.org Received: (qmail 93648 invoked by uid 99); 20 Mar 2005 21:26:15 -0000 X-ASF-Spam-Status: No, hits=-9.8 required=10.0 tests=ALL_TRUSTED,NO_REAL_NAME X-Spam-Check-By: apache.org Received: from minotaur.apache.org (HELO minotaur.apache.org) (209.237.227.194) by apache.org (qpsmtpd/0.28) with SMTP; Sun, 20 Mar 2005 13:26:15 -0800 Received: (qmail 10957 invoked by uid 65534); 20 Mar 2005 19:39:31 -0000 Message-ID: <20050320193931.10956.qmail@minotaur.apache.org> Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-Mailer: svnmailer-1.0.0-dev Date: Sun, 20 Mar 2005 19:39:31 -0000 Subject: svn commit: r158345 - in cocoon/trunk/src: core/java/org/apache/cocoon/core/Core.java core/java/org/apache/cocoon/core/CoreUtil.java java/org/apache/cocoon/servlet/CocoonServlet.java To: cvs@cocoon.apache.org From: cziegeler@apache.org X-Virus-Checked: Checked X-Spam-Rating: minotaur.apache.org 1.6.2 0/1000/N Author: cziegeler Date: Sun Mar 20 11:39:31 2005 New Revision: 158345 URL: http://svn.apache.org/viewcvs?view=3Drev&rev=3D158345 Log: Add logging code Modified: cocoon/trunk/src/core/java/org/apache/cocoon/core/Core.java cocoon/trunk/src/core/java/org/apache/cocoon/core/CoreUtil.java cocoon/trunk/src/java/org/apache/cocoon/servlet/CocoonServlet.java Modified: cocoon/trunk/src/core/java/org/apache/cocoon/core/Core.java URL: http://svn.apache.org/viewcvs/cocoon/trunk/src/core/java/org/apache/co= coon/core/Core.java?view=3Ddiff&r1=3D158344&r2=3D158345 =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D --- cocoon/trunk/src/core/java/org/apache/cocoon/core/Core.java (original) +++ cocoon/trunk/src/core/java/org/apache/cocoon/core/Core.java Sun Mar 20 = 11:39:31 2005 @@ -29,8 +29,10 @@ import org.apache.avalon.framework.context.Context; import org.apache.avalon.framework.context.ContextException; import org.apache.avalon.framework.context.Contextualizable; +import org.apache.avalon.framework.context.DefaultContext; import org.apache.cocoon.Constants; import org.apache.cocoon.configuration.Settings; +import org.apache.log.LogTarget; =20 /** * This is the core Cocoon component. @@ -228,12 +230,15 @@ InputStream getInputStream(String path); =20 void configure(Settings settings); - =20 + void configureLoggingContext(DefaultContext context); + ClassLoader getInitClassLoader(); =20 org.apache.cocoon.environment.Context getEnvironmentContext(); =20 String getContextPath(); + =20 + LogTarget getDefaultLogTarget(); } =20 } Modified: cocoon/trunk/src/core/java/org/apache/cocoon/core/CoreUtil.java URL: http://svn.apache.org/viewcvs/cocoon/trunk/src/core/java/org/apache/co= coon/core/CoreUtil.java?view=3Ddiff&r1=3D158344&r2=3D158345 =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D --- cocoon/trunk/src/core/java/org/apache/cocoon/core/CoreUtil.java (origin= al) +++ cocoon/trunk/src/core/java/org/apache/cocoon/core/CoreUtil.java Sun Mar= 20 11:39:31 2005 @@ -20,6 +20,7 @@ import java.lang.reflect.Constructor; import java.net.MalformedURLException; =20 +import org.apache.avalon.excalibur.logger.LoggerManager; import org.apache.avalon.framework.container.ContainerUtil; import org.apache.avalon.framework.context.DefaultContext; import org.apache.avalon.framework.logger.Logger; @@ -45,6 +46,9 @@ /** The settings */ protected final Settings settings; =20 + private Logger log; + private LoggerManager loggerManager; + public CoreUtil(Core.BootstrapEnvironment e)=20 throws Exception { this.env =3D e; @@ -142,16 +146,25 @@ // we simply ignore this //} =20 - // TODO create logger - final Logger logger =3D null; + // Init logger + initLogger(); + if (this.log.isDebugEnabled()) { + this.log.debug(this.settings.toString()); + this.log.debug("getRealPath for /: " + this.env.getContextPath= ()); + if ( this.env.getContextPath() =3D=3D null ) { =20 + this.log.debug("getResource for /WEB-INF: " + debugPathOne= ); + this.log.debug("Path for Root: " + debugPathTwo); + } + } + =20 // Output some debug info - if (logger.isDebugEnabled()) { - logger.debug("Context URL: " + contextURL); + if (this.log.isDebugEnabled()) { + this.log.debug("Context URL: " + contextURL); if (workDirParam !=3D null) { - logger.debug("Using work-directory " + workDir); + this.log.debug("Using work-directory " + workDir); } else { - logger.debug("Using default work-directory " + workDir); + this.log.debug("Using default work-directory " + workDir); } } =20 @@ -171,13 +184,13 @@ uploadDir =3D new File(env.getContextPath(), uploadDir= Param); } } - if (logger.isDebugEnabled()) { - logger.debug("Using upload-directory " + uploadDir); + if (this.log.isDebugEnabled()) { + this.log.debug("Using upload-directory " + uploadDir); } } else { uploadDir =3D new File(workDir, "upload-dir" + File.separator); - if (logger.isDebugEnabled()) { - logger.debug("Using default upload-directory " + uploadDir= ); + if (this.log.isDebugEnabled()) { + this.log.debug("Using default upload-directory " + uploadD= ir); } } uploadDir.mkdirs(); @@ -200,8 +213,8 @@ cacheDir =3D new File(env.getContextPath(), cacheDirPa= ram); } } - if (logger.isDebugEnabled()) { - logger.debug("Using cache-directory " + cacheDir); + if (this.log.isDebugEnabled()) { + this.log.debug("Using cache-directory " + cacheDir); } } else { cacheDir =3D new File(workDir, "cache-dir" + File.separator); @@ -209,8 +222,8 @@ if (parent !=3D null) { parent.mkdirs(); } - if (logger.isDebugEnabled()) { - logger.debug("cache-directory was not set - defaulting to = " + cacheDir); + if (this.log.isDebugEnabled()) { + this.log.debug("cache-directory was not set - defaulting t= o " + cacheDir); } } cacheDir.mkdirs(); @@ -262,6 +275,24 @@ } } return parentServiceManager; + } + + protected void initLogger() { + final DefaultContext subcontext =3D new DefaultContext(this.appCon= text); + subcontext.put("context-work", new File(this.settings.getWorkDirec= tory())); + if (this.env.getContextPath() =3D=3D null) { + File logSCDir =3D new File(this.settings.getWorkDirectory(), "= log"); + logSCDir.mkdirs(); + subcontext.put("context-root", logSCDir.toString()); + } else { + subcontext.put("context-root", this.env.getContextPath()); + } + this.env.configureLoggingContext(subcontext); + + // FIXME - we can move the logginghelper code into this class + //LoggingHelper lh =3D new LoggingHelper(this.settings, this.env.g= etDefaultLogTarget(), subcontext); + //this.loggerManager =3D lh.getLoggerManager(); + //this.log =3D lh.getLogger(); } =20 public static final class RootServiceManager implements ServiceManager= { Modified: cocoon/trunk/src/java/org/apache/cocoon/servlet/CocoonServlet.java URL: http://svn.apache.org/viewcvs/cocoon/trunk/src/java/org/apache/cocoon/= servlet/CocoonServlet.java?view=3Ddiff&r1=3D158344&r2=3D158345 =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D --- cocoon/trunk/src/java/org/apache/cocoon/servlet/CocoonServlet.java (ori= ginal) +++ cocoon/trunk/src/java/org/apache/cocoon/servlet/CocoonServlet.java Sun = Mar 20 11:39:31 2005 @@ -71,6 +71,7 @@ import org.apache.cocoon.util.log.CocoonLogFormatter; import org.apache.commons.lang.SystemUtils; import org.apache.log.ContextMap; +import org.apache.log.LogTarget; import org.apache.log.output.ServletOutputLogTarget; =20 /** @@ -116,7 +117,7 @@ protected Cocoon cocoon; =20 /** - * Holds exception happened during initialization (if any) + * Holds exception happened during iialization (if any) */ protected Exception exception; =20 @@ -1362,6 +1363,25 @@ */ public String getContextPath() { return this.contextPath; + } + =20 + =20 + /** + * @see org.apache.cocoon.core.Core.BootstrapEnvironment#getDefaul= tLogTarget() + */ + public LogTarget getDefaultLogTarget() { + final CocoonLogFormatter formatter =3D new CocoonLogFormatter(= ); + formatter.setFormat("%7.7{priority} %{time} [%8.8{category}]= " + + "(%{uri}) %{thread}/%{class:short}: %{mess= age}\\n%{throwable}"); + return new ServletOutputLogTarget(this.config.getServletContex= t(), formatter); + =20 + } + + /** + * @see org.apache.cocoon.core.Core.BootstrapEnvironment#configure= LoggingContext(org.apache.avalon.framework.context.DefaultContext) + */ + public void configureLoggingContext(DefaultContext context) { + context.put("servlet-context", this.config.getServletContext()= ); } } =20