Return-Path: Delivered-To: apmail-logging-log4j-dev-archive@www.apache.org Received: (qmail 22275 invoked from network); 2 Jan 2006 08:05:32 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (209.237.227.199) by minotaur.apache.org with SMTP; 2 Jan 2006 08:05:32 -0000 Received: (qmail 292 invoked by uid 500); 2 Jan 2006 08:05:32 -0000 Delivered-To: apmail-logging-log4j-dev-archive@logging.apache.org Received: (qmail 99943 invoked by uid 500); 2 Jan 2006 08:05:30 -0000 Mailing-List: contact log4j-dev-help@logging.apache.org; run by ezmlm Precedence: bulk List-Unsubscribe: List-Help: List-Post: List-Id: "Log4J Developers List" Reply-To: "Log4J Developers List" Delivered-To: mailing list log4j-dev@logging.apache.org Received: (qmail 99932 invoked by uid 500); 2 Jan 2006 08:05:30 -0000 Received: (qmail 99929 invoked by uid 99); 2 Jan 2006 08:05:30 -0000 Received: from asf.osuosl.org (HELO asf.osuosl.org) (140.211.166.49) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 02 Jan 2006 00:05:30 -0800 X-ASF-Spam-Status: No, hits=-9.4 required=10.0 tests=ALL_TRUSTED,NO_REAL_NAME X-Spam-Check-By: apache.org Received: from [209.237.227.194] (HELO minotaur.apache.org) (209.237.227.194) by apache.org (qpsmtpd/0.29) with SMTP; Mon, 02 Jan 2006 00:05:29 -0800 Received: (qmail 22223 invoked by uid 65534); 2 Jan 2006 08:05:09 -0000 Message-ID: <20060102080509.22222.qmail@minotaur.apache.org> Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r365312 - in /logging/chainsaw/trunk/src/java/org/apache/log4j/chainsaw: ChainsawAppenderHandler.java LogUI.java help/Tutorial.java receivers/ReceiversPanel.java receivers/ReceiversTreeModel.java Date: Mon, 02 Jan 2006 08:05:08 -0000 To: chainsaw-cvs@logging.apache.org From: carnold@apache.org X-Mailer: svnmailer-1.0.5 X-Virus-Checked: Checked by ClamAV on apache.org X-Spam-Rating: minotaur.apache.org 1.6.2 0/1000/N Author: carnold Date: Mon Jan 2 00:05:04 2006 New Revision: 365312 URL: http://svn.apache.org/viewcvs?rev=365312&view=rev Log: Bug 35452: Chainsaw fixes for LoggerRepository work Modified: logging/chainsaw/trunk/src/java/org/apache/log4j/chainsaw/ChainsawAppenderHandler.java logging/chainsaw/trunk/src/java/org/apache/log4j/chainsaw/LogUI.java logging/chainsaw/trunk/src/java/org/apache/log4j/chainsaw/help/Tutorial.java logging/chainsaw/trunk/src/java/org/apache/log4j/chainsaw/receivers/ReceiversPanel.java logging/chainsaw/trunk/src/java/org/apache/log4j/chainsaw/receivers/ReceiversTreeModel.java Modified: logging/chainsaw/trunk/src/java/org/apache/log4j/chainsaw/ChainsawAppenderHandler.java URL: http://svn.apache.org/viewcvs/logging/chainsaw/trunk/src/java/org/apache/log4j/chainsaw/ChainsawAppenderHandler.java?rev=365312&r1=365311&r2=365312&view=diff ============================================================================== --- logging/chainsaw/trunk/src/java/org/apache/log4j/chainsaw/ChainsawAppenderHandler.java (original) +++ logging/chainsaw/trunk/src/java/org/apache/log4j/chainsaw/ChainsawAppenderHandler.java Mon Jan 2 00:05:04 2006 @@ -1,5 +1,5 @@ /* - * Copyright 1999,2004 The Apache Software Foundation. + * Copyright 1999,2006 The Apache Software Foundation. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -30,6 +30,7 @@ import org.apache.log4j.rule.ExpressionRule; import org.apache.log4j.rule.Rule; import org.apache.log4j.spi.LoggingEvent; +import org.apache.log4j.spi.LoggerRepositoryEx; import org.apache.log4j.spi.LoggingEventFieldResolver; /** @@ -145,7 +146,7 @@ }); LogManager.getRootLogger().addAppender(handler); SocketReceiver receiver = new SocketReceiver(4445); - LogManager.getLoggerRepository().getPluginRegistry().addPlugin(receiver); + ((LoggerRepositoryEx) LogManager.getLoggerRepository()).getPluginRegistry().addPlugin(receiver); receiver.activateOptions(); Thread.sleep(60000); } Modified: logging/chainsaw/trunk/src/java/org/apache/log4j/chainsaw/LogUI.java URL: http://svn.apache.org/viewcvs/logging/chainsaw/trunk/src/java/org/apache/log4j/chainsaw/LogUI.java?rev=365312&r1=365311&r2=365312&view=diff ============================================================================== --- logging/chainsaw/trunk/src/java/org/apache/log4j/chainsaw/LogUI.java (original) +++ logging/chainsaw/trunk/src/java/org/apache/log4j/chainsaw/LogUI.java Mon Jan 2 00:05:04 2006 @@ -1,5 +1,5 @@ /* - * Copyright 1999,2004 The Apache Software Foundation. + * Copyright 1999,2006 The Apache Software Foundation. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -114,6 +114,8 @@ import org.apache.log4j.rule.Rule; import org.apache.log4j.spi.Decoder; import org.apache.log4j.spi.LoggingEvent; +import org.apache.log4j.spi.LoggerRepository; +import org.apache.log4j.spi.LoggerRepositoryEx; import org.apache.log4j.xml.XMLDecoder; @@ -308,8 +310,12 @@ //configuration initialized here logUI.ensureChainsawAppenderHandlerAdded(); logger = LogManager.getLogger(LogUI.class); - logger.getLoggerRepository().setProperty(Constants.APPLICATION_KEY,"log"); - logger.getLoggerRepository().setProperty(Constants.HOSTNAME_KEY,"chainsaw"); + LoggerRepository repo = logger.getLoggerRepository(); + if (repo instanceof LoggerRepositoryEx) { + LoggerRepositoryEx repox = (LoggerRepositoryEx) repo; + repox.setProperty(Constants.APPLICATION_KEY,"log"); + repox.setProperty(Constants.HOSTNAME_KEY,"chainsaw"); + } String config = model.getConfigurationURL(); if(config!=null && (!(config.trim().equals("")))) { @@ -595,7 +601,10 @@ * table columns, and sets itself viewable. */ public void activateViewer() { - this.pluginRegistry = LogManager.getLoggerRepository().getPluginRegistry(); + LoggerRepository repo = LogManager.getLoggerRepository(); + if (repo instanceof LoggerRepositoryEx) { + this.pluginRegistry = ((LoggerRepositoryEx) repo).getPluginRegistry(); + } initGUI(); initPrefModelListeners(); @@ -924,13 +933,16 @@ new Thread( new Runnable() { public void run() { - PluginRegistry pluginRegistry = LogManager.getLoggerRepository().getPluginRegistry(); - List list = pluginRegistry.getPlugins(Generator.class); - - for (Iterator iter = list.iterator(); iter.hasNext();) { - Plugin plugin = (Plugin) iter.next(); - pluginRegistry.stopPlugin(plugin.getName()); - } + LoggerRepository repo = LogManager.getLoggerRepository(); + if (repo instanceof LoggerRepositoryEx) { + PluginRegistry pluginRegistry = ((LoggerRepositoryEx) repo).getPluginRegistry(); + List list = pluginRegistry.getPlugins(Generator.class); + + for (Iterator iter = list.iterator(); iter.hasNext();) { + Plugin plugin = (Plugin) iter.next(); + pluginRegistry.stopPlugin(plugin.getName()); + } + } } }).start(); setEnabled(false); Modified: logging/chainsaw/trunk/src/java/org/apache/log4j/chainsaw/help/Tutorial.java URL: http://svn.apache.org/viewcvs/logging/chainsaw/trunk/src/java/org/apache/log4j/chainsaw/help/Tutorial.java?rev=365312&r1=365311&r2=365312&view=diff ============================================================================== --- logging/chainsaw/trunk/src/java/org/apache/log4j/chainsaw/help/Tutorial.java (original) +++ logging/chainsaw/trunk/src/java/org/apache/log4j/chainsaw/help/Tutorial.java Mon Jan 2 00:05:04 2006 @@ -1,5 +1,5 @@ /* - * Copyright 1999,2004 The Apache Software Foundation. + * Copyright 1999,2006 The Apache Software Foundation. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -20,7 +20,8 @@ import org.apache.log4j.chainsaw.Generator; import org.apache.log4j.plugins.Plugin; import org.apache.log4j.plugins.PluginRegistry; - +import org.apache.log4j.spi.LoggerRepository; +import org.apache.log4j.spi.LoggerRepositoryEx; /** * A runnable element that installs into the Log4j environment some fake Receivers @@ -37,13 +38,16 @@ Plugin p2 = new Generator("Generator 2"); Plugin p3 = new Generator("Generator 3"); - PluginRegistry pluginRegistry = LogManager.getLoggerRepository().getPluginRegistry(); - pluginRegistry.addPlugin(p1); - p1.activateOptions(); - pluginRegistry.addPlugin(p2); - p2.activateOptions(); - pluginRegistry.addPlugin(p3); - p3.activateOptions(); + LoggerRepository repo = LogManager.getLoggerRepository(); + if (repo instanceof LoggerRepositoryEx) { + PluginRegistry pluginRegistry = ((LoggerRepositoryEx) repo).getPluginRegistry(); + pluginRegistry.addPlugin(p1); + p1.activateOptions(); + pluginRegistry.addPlugin(p2); + p2.activateOptions(); + pluginRegistry.addPlugin(p3); + p3.activateOptions(); + } } } Modified: logging/chainsaw/trunk/src/java/org/apache/log4j/chainsaw/receivers/ReceiversPanel.java URL: http://svn.apache.org/viewcvs/logging/chainsaw/trunk/src/java/org/apache/log4j/chainsaw/receivers/ReceiversPanel.java?rev=365312&r1=365311&r2=365312&view=diff ============================================================================== --- logging/chainsaw/trunk/src/java/org/apache/log4j/chainsaw/receivers/ReceiversPanel.java (original) +++ logging/chainsaw/trunk/src/java/org/apache/log4j/chainsaw/receivers/ReceiversPanel.java Mon Jan 2 00:05:04 2006 @@ -1,5 +1,5 @@ /* - * Copyright 1999,2004 The Apache Software Foundation. + * Copyright 1999,2006 The Apache Software Foundation. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -70,6 +70,8 @@ import org.apache.log4j.chainsaw.messages.MessageCenter; import org.apache.log4j.net.SocketNodeEventListener; import org.apache.log4j.net.SocketReceiver; +import org.apache.log4j.spi.LoggerRepository; +import org.apache.log4j.spi.LoggerRepositoryEx; import org.apache.log4j.plugins.Pauseable; import org.apache.log4j.plugins.Plugin; import org.apache.log4j.plugins.PluginRegistry; @@ -106,10 +108,15 @@ public ReceiversPanel() { super(new BorderLayout()); - pluginRegistry = LogManager.getLoggerRepository().getPluginRegistry(); + LoggerRepository repo = LogManager.getLoggerRepository(); final ReceiversTreeModel model = new ReceiversTreeModel(); + if (repo instanceof LoggerRepositoryEx) { + pluginRegistry = ((LoggerRepositoryEx) repo).getPluginRegistry(); + pluginRegistry.addPluginListener(model); + } else { + pluginRegistry = null; + } - pluginRegistry.addPluginListener(model); receiversTree.setModel(model); receiversTree.setExpandsSelectedPaths(true); @@ -362,13 +369,15 @@ /** * add this listener to all SocketReceivers */ - List socketReceivers = - pluginRegistry.getPlugins(SocketReceiver.class); - - for (Iterator iter = socketReceivers.iterator(); iter.hasNext();) { - SocketReceiver element = (SocketReceiver) iter.next(); - element.addSocketNodeEventListener(listener); - } + if (pluginRegistry == null) { + List socketReceivers = + pluginRegistry.getPlugins(SocketReceiver.class); + + for (Iterator iter = socketReceivers.iterator(); iter.hasNext();) { + SocketReceiver element = (SocketReceiver) iter.next(); + element.addSocketNodeEventListener(listener); + } + } } protected ReceiversTreeModel getReceiverTreeModel() { Modified: logging/chainsaw/trunk/src/java/org/apache/log4j/chainsaw/receivers/ReceiversTreeModel.java URL: http://svn.apache.org/viewcvs/logging/chainsaw/trunk/src/java/org/apache/log4j/chainsaw/receivers/ReceiversTreeModel.java?rev=365312&r1=365311&r2=365312&view=diff ============================================================================== --- logging/chainsaw/trunk/src/java/org/apache/log4j/chainsaw/receivers/ReceiversTreeModel.java (original) +++ logging/chainsaw/trunk/src/java/org/apache/log4j/chainsaw/receivers/ReceiversTreeModel.java Mon Jan 2 00:05:04 2006 @@ -1,5 +1,5 @@ /* - * Copyright 1999,2004 The Apache Software Foundation. + * Copyright 1999,2006 The Apache Software Foundation. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -19,6 +19,7 @@ import java.beans.PropertyChangeEvent; import java.beans.PropertyChangeListener; import java.util.Collection; +import java.util.Vector; import java.util.Enumeration; import java.util.Iterator; @@ -29,6 +30,8 @@ import org.apache.log4j.LogManager; import org.apache.log4j.Logger; import org.apache.log4j.net.SocketReceiver; +import org.apache.log4j.spi.LoggerRepository; +import org.apache.log4j.spi.LoggerRepositoryEx; import org.apache.log4j.plugins.Plugin; import org.apache.log4j.plugins.PluginEvent; import org.apache.log4j.plugins.PluginListener; @@ -64,7 +67,13 @@ public final synchronized ReceiversTreeModel refresh() { RootNode.removeAllChildren(); - Collection receivers = LogManager.getLoggerRepository().getPluginRegistry().getPlugins(Receiver.class); + LoggerRepository repo = LogManager.getLoggerRepository(); + Collection receivers; + if (repo instanceof LoggerRepositoryEx) { + receivers = ((LoggerRepositoryEx) repo).getPluginRegistry().getPlugins(Receiver.class); + } else { + receivers = new Vector(); + } updateRootDisplay(); --------------------------------------------------------------------- To unsubscribe, e-mail: log4j-dev-unsubscribe@logging.apache.org For additional commands, e-mail: log4j-dev-help@logging.apache.org