From d577e61b6964d36b4efa5f6f67e5d61b28f69dc5 Mon Sep 17 00:00:00 2001 From: elong Date: Tue, 20 Sep 2016 15:37:00 -0400 Subject: [PATCH] 0002815: Add an online() call to IOfflineClientListener --- .../jumpmind/symmetric/io/DefaultOfflineClientListener.java | 5 ++++- .../org/jumpmind/symmetric/io/IOfflineClientListener.java | 5 +++++ .../service/impl/AbstractOfflineDetectorService.java | 6 ++++++ 3 files changed, 15 insertions(+), 1 deletion(-) diff --git a/symmetric-core/src/main/java/org/jumpmind/symmetric/io/DefaultOfflineClientListener.java b/symmetric-core/src/main/java/org/jumpmind/symmetric/io/DefaultOfflineClientListener.java index 4ad5611b04..e6a85670f4 100644 --- a/symmetric-core/src/main/java/org/jumpmind/symmetric/io/DefaultOfflineClientListener.java +++ b/symmetric-core/src/main/java/org/jumpmind/symmetric/io/DefaultOfflineClientListener.java @@ -66,5 +66,8 @@ public void syncDisabled(Node remoteNode) { public void registrationRequired(Node remoteNode) { } - + + public void online(Node remoteNode) { + } + } diff --git a/symmetric-core/src/main/java/org/jumpmind/symmetric/io/IOfflineClientListener.java b/symmetric-core/src/main/java/org/jumpmind/symmetric/io/IOfflineClientListener.java index 68b2cce581..1c1c6191a5 100644 --- a/symmetric-core/src/main/java/org/jumpmind/symmetric/io/IOfflineClientListener.java +++ b/symmetric-core/src/main/java/org/jumpmind/symmetric/io/IOfflineClientListener.java @@ -59,4 +59,9 @@ public interface IOfflineClientListener extends IExtensionPoint { public void unknownError(Node remoteNode, Exception ex); + /** + * Called when the remote node is reachable. + */ + public void online(Node remoteNode); + } \ No newline at end of file diff --git a/symmetric-core/src/main/java/org/jumpmind/symmetric/service/impl/AbstractOfflineDetectorService.java b/symmetric-core/src/main/java/org/jumpmind/symmetric/service/impl/AbstractOfflineDetectorService.java index c32b30ab1d..49780f8460 100644 --- a/symmetric-core/src/main/java/org/jumpmind/symmetric/service/impl/AbstractOfflineDetectorService.java +++ b/symmetric-core/src/main/java/org/jumpmind/symmetric/service/impl/AbstractOfflineDetectorService.java @@ -62,6 +62,12 @@ public AbstractOfflineDetectorService(IParameterService parameterService, protected void fireOnline(Node remoteNode, RemoteNodeStatus status) { transportErrorTimeByNode.remove(remoteNode.getNodeId()); + List offlineListeners = extensionService.getExtensionPointList(IOfflineClientListener.class); + if (offlineListeners != null) { + for (IOfflineClientListener listener : offlineListeners) { + listener.online(remoteNode); + } + } } protected void fireOffline(Exception error, Node remoteNode, RemoteNodeStatus status) {