You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@sling.apache.org by fm...@apache.org on 2010/01/26 08:39:11 UTC
svn commit: r903111 -
/sling/trunk/bundles/commons/log/src/main/java/org/apache/sling/commons/log/internal/slf4j/LogConfigManager.java
Author: fmeschbe
Date: Tue Jan 26 07:39:10 2010
New Revision: 903111
URL: http://svn.apache.org/viewvc?rev=903111&view=rev
Log:
SLING-1326 use ConcurrentHashMap instead of HashMap to prevent concurrency issues accessing the configurations.
Modified:
sling/trunk/bundles/commons/log/src/main/java/org/apache/sling/commons/log/internal/slf4j/LogConfigManager.java
Modified: sling/trunk/bundles/commons/log/src/main/java/org/apache/sling/commons/log/internal/slf4j/LogConfigManager.java
URL: http://svn.apache.org/viewvc/sling/trunk/bundles/commons/log/src/main/java/org/apache/sling/commons/log/internal/slf4j/LogConfigManager.java?rev=903111&r1=903110&r2=903111&view=diff
==============================================================================
--- sling/trunk/bundles/commons/log/src/main/java/org/apache/sling/commons/log/internal/slf4j/LogConfigManager.java (original)
+++ sling/trunk/bundles/commons/log/src/main/java/org/apache/sling/commons/log/internal/slf4j/LogConfigManager.java Tue Jan 26 07:39:10 2010
@@ -23,11 +23,11 @@
import java.lang.ref.SoftReference;
import java.util.Collection;
import java.util.Dictionary;
-import java.util.HashMap;
import java.util.HashSet;
import java.util.Iterator;
import java.util.Map;
import java.util.Set;
+import java.util.concurrent.ConcurrentHashMap;
import org.apache.sling.commons.log.internal.LogManager;
import org.osgi.service.cm.ConfigurationException;
@@ -95,11 +95,11 @@
* and logger configuration
*/
private LogConfigManager() {
- writerByPid = new HashMap<String, SlingLoggerWriter>();
- writerByFileName = new HashMap<String, SlingLoggerWriter>();
- configByPid = new HashMap<String, SlingLoggerConfig>();
- configByCategory = new HashMap<String, SlingLoggerConfig>();
- loggersByCategory = new HashMap<String, SoftReference<SlingLogger>>();
+ writerByPid = new ConcurrentHashMap<String, SlingLoggerWriter>();
+ writerByFileName = new ConcurrentHashMap<String, SlingLoggerWriter>();
+ configByPid = new ConcurrentHashMap<String, SlingLoggerConfig>();
+ configByCategory = new ConcurrentHashMap<String, SlingLoggerConfig>();
+ loggersByCategory = new ConcurrentHashMap<String, SoftReference<SlingLogger>>();
// configure the default writer to write to stdout (for now)
// and register for PID only