Author: fmeschbe
Date: Thu Jun 12 23:12:36 2008
New Revision: 667371
URL: http://svn.apache.org/viewvc?rev=667371&view=rev
Log:
SLING-529 Fix inability to apply global configuration
Modified:
incubator/sling/trunk/commons/log/src/main/java/org/apache/sling/commons/log/LogManager.java
incubator/sling/trunk/commons/log/src/main/java/org/apache/sling/commons/log/slf4j/LogConfigManager.java
Modified:
incubator/sling/trunk/commons/log/src/main/java/org/apache/sling/commons/log/LogManager.java
URL:
http://svn.apache.org/viewvc/incubator/sling/trunk/commons/log/src/main/java/org/apache/sling/commons/log/LogManager.java?rev=667371&r1=667370&r2=667371&view=diff
==============================================================================
---
incubator/sling/trunk/commons/log/src/main/java/org/apache/sling/commons/log/LogManager.java
(original)
+++
incubator/sling/trunk/commons/log/src/main/java/org/apache/sling/commons/log/LogManager.java
Thu Jun 12 23:12:36 2008
@@ -150,9 +150,6 @@
}
}
- // only configure the root logger with bundle context properties !
- config.put(LOG_LOGGERS, LogConfigManager.ROOT);
-
return config;
}
@@ -172,10 +169,16 @@
public void updated(Dictionary properties)
throws ConfigurationException { // unchecked
+ // fallback to start default settings when the config is deleted
if (properties == null) {
properties = defaultConfiguration;
}
+
+ // set the logger name to a special value to indicate the global
+ // (ROOT) logger setting (SLING-529)
+ properties.put(LOG_LOGGERS, LogConfigManager.ROOT);
+ // update the default log writer and logger configuration
logConfigManager.updateLogWriter(PID, properties);
logConfigManager.updateLoggerConfiguration(PID, properties);
}
Modified:
incubator/sling/trunk/commons/log/src/main/java/org/apache/sling/commons/log/slf4j/LogConfigManager.java
URL:
http://svn.apache.org/viewvc/incubator/sling/trunk/commons/log/src/main/java/org/apache/sling/commons/log/slf4j/LogConfigManager.java?rev=667371&r1=667370&r2=667371&view=diff
==============================================================================
---
incubator/sling/trunk/commons/log/src/main/java/org/apache/sling/commons/log/slf4j/LogConfigManager.java
(original)
+++
incubator/sling/trunk/commons/log/src/main/java/org/apache/sling/commons/log/slf4j/LogConfigManager.java
Thu Jun 12 23:12:36 2008
@@ -584,6 +584,16 @@
return null;
}
+ // prepare set of names (used already in case loggers == ROOT)
+ Set<String> loggerNames = new HashSet<String>();
+
+ // in case of the special setting ROOT, return a set of just the
+ // root logger name (SLING-529)
+ if (loggers == ROOT) {
+ loggerNames.add(ROOT);
+ return loggerNames;
+ }
+
// convert the loggers object to an array
Object[] loggersArray;
if (loggers.getClass().isArray()) {
@@ -596,7 +606,6 @@
// conver the array of potentially comma-separated logger names
// into the set of logger names
- Set<String> loggerNames = new HashSet<String>();
for (Object loggerObject : loggersArray) {
if (loggerObject != null) {
String[] splitLoggers = loggerObject.toString().split(",");