From 73fe1b1f4f6c50c2e8d4de7b3b0e09f9c5f1365b Mon Sep 17 00:00:00 2001
From: jvergara <jvergara@localhost>
Date: Wed, 12 Sep 2007 23:21:22 +0000
Subject: [PATCH] Fix for issues: 1335: define, document, review CLI to register a server in a synch 1336: CLI implementation to register a server in a synchronization 1878: provide a CLI to initialize a replication topology from a gi 2201: ads-trustore missing when not configuring replication with t 2250: Setup and dsreplication utilities should configure schema sy
---
opendj-sdk/opends/src/guitools/org/opends/guitools/replicationcli/ReplicationCliMain.java | 92 +++++++++++++++++++++++++++++++++++++--------
1 files changed, 75 insertions(+), 17 deletions(-)
diff --git a/opendj-sdk/opends/src/guitools/org/opends/guitools/replicationcli/ReplicationCliMain.java b/opendj-sdk/opends/src/guitools/org/opends/guitools/replicationcli/ReplicationCliMain.java
index 4e80d6e..2bd1daa 100644
--- a/opendj-sdk/opends/src/guitools/org/opends/guitools/replicationcli/ReplicationCliMain.java
+++ b/opendj-sdk/opends/src/guitools/org/opends/guitools/replicationcli/ReplicationCliMain.java
@@ -913,6 +913,9 @@
{
}
}
+
+ uData.setReplicateSchema(!argParser.noSchemaReplication());
+
return !cancelled;
}
@@ -1078,12 +1081,16 @@
{
// Ask for confirmation to disable.
boolean disableADS = false;
+ boolean disableSchema = false;
for (String dn : uData.getBaseDNs())
{
if (Utils.areDnsEqual(ADSContext.getAdministrationSuffixDN(), dn))
{
disableADS = true;
- break;
+ }
+ else if (Utils.areDnsEqual(Constants.SCHEMA_DN, dn))
+ {
+ disableSchema = true;
}
}
if (disableADS)
@@ -1092,7 +1099,12 @@
cancelled = !confirm(INFO_REPLICATION_CONFIRM_DISABLE_ADS.get(
ADSContext.getAdministrationSuffixDN()));
}
- else
+ if (disableSchema)
+ {
+ printLineBreak();
+ cancelled = !confirm(INFO_REPLICATION_CONFIRM_DISABLE_SCHEMA.get());
+ }
+ if (!disableSchema && !disableADS)
{
printLineBreak();
cancelled = !confirm(INFO_REPLICATION_CONFIRM_DISABLE_GENERIC.get());
@@ -1541,7 +1553,10 @@
uData.setBindDn2(bindDn);
uData.setPwd2(pwd2);
}
- uData.setReplicationPort1(replicationPort1);
+ int replicationPort2 = getValue(argParser.getReplicationPort2(),
+ argParser.getDefaultReplicationPort2());
+ uData.setReplicationPort2(replicationPort2);
+ uData.setReplicateSchema(!argParser.noSchemaReplication());
}
/**
@@ -1717,17 +1732,23 @@
}
}
/* Check the exceptions and see if we throw them or not. */
+ boolean notGlobalAdministratorError = false;
for (TopologyCacheException e : exceptions)
{
+ if (notGlobalAdministratorError)
+ {
+ break;
+ }
switch (e.getType())
{
case NOT_GLOBAL_ADMINISTRATOR:
- printLineBreak();
- printErrorMessage(INFO_NOT_GLOBAL_ADMINISTRATOR_PROVIDED.get());
+ notGlobalAdministratorError = true;
boolean connected = false;
String adminUid = uData.getAdminUid();
String adminPwd = uData.getAdminPwd();
+
+ boolean errorDisplayed = false;
while (!connected)
{
if ((!triedWithUserProvidedAdmin) && (adminPwd == null))
@@ -1739,6 +1760,13 @@
}
if (adminPwd == null)
{
+ if (!errorDisplayed)
+ {
+ printLineBreak();
+ printErrorMessage(
+ INFO_NOT_GLOBAL_ADMINISTRATOR_PROVIDED.get());
+ errorDisplayed = true;
+ }
adminUid = askForAdministratorUID(
argParser.getDefaultAdministratorUID());
adminPwd = askForAdministratorPwd();
@@ -2496,9 +2524,17 @@
while (suffixes.isEmpty())
{
- if ((availableSuffixes.size() == 1) &&
- Utils.areDnsEqual(availableSuffixes.first(),
- ADSContext.getAdministrationSuffixDN()))
+ boolean noSchemaOrAds = false;
+ for (String s: availableSuffixes)
+ {
+ if (!Utils.areDnsEqual(s, ADSContext.getAdministrationSuffixDN()) &&
+ !Utils.areDnsEqual(s, Constants.SCHEMA_DN) &&
+ !Utils.areDnsEqual(s, Constants.REPLICATION_CHANGES_DN))
+ {
+ noSchemaOrAds = true;
+ }
+ }
+ if (!noSchemaOrAds)
{
// In interactive mode we do not propose to manage the
// administration suffix.
@@ -2514,7 +2550,7 @@
for (String dn : availableSuffixes)
{
if (!Utils.areDnsEqual(ADSContext.getAdministrationSuffixDN(),
- dn))
+ dn) && !Utils.areDnsEqual(Constants.SCHEMA_DN, dn))
{
if (confirm(INFO_REPLICATION_ENABLE_SUFFIX_PROMPT.get(dn)))
{
@@ -2643,9 +2679,17 @@
{
while (suffixes.isEmpty())
{
- if ((availableSuffixes.size() == 1) &&
- Utils.areDnsEqual(availableSuffixes.first(),
- ADSContext.getAdministrationSuffixDN()))
+ boolean noSchemaOrAds = false;
+ for (String s: availableSuffixes)
+ {
+ if (!Utils.areDnsEqual(s, ADSContext.getAdministrationSuffixDN()) &&
+ !Utils.areDnsEqual(s, Constants.SCHEMA_DN) &&
+ !Utils.areDnsEqual(s, Constants.REPLICATION_CHANGES_DN))
+ {
+ noSchemaOrAds = true;
+ }
+ }
+ if (!noSchemaOrAds)
{
// In interactive mode we do not propose to manage the
// administration suffix.
@@ -2661,7 +2705,7 @@
for (String dn : availableSuffixes)
{
if (!Utils.areDnsEqual(ADSContext.getAdministrationSuffixDN(),
- dn))
+ dn) && !Utils.areDnsEqual(Constants.SCHEMA_DN, dn))
{
if (confirm(INFO_REPLICATION_DISABLE_SUFFIX_PROMPT.get(dn)))
{
@@ -2731,9 +2775,17 @@
{
while (suffixes.isEmpty())
{
- if ((availableSuffixes.size() == 1) &&
- Utils.areDnsEqual(availableSuffixes.first(),
- ADSContext.getAdministrationSuffixDN()))
+ boolean noSchemaOrAds = false;
+ for (String s: availableSuffixes)
+ {
+ if (!Utils.areDnsEqual(s, ADSContext.getAdministrationSuffixDN()) &&
+ !Utils.areDnsEqual(s, Constants.SCHEMA_DN) &&
+ !Utils.areDnsEqual(s, Constants.REPLICATION_CHANGES_DN))
+ {
+ noSchemaOrAds = true;
+ }
+ }
+ if (!noSchemaOrAds)
{
// In interactive mode we do not propose to manage the
// administration suffix.
@@ -2750,7 +2802,7 @@
for (String dn : availableSuffixes)
{
if (!Utils.areDnsEqual(ADSContext.getAdministrationSuffixDN(),
- dn))
+ dn) && !Utils.areDnsEqual(Constants.SCHEMA_DN, dn))
{
if (confirm(INFO_REPLICATION_INITIALIZE_SUFFIX_PROMPT.get(dn)))
{
@@ -2959,6 +3011,12 @@
}
}
+ if (uData.replicateSchema())
+ {
+ baseDNs = uData.getBaseDNs();
+ baseDNs.add("cn=schema");
+ uData.setBaseDNs(baseDNs);
+ }
TopologyCache cache1 = null;
TopologyCache cache2 = null;
try
--
Gitblit v1.10.0