From 6bd13ae6e0e4cea50b69c22526822de99bf4ac3f Mon Sep 17 00:00:00 2001
From: lutoff <lutoff@localhost>
Date: Fri, 12 Oct 2007 12:48:38 +0000
Subject: [PATCH] Fix for issue #2207 (setup/ADS does not add registered server in group"ALL")

---
 opends/src/ads/org/opends/admin/ads/ADSContext.java |   28 ++++++++++++++++++++++++++++
 1 files changed, 28 insertions(+), 0 deletions(-)

diff --git a/opends/src/ads/org/opends/admin/ads/ADSContext.java b/opends/src/ads/org/opends/admin/ads/ADSContext.java
index 946d575..ffad97e 100644
--- a/opends/src/ads/org/opends/admin/ads/ADSContext.java
+++ b/opends/src/ads/org/opends/admin/ads/ADSContext.java
@@ -426,6 +426,34 @@
       {
         registerInstanceKeyCertificate(serverProperties, dn);
       }
+
+      // register this server into "all" groups
+      HashMap<ServerGroupProperty, Object> serverGroupProperties =
+        new HashMap<ServerGroupProperty, Object>();
+      Set<String> memberList = getServerGroupMemberList(ALL_SERVERGROUP_NAME);
+      if (memberList == null) {
+        memberList = new HashSet<String>();
+      }
+      String newMember = "cn="
+          + Rdn.escapeValue(serverProperties.get(ServerProperty.ID));
+
+      memberList.add(newMember);
+      serverGroupProperties.put(ServerGroupProperty.MEMBERS, memberList);
+
+      updateServerGroup(ALL_SERVERGROUP_NAME, serverGroupProperties);
+
+      // Update the server property "GROUPS"
+      Set rawGroupList = (Set) serverProperties.get(ServerProperty.GROUPS);
+      Set<String> groupList = new HashSet<String>();
+      if (rawGroupList != null) {
+        for (Object elm : rawGroupList.toArray()) {
+          groupList.add(elm.toString());
+        }
+      }
+      groupList.add(ALL_SERVERGROUP_NAME);
+      serverProperties.put(ServerProperty.GROUPS, groupList);
+    updateServer(serverProperties, null);
+
     }
     catch (ADSContextException ace)
     {

--
Gitblit v1.10.0