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

kharekartik pushed a commit to branch controller_api_patch
in repository https://gitbox.apache.org/repos/asf/incubator-pinot.git

commit acd9397d28f1edd400c4b6fcdea8473a770d475e
Author: Kartik Khare <kharekartik@Kartiks-MacBook-Pro.local>
AuthorDate: Tue Sep 15 19:54:47 2020 +0530

    Add listeners to cache zookeeper configs for helix
---
 .../ClusterExternalViewChangeListener.java         | 21 +++++++++++++++++++
 .../ClusterInstanceConfigChangeListener.java       | 24 ++++++++++++++++++++++
 .../ClusterLiveInstanceChangeListener.java         | 21 +++++++++++++++++++
 3 files changed, 66 insertions(+)

diff --git 
a/pinot-controller/src/main/java/org/apache/pinot/controller/helix/core/listener/ClusterExternalViewChangeListener.java
 
b/pinot-controller/src/main/java/org/apache/pinot/controller/helix/core/listener/ClusterExternalViewChangeListener.java
new file mode 100644
index 0000000..6400f47
--- /dev/null
+++ 
b/pinot-controller/src/main/java/org/apache/pinot/controller/helix/core/listener/ClusterExternalViewChangeListener.java
@@ -0,0 +1,21 @@
+package org.apache.pinot.controller.helix.core.listener;
+
+import java.util.ArrayList;
+import java.util.List;
+import org.apache.helix.NotificationContext;
+import org.apache.helix.api.listeners.ExternalViewChangeListener;
+import org.apache.helix.model.ExternalView;
+
+
+public class ClusterExternalViewChangeListener implements 
ExternalViewChangeListener {
+  private List<ExternalView> _externalViewList = new ArrayList<>();
+
+  @Override
+  public void onExternalViewChange(List<ExternalView> externalViewList, 
NotificationContext changeContext) {
+    _externalViewList = externalViewList;
+  }
+
+  public List<ExternalView> getExternalViewList() {
+    return _externalViewList;
+  }
+}
diff --git 
a/pinot-controller/src/main/java/org/apache/pinot/controller/helix/core/listener/ClusterInstanceConfigChangeListener.java
 
b/pinot-controller/src/main/java/org/apache/pinot/controller/helix/core/listener/ClusterInstanceConfigChangeListener.java
new file mode 100644
index 0000000..940230c
--- /dev/null
+++ 
b/pinot-controller/src/main/java/org/apache/pinot/controller/helix/core/listener/ClusterInstanceConfigChangeListener.java
@@ -0,0 +1,24 @@
+package org.apache.pinot.controller.helix.core.listener;
+
+import org.apache.helix.NotificationContext;
+import org.apache.helix.api.listeners.InstanceConfigChangeListener;
+import org.apache.helix.model.InstanceConfig;
+
+import java.util.ArrayList;
+import java.util.List;
+
+public class ClusterInstanceConfigChangeListener implements 
InstanceConfigChangeListener {
+    private List<InstanceConfig> _instanceConfigs = new ArrayList<>();
+
+    public ClusterInstanceConfigChangeListener() {
+    }
+
+    @Override
+    public void onInstanceConfigChange(List<InstanceConfig> instanceConfigs, 
NotificationContext context) {
+        _instanceConfigs = instanceConfigs;
+    }
+
+    public List<InstanceConfig> getInstanceConfigs() {
+        return _instanceConfigs;
+    }
+}
diff --git 
a/pinot-controller/src/main/java/org/apache/pinot/controller/helix/core/listener/ClusterLiveInstanceChangeListener.java
 
b/pinot-controller/src/main/java/org/apache/pinot/controller/helix/core/listener/ClusterLiveInstanceChangeListener.java
new file mode 100644
index 0000000..777b41a
--- /dev/null
+++ 
b/pinot-controller/src/main/java/org/apache/pinot/controller/helix/core/listener/ClusterLiveInstanceChangeListener.java
@@ -0,0 +1,21 @@
+package org.apache.pinot.controller.helix.core.listener;
+
+import java.util.ArrayList;
+import org.apache.helix.NotificationContext;
+import org.apache.helix.api.listeners.LiveInstanceChangeListener;
+import org.apache.helix.model.LiveInstance;
+
+import java.util.List;
+
+public class ClusterLiveInstanceChangeListener implements 
LiveInstanceChangeListener {
+    private List<LiveInstance> _liveInstances = new ArrayList<>();
+
+    @Override
+    public void onLiveInstanceChange(List<LiveInstance> liveInstances, 
NotificationContext changeContext) {
+        _liveInstances = liveInstances;
+    }
+
+    public List<LiveInstance> getLiveInstances() {
+        return _liveInstances;
+    }
+}


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscr...@pinot.apache.org
For additional commands, e-mail: commits-h...@pinot.apache.org

Reply via email to