CAMEL-7666: Fixed potential java.util.ConcurrentModificationException using 
addService.


Project: http://git-wip-us.apache.org/repos/asf/camel/repo
Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/920cfd75
Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/920cfd75
Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/920cfd75

Branch: refs/heads/camel-2.12.x
Commit: 920cfd75b9d832edaa03c1b71af83ddca13d1e80
Parents: b668bca
Author: Claus Ibsen <davscl...@apache.org>
Authored: Thu Aug 7 10:24:52 2014 +0200
Committer: Claus Ibsen <davscl...@apache.org>
Committed: Thu Aug 7 16:48:01 2014 +0200

----------------------------------------------------------------------
 .../src/main/java/org/apache/camel/impl/DefaultCamelContext.java  | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/camel/blob/920cfd75/camel-core/src/main/java/org/apache/camel/impl/DefaultCamelContext.java
----------------------------------------------------------------------
diff --git 
a/camel-core/src/main/java/org/apache/camel/impl/DefaultCamelContext.java 
b/camel-core/src/main/java/org/apache/camel/impl/DefaultCamelContext.java
index 77a7cce..4e41234 100644
--- a/camel-core/src/main/java/org/apache/camel/impl/DefaultCamelContext.java
+++ b/camel-core/src/main/java/org/apache/camel/impl/DefaultCamelContext.java
@@ -32,6 +32,7 @@ import java.util.Map;
 import java.util.Properties;
 import java.util.Set;
 import java.util.TreeMap;
+import java.util.concurrent.CopyOnWriteArrayList;
 import java.util.concurrent.ScheduledExecutorService;
 import java.util.concurrent.TimeUnit;
 import java.util.concurrent.atomic.AtomicInteger;
@@ -165,7 +166,7 @@ public class DefaultCamelContext extends ServiceSupport 
implements ModelCamelCon
     private LanguageResolver languageResolver = new DefaultLanguageResolver();
     private final Map<String, Language> languages = new HashMap<String, 
Language>();
     private Registry registry;
-    private List<LifecycleStrategy> lifecycleStrategies = new 
ArrayList<LifecycleStrategy>();
+    private List<LifecycleStrategy> lifecycleStrategies = new 
CopyOnWriteArrayList<LifecycleStrategy>();
     private ManagementStrategy managementStrategy;
     private ManagementMBeanAssembler managementMBeanAssembler;
     private final List<RouteDefinition> routeDefinitions = new 
ArrayList<RouteDefinition>();

Reply via email to