svn commit: r1289 - in logback/trunk/logback-classic/src/main/java/ch/qos/logback/classic: jmx selector

Author: seb Date: Mon Jan 29 18:54:41 2007 New Revision: 1289 Modified: logback/trunk/logback-classic/src/main/java/ch/qos/logback/classic/jmx/Configurator.java logback/trunk/logback-classic/src/main/java/ch/qos/logback/classic/jmx/ConfiguratorMBean.java logback/trunk/logback-classic/src/main/java/ch/qos/logback/classic/selector/ContextJNDISelector.java logback/trunk/logback-classic/src/main/java/ch/qos/logback/classic/selector/ContextSelector.java logback/trunk/logback-classic/src/main/java/ch/qos/logback/classic/selector/DefaultContextSelector.java Log: JMX Configurator now displays a list of Status objects ContextSelector implementations now also work as a registry. One can get a context based on its name, or get the names of all registered contexts. Modified: logback/trunk/logback-classic/src/main/java/ch/qos/logback/classic/jmx/Configurator.java ============================================================================== --- logback/trunk/logback-classic/src/main/java/ch/qos/logback/classic/jmx/Configurator.java (original) +++ logback/trunk/logback-classic/src/main/java/ch/qos/logback/classic/jmx/Configurator.java Mon Jan 29 18:54:41 2007 @@ -1,6 +1,8 @@ package ch.qos.logback.classic.jmx; import java.net.URL; +import java.util.ArrayList; +import java.util.Iterator; import java.util.List; import ch.qos.logback.classic.Level; @@ -10,6 +12,7 @@ import ch.qos.logback.classic.util.ContextInitializer; import ch.qos.logback.core.joran.spi.JoranException; import ch.qos.logback.core.spi.ContextAwareBase; +import ch.qos.logback.core.status.Status; /** * A class that provides access to logback components via @@ -119,6 +122,13 @@ return lc.getLoggerList(); } - + public List<Status> getStatuses() { + List<Status> list = new ArrayList<Status>(); + Iterator<Status> it = context.getStatusManager().iterator(); + while(it.hasNext()) { + list.add(it.next()); + } + return list; + } } Modified: logback/trunk/logback-classic/src/main/java/ch/qos/logback/classic/jmx/ConfiguratorMBean.java ============================================================================== --- logback/trunk/logback-classic/src/main/java/ch/qos/logback/classic/jmx/ConfiguratorMBean.java (original) +++ logback/trunk/logback-classic/src/main/java/ch/qos/logback/classic/jmx/ConfiguratorMBean.java Mon Jan 29 18:54:41 2007 @@ -5,6 +5,7 @@ import ch.qos.logback.classic.Logger; import ch.qos.logback.core.joran.spi.JoranException; +import ch.qos.logback.core.status.Status; public interface ConfiguratorMBean { @@ -21,4 +22,6 @@ public String getLoggerEffectiveLevel(String loggerName); public List<Logger> getLoggerList(); + + public List<Status> getStatuses(); } Modified: logback/trunk/logback-classic/src/main/java/ch/qos/logback/classic/selector/ContextJNDISelector.java ============================================================================== --- logback/trunk/logback-classic/src/main/java/ch/qos/logback/classic/selector/ContextJNDISelector.java (original) +++ logback/trunk/logback-classic/src/main/java/ch/qos/logback/classic/selector/ContextJNDISelector.java Mon Jan 29 18:54:41 2007 @@ -4,8 +4,10 @@ import static ch.qos.logback.classic.ClassicGlobal.JNDI_CONTEXT_NAME; import java.net.URL; +import java.util.ArrayList; import java.util.Collections; import java.util.HashMap; +import java.util.List; import java.util.Map; import javax.naming.Context; @@ -109,6 +111,16 @@ } } + public List<String> getContextNames() { + List<String> list = new ArrayList<String>(); + list.addAll(contextMap.keySet()); + return list; + } + + public LoggerContext getLoggerContext(String name) { + return contextMap.get(name); + } + /** * Returns the number of managed contexts * Used for testing purposes Modified: logback/trunk/logback-classic/src/main/java/ch/qos/logback/classic/selector/ContextSelector.java ============================================================================== --- logback/trunk/logback-classic/src/main/java/ch/qos/logback/classic/selector/ContextSelector.java (original) +++ logback/trunk/logback-classic/src/main/java/ch/qos/logback/classic/selector/ContextSelector.java Mon Jan 29 18:54:41 2007 @@ -1,5 +1,7 @@ package ch.qos.logback.classic.selector; +import java.util.List; + import ch.qos.logback.classic.LoggerContext; /** @@ -15,8 +17,11 @@ public LoggerContext getLoggerContext(); + public LoggerContext getLoggerContext(String name); + public LoggerContext getDefaultLoggerContext(); public LoggerContext detachLoggerContext(String loggerContextName); + public List<String> getContextNames(); } Modified: logback/trunk/logback-classic/src/main/java/ch/qos/logback/classic/selector/DefaultContextSelector.java ============================================================================== --- logback/trunk/logback-classic/src/main/java/ch/qos/logback/classic/selector/DefaultContextSelector.java (original) +++ logback/trunk/logback-classic/src/main/java/ch/qos/logback/classic/selector/DefaultContextSelector.java Mon Jan 29 18:54:41 2007 @@ -1,5 +1,8 @@ package ch.qos.logback.classic.selector; +import java.util.Arrays; +import java.util.List; + import ch.qos.logback.classic.LoggerContext; public class DefaultContextSelector implements ContextSelector { @@ -21,4 +24,16 @@ public LoggerContext detachLoggerContext(String loggerContextName) { return context; } + + public List<String> getContextNames() { + return Arrays.asList(context.getName()); + } + + public LoggerContext getLoggerContext(String name) { + if (context.getName().equals(name)) { + return context; + } else { + return null; + } + } }
participants (1)
-
noreply.seb@qos.ch