Author: davsclaus
Date: Tue Apr 17 08:39:34 2012
New Revision: 1326994

URL: http://svn.apache.org/viewvc?rev=1326994&view=rev
Log:
Use concurrent list in case lazy loading type converters is enabled and doing 
concurrent testing which may cause a concurrent modification exception while 
traversing fallback type converters

Modified:
    
camel/trunk/camel-core/src/main/java/org/apache/camel/impl/converter/BaseTypeConverterRegistry.java

Modified: 
camel/trunk/camel-core/src/main/java/org/apache/camel/impl/converter/BaseTypeConverterRegistry.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/impl/converter/BaseTypeConverterRegistry.java?rev=1326994&r1=1326993&r2=1326994&view=diff
==============================================================================
--- 
camel/trunk/camel-core/src/main/java/org/apache/camel/impl/converter/BaseTypeConverterRegistry.java
 (original)
+++ 
camel/trunk/camel-core/src/main/java/org/apache/camel/impl/converter/BaseTypeConverterRegistry.java
 Tue Apr 17 08:39:34 2012
@@ -25,6 +25,7 @@ import java.util.Map;
 import java.util.Set;
 import java.util.concurrent.ConcurrentHashMap;
 import java.util.concurrent.ConcurrentMap;
+import java.util.concurrent.CopyOnWriteArrayList;
 import java.util.concurrent.ExecutionException;
 import java.util.concurrent.atomic.AtomicLong;
 
@@ -58,7 +59,7 @@ public abstract class BaseTypeConverterR
     // for misses use a soft reference cache map, as the classes may be 
un-deployed at runtime
     protected final LRUSoftCache<TypeMapping, TypeMapping> misses = new 
LRUSoftCache<TypeMapping, TypeMapping>(1000);
     protected final List<TypeConverterLoader> typeConverterLoaders = new 
ArrayList<TypeConverterLoader>();
-    protected final List<FallbackTypeConverter> fallbackConverters = new 
ArrayList<FallbackTypeConverter>();
+    protected final List<FallbackTypeConverter> fallbackConverters = new 
CopyOnWriteArrayList<FallbackTypeConverter>();
     protected final PackageScanClassResolver resolver;
     protected Injector injector;
     protected final FactoryFinder factoryFinder;


Reply via email to