From 0b87d9a261911e557e810df8d81c37a63e79c9d7 Mon Sep 17 00:00:00 2001 From: Redkale <22250530@qq.com> Date: Wed, 21 Jun 2017 16:10:15 +0800 Subject: [PATCH] --- src/org/redkale/source/CacheMemorySource.java | 35 ++++++++++--------- 1 file changed, 19 insertions(+), 16 deletions(-) diff --git a/src/org/redkale/source/CacheMemorySource.java b/src/org/redkale/source/CacheMemorySource.java index 96acac159..a35f0e6e0 100644 --- a/src/org/redkale/source/CacheMemorySource.java +++ b/src/org/redkale/source/CacheMemorySource.java @@ -13,7 +13,7 @@ import java.util.function.Consumer; import java.util.logging.*; import javax.annotation.Resource; import org.redkale.convert.json.*; -import org.redkale.net.sncp.Sncp; +import org.redkale.net.sncp.*; import org.redkale.service.*; import org.redkale.util.*; @@ -155,22 +155,25 @@ public class CacheMemorySource extends } } if (remoteSource != null && !Sncp.isRemote(this)) { - super.runAsync(() -> { - try { - CompletableFuture>> listFuture = remoteSource.queryListAsync(); - listFuture.whenComplete((list, exp) -> { - if (exp != null) { - logger.log(Level.FINEST, CacheSource.class.getSimpleName() + "(" + resourceName() + ") queryListAsync error", exp); - } else { - for (CacheEntry entry : list) { - container.put(entry.key, entry); + SncpClient client = Sncp.getSncpClient((Service) remoteSource); + if (client != null && client.getRemoteGroupTransport() != null) { + super.runAsync(() -> { + try { + CompletableFuture>> listFuture = remoteSource.queryListAsync(); + listFuture.whenComplete((list, exp) -> { + if (exp != null) { + logger.log(Level.FINEST, CacheSource.class.getSimpleName() + "(" + resourceName() + ") queryListAsync error", exp); + } else { + for (CacheEntry entry : list) { + container.put(entry.key, entry); + } } - } - }); - } catch (Exception e) { - logger.log(Level.FINEST, CacheSource.class.getSimpleName() + "(" + resourceName() + ") queryListAsync error, maybe remote node connot connect ", e); - } - }); + }); + } catch (Exception e) { + logger.log(Level.FINEST, CacheSource.class.getSimpleName() + "(" + resourceName() + ") queryListAsync error, maybe remote node connot connect ", e); + } + }); + } } }