This is an automated email from the ASF dual-hosted git repository.

orpiske pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/camel.git

commit 2f03fddc2837a44ed85655e18421da227bd90bfc
Author: Otavio Rodolfo Piske <[email protected]>
AuthorDate: Mon Dec 30 14:49:01 2024 +0100

    (chores) camel-infinispan: avoid affecting the stop if the cache manager is 
unstarted
---
 .../infinispan/remote/InfinispanRemoteConsumer.java       | 15 ++++++++++++++-
 1 file changed, 14 insertions(+), 1 deletion(-)

diff --git 
a/components/camel-infinispan/camel-infinispan/src/main/java/org/apache/camel/component/infinispan/remote/InfinispanRemoteConsumer.java
 
b/components/camel-infinispan/camel-infinispan/src/main/java/org/apache/camel/component/infinispan/remote/InfinispanRemoteConsumer.java
index 45a4db3894b..7e8de630142 100644
--- 
a/components/camel-infinispan/camel-infinispan/src/main/java/org/apache/camel/component/infinispan/remote/InfinispanRemoteConsumer.java
+++ 
b/components/camel-infinispan/camel-infinispan/src/main/java/org/apache/camel/component/infinispan/remote/InfinispanRemoteConsumer.java
@@ -31,12 +31,17 @@ import org.infinispan.client.hotrod.RemoteCache;
 import org.infinispan.client.hotrod.RemoteCacheManager;
 import org.infinispan.client.hotrod.Search;
 import org.infinispan.client.hotrod.event.ClientEvent;
+import 
org.infinispan.client.hotrod.exceptions.RemoteCacheManagerNotStartedException;
 import org.infinispan.query.api.continuous.ContinuousQuery;
 import org.infinispan.query.api.continuous.ContinuousQueryListener;
 import org.infinispan.query.dsl.Query;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 public class InfinispanRemoteConsumer
         extends InfinispanConsumer<RemoteCacheManager, 
InfinispanRemoteManager, InfinispanRemoteConfiguration> {
+    private static final Logger LOG = 
LoggerFactory.getLogger(InfinispanRemoteConsumer.class);
+
     private Service handler;
 
     public InfinispanRemoteConsumer(
@@ -141,7 +146,15 @@ public class InfinispanRemoteConsumer
         @SuppressWarnings("unchecked")
         @Override
         public void doStop() {
-            getCache(RemoteCache.class).removeClientListener(listener);
+            final RemoteCache cache = getCache(RemoteCache.class);
+            if (cache != null) {
+                try {
+                    cache.removeClientListener(listener);
+                } catch (RemoteCacheManagerNotStartedException e) {
+                    LOG.debug("Cannot remote the listener because the cache 
manager is not started: {}", e.getMessage(), e);
+                }
+            }
+
         }
 
     }

Reply via email to