You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by ha...@apache.org on 2012/02/07 00:26:49 UTC
svn commit: r1241260 - in /camel/branches/camel-2.9.x:
camel-core/src/main/java/org/apache/camel/impl/DefaultCamelContext.java
tests/camel-itest/src/test/java/org/apache/camel/itest/issues/RemoveEndpointsTest.java
Author: hadrian
Date: Mon Feb 6 23:26:48 2012
New Revision: 1241260
URL: http://svn.apache.org/viewvc?rev=1241260&view=rev
Log:
CAMEL-4976. Properly remove all endpoints matching a given pattern
Modified:
camel/branches/camel-2.9.x/camel-core/src/main/java/org/apache/camel/impl/DefaultCamelContext.java
camel/branches/camel-2.9.x/tests/camel-itest/src/test/java/org/apache/camel/itest/issues/RemoveEndpointsTest.java
Modified: camel/branches/camel-2.9.x/camel-core/src/main/java/org/apache/camel/impl/DefaultCamelContext.java
URL: http://svn.apache.org/viewvc/camel/branches/camel-2.9.x/camel-core/src/main/java/org/apache/camel/impl/DefaultCamelContext.java?rev=1241260&r1=1241259&r2=1241260&view=diff
==============================================================================
--- camel/branches/camel-2.9.x/camel-core/src/main/java/org/apache/camel/impl/DefaultCamelContext.java (original)
+++ camel/branches/camel-2.9.x/camel-core/src/main/java/org/apache/camel/impl/DefaultCamelContext.java Mon Feb 6 23:26:48 2012
@@ -378,13 +378,15 @@ public class DefaultCamelContext extends
for (Map.Entry entry : endpoints.entrySet()) {
oldEndpoint = (Endpoint)entry.getValue();
if (EndpointHelper.matchEndpoint(oldEndpoint.getEndpointUri(), uri)) {
- answer.add(oldEndpoint);
- stopServices(oldEndpoint);
+ try {
+ stopServices(oldEndpoint);
+ answer.add(oldEndpoint);
+ endpoints.remove(entry.getKey());
+ } catch (Exception e) {
+ log.warn("Endpoint '{}' matching pattern '{}' should be removed, but could not be stopped. Remove ignored...");
+ }
}
}
- for (Endpoint endpoint : answer) {
- endpoints.remove(getEndpointKey(endpoint.getEndpointUri()));
- }
}
// notify lifecycle its being removed
Modified: camel/branches/camel-2.9.x/tests/camel-itest/src/test/java/org/apache/camel/itest/issues/RemoveEndpointsTest.java
URL: http://svn.apache.org/viewvc/camel/branches/camel-2.9.x/tests/camel-itest/src/test/java/org/apache/camel/itest/issues/RemoveEndpointsTest.java?rev=1241260&r1=1241259&r2=1241260&view=diff
==============================================================================
--- camel/branches/camel-2.9.x/tests/camel-itest/src/test/java/org/apache/camel/itest/issues/RemoveEndpointsTest.java (original)
+++ camel/branches/camel-2.9.x/tests/camel-itest/src/test/java/org/apache/camel/itest/issues/RemoveEndpointsTest.java Mon Feb 6 23:26:48 2012
@@ -44,10 +44,7 @@ public class RemoveEndpointsTest extends
Collection<Endpoint> list = context.removeEndpoints("*");
assertEquals(7, list.size()); // all have been removed
-
- // TODO: [CAMEL-4976] the following fails, but it should pass
- // assertEquals(0, context.getEndpoints().size());
- // assertNull(context.hasEndpoint("jms://topic:bar"));
+ assertEquals(0, context.getEndpoints().size());
}
@Override