From 7faa5e4d10edda3015f96a3a98cc2115aa16f1dd Mon Sep 17 00:00:00 2001
From: jvergara <jvergara@localhost>
Date: Thu, 26 Mar 2009 10:26:00 +0000
Subject: [PATCH] Fix for issue 3555 (Control panel : Manage entries menu does not refresh the view off the DIT)

---
 opends/src/guitools/org/opends/guitools/controlpanel/datamodel/ControlPanelInfo.java |   40 ++++++++++++++++++++++++++++++++++++++++
 1 files changed, 40 insertions(+), 0 deletions(-)

diff --git a/opends/src/guitools/org/opends/guitools/controlpanel/datamodel/ControlPanelInfo.java b/opends/src/guitools/org/opends/guitools/controlpanel/datamodel/ControlPanelInfo.java
index f0645a7..d76e9b5 100644
--- a/opends/src/guitools/org/opends/guitools/controlpanel/datamodel/ControlPanelInfo.java
+++ b/opends/src/guitools/org/opends/guitools/controlpanel/datamodel/ControlPanelInfo.java
@@ -44,6 +44,8 @@
 import org.opends.admin.ads.util.ConnectionUtils;
 import org.opends.guitools.controlpanel.browser.IconPool;
 import org.opends.guitools.controlpanel.browser.LDAPConnectionPool;
+import org.opends.guitools.controlpanel.event.BackendPopulatedEvent;
+import org.opends.guitools.controlpanel.event.BackendPopulatedListener;
 import org.opends.guitools.controlpanel.event.BackupCreatedEvent;
 import org.opends.guitools.controlpanel.event.BackupCreatedListener;
 import org.opends.guitools.controlpanel.event.ConfigChangeListener;
@@ -101,6 +103,9 @@
   private LinkedHashSet<BackupCreatedListener> backupListeners =
     new LinkedHashSet<BackupCreatedListener>();
 
+  private LinkedHashSet<BackendPopulatedListener> backendPopulatedListeners =
+    new LinkedHashSet<BackendPopulatedListener>();
+
   private LinkedHashSet<IndexModifiedListener> indexListeners =
     new LinkedHashSet<IndexModifiedListener>();
 
@@ -364,6 +369,20 @@
   }
 
   /**
+   * Informs that a set of backends have been populated.  The method will notify
+   * to all the backend populated listeners.
+   * @param backends the populated backends.
+   */
+  public void backendPopulated(Set<BackendDescriptor> backends)
+  {
+    BackendPopulatedEvent ev = new BackendPopulatedEvent(backends);
+    for (BackendPopulatedListener listener : backendPopulatedListeners)
+    {
+      listener.backendPopulated(ev);
+    }
+  }
+
+  /**
    * Informs that an index has been modified.  The method will notify to all
    * the index listeners that an index has been modified.
    * @param modifiedIndex the modified index.
@@ -682,6 +701,27 @@
   }
 
   /**
+   * Adds a backend populated listener.
+   * @param listener the listener.
+   */
+  public void addBackendPopulatedListener(BackendPopulatedListener listener)
+  {
+    backendPopulatedListeners.add(listener);
+  }
+
+  /**
+   * Removes a backend populated listener.
+   * @param listener the listener.
+   * @return <CODE>true</CODE> if the listener is found and <CODE>false</CODE>
+   * otherwise.
+   */
+  public boolean removeBackendPopulatedListener(
+      BackendPopulatedListener listener)
+  {
+    return backendPopulatedListeners.remove(listener);
+  }
+
+  /**
    * Adds an index modification listener.
    * @param listener the listener.
    */

--
Gitblit v1.10.0