Author: dkulp
Date: Tue Jan  7 03:04:39 2014
New Revision: 1556109

URL: http://svn.apache.org/r1556109
Log:
Merged revisions 1555159 via  git cherry-pick from
https://svn.apache.org/repos/asf/cxf/trunk

........
  r1555159 | dkulp | 2014-01-03 12:18:39 -0500 (Fri, 03 Jan 2014) | 2 lines

  Use ConcurrentHashMap as parent to make sure setting properties on the 
services/endpoints at the same time messages are processed won't result in 
exceptions

........

Modified:
    
cxf/branches/2.7.x-fixes/api/src/main/java/org/apache/cxf/interceptor/AbstractAttributedInterceptorProvider.java

Modified: 
cxf/branches/2.7.x-fixes/api/src/main/java/org/apache/cxf/interceptor/AbstractAttributedInterceptorProvider.java
URL: 
http://svn.apache.org/viewvc/cxf/branches/2.7.x-fixes/api/src/main/java/org/apache/cxf/interceptor/AbstractAttributedInterceptorProvider.java?rev=1556109&r1=1556108&r2=1556109&view=diff
==============================================================================
--- 
cxf/branches/2.7.x-fixes/api/src/main/java/org/apache/cxf/interceptor/AbstractAttributedInterceptorProvider.java
 (original)
+++ 
cxf/branches/2.7.x-fixes/api/src/main/java/org/apache/cxf/interceptor/AbstractAttributedInterceptorProvider.java
 Tue Jan  7 03:04:39 2014
@@ -19,13 +19,13 @@
 
 package org.apache.cxf.interceptor;
 
-import java.util.HashMap;
 import java.util.List;
+import java.util.concurrent.ConcurrentHashMap;
 
 import org.apache.cxf.common.util.ModCountCopyOnWriteArrayList;
 import org.apache.cxf.message.Message;
 
-public abstract class AbstractAttributedInterceptorProvider extends 
HashMap<String, Object>
+public abstract class AbstractAttributedInterceptorProvider extends 
ConcurrentHashMap<String, Object>
     implements InterceptorProvider {
 
     private static final long serialVersionUID = -1915876045710441978L;
@@ -39,6 +39,13 @@ public abstract class AbstractAttributed
         = new ModCountCopyOnWriteArrayList<Interceptor<? extends Message>>();
 
     
+    public Object put(String s, Object o) {
+        if (o == null) {
+            return super.remove(s);
+        }
+        return super.put(s, o);
+    }
+    
     public List<Interceptor<? extends Message>> getOutFaultInterceptors() {
         return outFault;
     }


Reply via email to