From 8b9017ccd73861fdf0158a6af79ae8b1bec68719 Mon Sep 17 00:00:00 2001
From: lutoff <lutoff@localhost>
Date: Mon, 23 Jul 2007 13:26:31 +0000
Subject: [PATCH] Fix for issue 2008 add-to-group checks if the server in registered in the ADS
---
opendj-sdk/opends/src/server/org/opends/server/admin/client/cli/DsFrameworkCliServerGroup.java | 20 ++++++++++++++++++++
1 files changed, 20 insertions(+), 0 deletions(-)
diff --git a/opendj-sdk/opends/src/server/org/opends/server/admin/client/cli/DsFrameworkCliServerGroup.java b/opendj-sdk/opends/src/server/org/opends/server/admin/client/cli/DsFrameworkCliServerGroup.java
index fa3873b..33bb021 100644
--- a/opendj-sdk/opends/src/server/org/opends/server/admin/client/cli/DsFrameworkCliServerGroup.java
+++ b/opendj-sdk/opends/src/server/org/opends/server/admin/client/cli/DsFrameworkCliServerGroup.java
@@ -46,6 +46,7 @@
import org.opends.admin.ads.ADSContext;
import org.opends.admin.ads.ADSContextException;
import org.opends.admin.ads.ADSContext.ServerGroupProperty;
+import org.opends.admin.ads.ADSContext.ServerProperty;
import org.opends.server.admin.client.cli.DsFrameworkCliReturnCode.ReturnCode;
import org.opends.server.util.args.ArgumentException;
import org.opends.server.util.args.BooleanArgument;
@@ -725,6 +726,25 @@
}
adsCtx = new ADSContext(ctx) ;
+ // Check if the server is registered inside to ADS
+ Set<Map<ServerProperty, Object>> serverList = adsCtx
+ .readServerRegistry();
+ boolean found = false ;
+ for (Map<ServerProperty, Object> serverProperties : serverList)
+ {
+ String serverId = ADSContext
+ .getServerIdFromServerProperties(serverProperties);
+ if (addToGoupMemberNameArg.getValue().equals(serverId))
+ {
+ found = true;
+ break;
+ }
+ }
+ if ( !found )
+ {
+ return ReturnCode.SERVER_NOT_REGISTERED;
+ }
+
// get the current member list
Set<String> memberList = adsCtx.getServerGroupMemberList(groupId);
if (memberList == null)
--
Gitblit v1.10.0