From f298aaee8802d3eaad4ff712ed088546586388d8 Mon Sep 17 00:00:00 2001
From: Jean-Noel Rouvignac <jean-noel.rouvignac@forgerock.com>
Date: Fri, 24 Oct 2014 09:47:16 +0000
Subject: [PATCH] More code cleanup of ReplicationCliMain Removed utility methods that are just forwarding to other utility methods. Removed methods that have been ported to com.forgerock.opendj.cli.Utils.
---
opendj3-server-dev/src/server/org/opends/server/tools/status/StatusCli.java | 13
opendj3-server-dev/src/guitools/org/opends/guitools/uninstaller/UninstallCliHelper.java | 7
opendj3-server-dev/src/ads/org/opends/admin/ads/ServerDescriptor.java | 147 +----
opendj3-server-dev/src/quicksetup/org/opends/quicksetup/installer/Installer.java | 89 +--
opendj3-server-dev/src/ads/org/opends/admin/ads/util/ConnectionUtils.java | 44 -
opendj3-server-dev/src/quicksetup/org/opends/quicksetup/util/Utils.java | 76 ---
opendj3-server-dev/src/ads/org/opends/admin/ads/util/ServerLoader.java | 114 ++--
opendj3-server-dev/src/quicksetup/org/opends/quicksetup/util/ServerController.java | 33
opendj3-server-dev/src/guitools/org/opends/guitools/controlpanel/ui/LocalOrRemotePanel.java | 5
opendj3-server-dev/src/guitools/org/opends/guitools/controlpanel/util/Utilities.java | 113 +---
opendj3-server-dev/src/guitools/org/opends/guitools/controlpanel/datamodel/ControlPanelInfo.java | 48 -
opendj3-server-dev/src/server/org/opends/server/admin/client/ldap/JNDIDirContextAdaptor.java | 93 +--
opendj3-server-dev/src/server/org/opends/server/tools/dsreplication/ReplicationCliMain.java | 628 ++++++++++----------------
13 files changed, 490 insertions(+), 920 deletions(-)
diff --git a/opendj3-server-dev/src/ads/org/opends/admin/ads/ServerDescriptor.java b/opendj3-server-dev/src/ads/org/opends/admin/ads/ServerDescriptor.java
index 4f75777..b87b352 100644
--- a/opendj3-server-dev/src/ads/org/opends/admin/ads/ServerDescriptor.java
+++ b/opendj3-server-dev/src/ads/org/opends/admin/ads/ServerDescriptor.java
@@ -24,7 +24,6 @@
* Copyright 2007-2010 Sun Microsystems, Inc.
* Portion Copyright 2013-2014 ForgeRock AS.
*/
-
package org.opends.admin.ads;
import java.util.ArrayList;
@@ -35,28 +34,32 @@
import java.util.Map;
import java.util.Set;
-import org.forgerock.i18n.LocalizableMessage;
-import org.forgerock.i18n.slf4j.LocalizedLogger;
-
+import javax.naming.NameAlreadyBoundException;
import javax.naming.NameNotFoundException;
import javax.naming.NamingEnumeration;
import javax.naming.NamingException;
-import javax.naming.NameAlreadyBoundException;
import javax.naming.directory.*;
import javax.naming.ldap.InitialLdapContext;
import javax.naming.ldap.LdapName;
import javax.naming.ldap.Rdn;
+import org.forgerock.i18n.LocalizableMessage;
+import org.forgerock.i18n.slf4j.LocalizedLogger;
import org.opends.admin.ads.util.ConnectionUtils;
import org.opends.quicksetup.Constants;
import org.opends.quicksetup.util.Utils;
import org.opends.server.schema.SchemaConstants;
+import static org.opends.admin.ads.util.ConnectionUtils.*;
+
/**
* The object of this class represent an OpenDS server.
*/
public class ServerDescriptor
{
+ private static final LocalizedLogger logger = LocalizedLogger.getLoggerForThisClass();
+ private static final String TRUSTSTORE_DN = "cn=ads-truststore";
+
private final Map<ADSContext.ServerProperty, Object> adsProperties =
new HashMap<ADSContext.ServerProperty, Object>();
private final Set<ReplicaDescriptor> replicas =
@@ -65,103 +68,61 @@
new HashMap<ServerProperty, Object>();
private TopologyCacheException lastException;
- private static final String TRUSTSTORE_DN = "cn=ads-truststore";
-
- private static final LocalizedLogger logger = LocalizedLogger.getLoggerForThisClass();
-
/**
* Enumeration containing the different server properties that we can keep in
* the ServerProperty object.
*/
public enum ServerProperty
{
- /**
- * The associated value is a String.
- */
+ /** The associated value is a String. */
HOST_NAME,
- /**
- * The associated value is an ArrayList of Integer.
- */
+ /** The associated value is an ArrayList of Integer. */
LDAP_PORT,
- /**
- * The associated value is an ArrayList of Integer.
- */
+ /** The associated value is an ArrayList of Integer. */
LDAPS_PORT,
- /**
- * The associated value is an Integer.
- */
+ /** The associated value is an Integer. */
ADMIN_PORT,
- /**
- * The associated value is an ArrayList of Boolean.
- */
+ /** The associated value is an ArrayList of Boolean. */
LDAP_ENABLED,
- /**
- * The associated value is an ArrayList of Boolean.
- */
+ /** The associated value is an ArrayList of Boolean. */
LDAPS_ENABLED,
- /**
- * The associated value is an ArrayList of Boolean.
- */
+ /** The associated value is an ArrayList of Boolean. */
ADMIN_ENABLED,
- /**
- * The associated value is an ArrayList of Boolean.
- */
+ /** The associated value is an ArrayList of Boolean. */
STARTTLS_ENABLED,
- /**
- * The associated value is an ArrayList of Integer.
- */
+ /** The associated value is an ArrayList of Integer. */
JMX_PORT,
- /**
- * The associated value is an ArrayList of Integer.
- */
+ /** The associated value is an ArrayList of Integer. */
JMXS_PORT,
- /**
- * The associated value is an ArrayList of Boolean.
- */
+ /** The associated value is an ArrayList of Boolean. */
JMX_ENABLED,
- /**
- * The associated value is an ArrayList of Boolean.
- */
+ /** The associated value is an ArrayList of Boolean. */
JMXS_ENABLED,
- /**
- * The associated value is an Integer.
- */
+ /** The associated value is an Integer. */
REPLICATION_SERVER_PORT,
- /**
- * The associated value is a Boolean.
- */
+ /** The associated value is a Boolean. */
IS_REPLICATION_SERVER,
- /**
- * The associated value is a Boolean.
- */
+ /** The associated value is a Boolean. */
IS_REPLICATION_ENABLED,
- /**
- * The associated value is a Boolean.
- */
+ /** The associated value is a Boolean. */
IS_REPLICATION_SECURE,
/**
* List of servers specified in the Replication Server configuration.
* This is a Set of String.
*/
EXTERNAL_REPLICATION_SERVERS,
- /**
- * The associated value is an Integer.
- */
+ /** The associated value is an Integer. */
REPLICATION_SERVER_ID,
/**
* The instance key-pair public-key certificate. The associated value is a
* byte[] (ds-cfg-public-key-certificate;binary).
*/
INSTANCE_PUBLIC_KEY_CERTIFICATE,
- /**
- * The schema generation ID.
- */
+ /** The schema generation ID. */
SCHEMA_GENERATION_ID
}
- /**
- * Default constructor.
- */
+ /** Default constructor. */
protected ServerDescriptor()
{
}
@@ -366,7 +327,7 @@
}
if (port != -1)
{
- ldapUrl = ConnectionUtils.getLDAPUrl(host, port, false);
+ ldapUrl = getLDAPUrl(host, port, false);
}
return ldapUrl;
}
@@ -403,7 +364,7 @@
}
if (port != -1)
{
- ldapsUrl = ConnectionUtils.getLDAPUrl(host, port, true);
+ ldapsUrl = getLDAPUrl(host, port, true);
}
return ldapsUrl;
}
@@ -440,7 +401,7 @@
}
if (port != -1)
{
- adminConnectorUrl = ConnectionUtils.getLDAPUrl(host, port, true);
+ adminConnectorUrl = getLDAPUrl(host, port, true);
}
return adminConnectorUrl;
}
@@ -782,14 +743,13 @@
{
ServerDescriptor desc = new ServerDescriptor();
-
- updateLdapConfiguration(desc, ctx, filter);
- updateAdminConnectorConfiguration(desc, ctx, filter);
- updateJmxConfiguration(desc, ctx, filter);
+ updateLdapConfiguration(desc, ctx);
+ updateAdminConnectorConfiguration(desc, ctx);
+ updateJmxConfiguration(desc, ctx);
updateReplicas(desc, ctx, filter);
updateReplication(desc, ctx, filter);
- updatePublicKeyCertificate(desc, ctx, filter);
- updateMiscellaneous(desc, ctx, filter);
+ updatePublicKeyCertificate(desc, ctx);
+ updateMiscellaneous(desc, ctx);
desc.serverProperties.put(ServerProperty.HOST_NAME,
ConnectionUtils.getHostName(ctx));
@@ -797,9 +757,8 @@
return desc;
}
- private static void updateLdapConfiguration(ServerDescriptor desc,
- InitialLdapContext ctx, TopologyCacheFilter cacheFilter)
- throws NamingException
+ private static void updateLdapConfiguration(ServerDescriptor desc, InitialLdapContext ctx)
+ throws NamingException
{
SearchControls ctls = new SearchControls();
ctls.setSearchScope(SearchControls.SUBTREE_SCOPE);
@@ -865,9 +824,8 @@
}
}
- private static void updateAdminConnectorConfiguration(ServerDescriptor desc,
- InitialLdapContext ctx, TopologyCacheFilter cacheFilter)
- throws NamingException
+ private static void updateAdminConnectorConfiguration(ServerDescriptor desc, InitialLdapContext ctx)
+ throws NamingException
{
SearchControls ctls = new SearchControls();
ctls.setSearchScope(SearchControls.SUBTREE_SCOPE);
@@ -911,9 +869,7 @@
}
}
- private static void updateJmxConfiguration(ServerDescriptor desc,
- InitialLdapContext ctx, TopologyCacheFilter cacheFilter)
- throws NamingException
+ private static void updateJmxConfiguration(ServerDescriptor desc, InitialLdapContext ctx) throws NamingException
{
SearchControls ctls = new SearchControls();
ctls.setSearchScope(SearchControls.SUBTREE_SCOPE);
@@ -1288,8 +1244,7 @@
@throws NamingException if unable to retrieve certificate from bound
instance.
*/
- private static void updatePublicKeyCertificate(ServerDescriptor desc,
- InitialLdapContext ctx, TopologyCacheFilter filter) throws NamingException
+ private static void updatePublicKeyCertificate(ServerDescriptor desc, InitialLdapContext ctx) throws NamingException
{
/* TODO: this DN is declared in some core constants file. Create a constants
file for the installer and import it into the core. */
@@ -1333,9 +1288,7 @@
}
}
- private static void updateMiscellaneous(ServerDescriptor desc,
- InitialLdapContext ctx, TopologyCacheFilter cacheFilter)
- throws NamingException
+ private static void updateMiscellaneous(ServerDescriptor desc, InitialLdapContext ctx) throws NamingException
{
SearchControls ctls = new SearchControls();
ctls.setSearchScope(SearchControls.OBJECT_SCOPE);
@@ -1494,22 +1447,6 @@
return v;
}
- /*
- * The following 2 methods are convenience methods to retrieve String values
- * from an entry.
- */
- private static String getFirstValue(SearchResult entry, String attrName)
- throws NamingException
- {
- return ConnectionUtils.getFirstValue(entry, attrName);
- }
-
- private static Set<String> getValues(SearchResult entry, String attrName)
- throws NamingException
- {
- return ConnectionUtils.getValues(entry, attrName);
- }
-
/**
* An convenience method to know if the provided ID corresponds to a
* configuration backend or not.
diff --git a/opendj3-server-dev/src/ads/org/opends/admin/ads/util/ConnectionUtils.java b/opendj3-server-dev/src/ads/org/opends/admin/ads/util/ConnectionUtils.java
index c3c3a69..b77aefa 100644
--- a/opendj3-server-dev/src/ads/org/opends/admin/ads/util/ConnectionUtils.java
+++ b/opendj3-server-dev/src/ads/org/opends/admin/ads/util/ConnectionUtils.java
@@ -55,6 +55,8 @@
import org.opends.server.replication.plugin.EntryHistorical;
import org.opends.server.schema.SchemaConstants;
+import com.forgerock.opendj.cli.Utils;
+
/**
* Class providing some utilities to create LDAP connections using JNDI and
* to manage entries retrieved using JNDI.
@@ -745,35 +747,6 @@
}
/**
- * Returns the String that can be used to represent a given host name in a
- * LDAP URL. This method must be used when we have IPv6 addresses (the address
- * in the LDAP URL must be enclosed with brackets).
- *
- * @param host
- * The host name.
- * @return The String that can be used to represent a given host name in a
- * LDAP URL.
- */
- public static String getHostNameForLdapUrl(String host)
- {
- if ((host != null) && host.indexOf(":") != -1)
- {
- // Assume an IPv6 address has been specified and adds the brackets
- // for the URL.
- host = host.trim();
- if (!host.startsWith("["))
- {
- host = "[" + host;
- }
- if (!host.endsWith("]"))
- {
- host = host + "]";
- }
- }
- return host;
- }
-
- /**
* Returns the LDAP URL for the provided parameters.
* @param host the host name.
* @param port the LDAP port.
@@ -782,17 +755,8 @@
*/
public static String getLDAPUrl(String host, int port, boolean useSSL)
{
- String ldapUrl;
- host = getHostNameForLdapUrl(host);
- if (useSSL)
- {
- ldapUrl = "ldaps://"+host+":"+port;
- }
- else
- {
- ldapUrl = "ldap://"+host+":"+port;
- }
- return ldapUrl;
+ host = Utils.getHostNameForLdapUrl(host);
+ return (useSSL ? "ldaps://" : "ldap://") + host + ":" + port;
}
/**
diff --git a/opendj3-server-dev/src/ads/org/opends/admin/ads/util/ServerLoader.java b/opendj3-server-dev/src/ads/org/opends/admin/ads/util/ServerLoader.java
index fc5e8d6..8880b91 100644
--- a/opendj3-server-dev/src/ads/org/opends/admin/ads/util/ServerLoader.java
+++ b/opendj3-server-dev/src/ads/org/opends/admin/ads/util/ServerLoader.java
@@ -24,16 +24,12 @@
* Copyright 2008-2010 Sun Microsystems, Inc.
* Portions Copyright 2013-2014 ForgeRock AS.
*/
-
package org.opends.admin.ads.util;
import java.util.LinkedHashSet;
import java.util.Map;
import java.util.Set;
-import org.forgerock.i18n.LocalizableMessage;
-import org.forgerock.i18n.slf4j.LocalizedLogger;
-
import javax.naming.AuthenticationException;
import javax.naming.NamingException;
import javax.naming.NoPermissionException;
@@ -41,13 +37,18 @@
import javax.naming.ldap.InitialLdapContext;
import javax.naming.ldap.LdapName;
+import org.forgerock.i18n.LocalizableMessage;
+import org.forgerock.i18n.slf4j.LocalizedLogger;
import org.opends.admin.ads.ADSContext;
+import org.opends.admin.ads.ADSContext.ServerProperty;
import org.opends.admin.ads.ServerDescriptor;
import org.opends.admin.ads.TopologyCacheException;
+import org.opends.admin.ads.TopologyCacheException.Type;
import org.opends.admin.ads.TopologyCacheFilter;
-import org.opends.admin.ads.ADSContext.ServerProperty;
-import static org.opends.server.util.StaticUtils.close;
+import com.forgerock.opendj.cli.Utils;
+
+import static org.opends.server.util.StaticUtils.*;
/**
* Class used to load the configuration of a server. Basically the code
@@ -129,9 +130,8 @@
return lastException;
}
- /**
- * {@inheritDoc}
- */
+ /** {@inheritDoc} */
+ @Override
public void interrupt()
{
if (!isOver)
@@ -158,6 +158,7 @@
/**
* The method where we try to generate the ServerDescriptor object.
*/
+ @Override
public void run()
{
lastException = null;
@@ -209,20 +210,11 @@
{
logger.warn(LocalizableMessage.raw(
"NamingException error reading server: "+getLastLdapUrl(), ne));
- if (ctx == null)
- {
- lastException =
- new TopologyCacheException(
- TopologyCacheException.Type.GENERIC_CREATING_CONNECTION, ne,
- trustManager, getLastLdapUrl());
- }
- else
- {
- lastException =
- new TopologyCacheException(
- TopologyCacheException.Type.GENERIC_READING_SERVER, ne,
- trustManager, getLastLdapUrl());
- }
+ Type type = ctx == null
+ ? TopologyCacheException.Type.GENERIC_CREATING_CONNECTION
+ : TopologyCacheException.Type.GENERIC_READING_SERVER;
+ lastException = new TopologyCacheException(
+ type, ne, trustManager, getLastLdapUrl());
}
catch (Throwable t)
{
@@ -311,15 +303,12 @@
*/
private String getLdapUrl(Map<ServerProperty,Object> serverProperties)
{
- String ldapUrl = null;
- Object v = serverProperties.get(ServerProperty.LDAP_ENABLED);
- boolean ldapEnabled = (v != null) && "true".equalsIgnoreCase(v.toString());
- if (ldapEnabled)
+ if (isLdapEnabled(serverProperties))
{
- ldapUrl = "ldap://"+getHostNameForLdapUrl(serverProperties)+":"+
- serverProperties.get(ServerProperty.LDAP_PORT);
+ return "ldap://" + getHostNameForLdapUrl(serverProperties) + ":"
+ + serverProperties.get(ServerProperty.LDAP_PORT);
}
- return ldapUrl;
+ return null;
}
/**
@@ -332,18 +321,12 @@
*/
private String getStartTlsLdapUrl(Map<ServerProperty,Object> serverProperties)
{
- String ldapUrl = null;
- Object v = serverProperties.get(ServerProperty.LDAP_ENABLED);
- boolean ldapEnabled = (v != null) && "true".equalsIgnoreCase(v.toString());
- v = serverProperties.get(ServerProperty.STARTTLS_ENABLED);
- boolean startTLSEnabled = (v != null) &&
- "true".equalsIgnoreCase(v.toString());
- if (ldapEnabled && startTLSEnabled)
+ if (isLdapEnabled(serverProperties) && isStartTlsEnabled(serverProperties))
{
- ldapUrl = "ldap://"+getHostNameForLdapUrl(serverProperties)+":"+
- serverProperties.get(ServerProperty.LDAP_PORT);
+ return "ldap://" + getHostNameForLdapUrl(serverProperties) + ":"
+ + serverProperties.get(ServerProperty.LDAP_PORT);
}
- return ldapUrl;
+ return null;
}
/**
@@ -356,15 +339,13 @@
*/
private String getLdapsUrl(Map<ServerProperty,Object> serverProperties)
{
- String ldapsUrl = null;
- Object v = serverProperties.get(ServerProperty.LDAPS_ENABLED);
- boolean ldapsEnabled = (v != null) && "true".equalsIgnoreCase(v.toString());
+ boolean ldapsEnabled = isLdapsEnabled(serverProperties);
if (ldapsEnabled)
{
- ldapsUrl = "ldaps://"+getHostNameForLdapUrl(serverProperties)+":"+
- serverProperties.get(ServerProperty.LDAPS_PORT);
+ return "ldaps://" + getHostNameForLdapUrl(serverProperties) + ":"
+ + serverProperties.get(ServerProperty.LDAPS_PORT);
}
- return ldapsUrl;
+ return null;
}
/**
@@ -378,26 +359,44 @@
private String getAdminConnectorUrl(
Map<ServerProperty,Object> serverProperties)
{
- String adminUrl = null;
boolean portDefined;
-
- Object v = serverProperties.get(ServerProperty.ADMIN_ENABLED);
- if ((v != null) && "true".equalsIgnoreCase(String.valueOf(v)))
+ if (isPropertyEnabled(serverProperties, ServerProperty.ADMIN_ENABLED))
{
- v = serverProperties.get(ServerProperty.ADMIN_PORT);
+ Object v = serverProperties.get(ServerProperty.ADMIN_PORT);
portDefined = v != null;
}
else
{
portDefined = false;
}
+
if (portDefined)
{
- adminUrl = "ldaps://"+getHostNameForLdapUrl(serverProperties)+":"+
- serverProperties.get(ServerProperty.ADMIN_PORT);
+ return "ldaps://" + getHostNameForLdapUrl(serverProperties) + ":"
+ + serverProperties.get(ServerProperty.ADMIN_PORT);
}
+ return null;
+ }
- return adminUrl;
+ private boolean isLdapEnabled(Map<ServerProperty, Object> serverProperties)
+ {
+ return isPropertyEnabled(serverProperties, ServerProperty.LDAP_ENABLED);
+ }
+
+ private boolean isLdapsEnabled(Map<ServerProperty, Object> serverProperties)
+ {
+ return isPropertyEnabled(serverProperties, ServerProperty.LDAPS_ENABLED);
+ }
+
+ private boolean isStartTlsEnabled(Map<ServerProperty, Object> serverProperties)
+ {
+ return isPropertyEnabled(serverProperties, ServerProperty.STARTTLS_ENABLED);
+ }
+
+ private boolean isPropertyEnabled(Map<ServerProperty, Object> serverProperties, ServerProperty property)
+ {
+ Object v = serverProperties.get(property);
+ return v != null && "true".equalsIgnoreCase(v.toString());
}
/**
@@ -411,7 +410,7 @@
Map<ServerProperty,Object> serverProperties)
{
String host = (String)serverProperties.get(ServerProperty.HOST_NAME);
- return ConnectionUtils.getHostNameForLdapUrl(host);
+ return Utils.getHostNameForLdapUrl(host);
}
/**
@@ -422,19 +421,18 @@
*/
private boolean isAdministratorDn()
{
- boolean isAdministratorDn = false;
try
{
LdapName theDn = new LdapName(dn);
LdapName containerDn =
new LdapName(ADSContext.getAdministratorContainerDN());
- isAdministratorDn = theDn.startsWith(containerDn);
+ return theDn.startsWith(containerDn);
}
catch (Throwable t)
{
logger.warn(LocalizableMessage.raw("Error parsing authentication DNs.", t));
}
- return isAdministratorDn;
+ return false;
}
/**
diff --git a/opendj3-server-dev/src/guitools/org/opends/guitools/controlpanel/datamodel/ControlPanelInfo.java b/opendj3-server-dev/src/guitools/org/opends/guitools/controlpanel/datamodel/ControlPanelInfo.java
index 5347b9d..8834ec3 100644
--- a/opendj3-server-dev/src/guitools/org/opends/guitools/controlpanel/datamodel/ControlPanelInfo.java
+++ b/opendj3-server-dev/src/guitools/org/opends/guitools/controlpanel/datamodel/ControlPanelInfo.java
@@ -27,8 +27,6 @@
package org.opends.guitools.controlpanel.datamodel;
-import static com.forgerock.opendj.util.OperatingSystem.isWindows;
-
import java.io.File;
import java.net.InetAddress;
import java.util.Collection;
@@ -67,6 +65,11 @@
import com.forgerock.opendj.cli.CliConstants;
+import static com.forgerock.opendj.cli.Utils.*;
+import static com.forgerock.opendj.util.OperatingSystem.*;
+
+import static org.opends.admin.ads.util.ConnectionUtils.*;
+
/**
* This is the classes that is shared among all the different places in the
* Control Panel. It contains information about the server status and
@@ -248,16 +251,14 @@
toRemove.add(i);
}
}
+
if (!toRemove.isEmpty())
{
boolean returnValue = modifiedIndexes.removeAll(toRemove);
indexModified(toRemove.iterator().next());
return returnValue;
}
- else
- {
- return false;
- }
+ return false;
}
/**
@@ -566,11 +567,11 @@
}
else if (lastRemoteAdministrationURL != null)
{
- ctx = Utils.createLdapsContext(lastRemoteAdministrationURL,
+ ctx = createLdapsContext(lastRemoteAdministrationURL,
lastWorkingBindDN,
lastWorkingBindPwd,
getConnectTimeout(), null,
- getTrustManager());
+ getTrustManager(), null);
}
}
catch (ConfigReadException cre)
@@ -819,7 +820,6 @@
regenerateDescriptor();
Thread.sleep(poolingPeriod);
}
-
}
catch (Throwable t)
{
@@ -944,10 +944,7 @@
// been called).
return localAdminConnectorURL;
}
- else
- {
- return adminConnectorURL;
- }
+ return adminConnectorURL;
}
/**
@@ -1033,9 +1030,7 @@
}
else
{
- url = sProtocol +"://"+
- ConnectionUtils.getHostNameForLdapUrl(server.getHostname())+
- ":"+port;
+ url = sProtocol + "://" + getHostNameForLdapUrl(server.getHostname()) + ":" + port;
}
}
}
@@ -1046,16 +1041,11 @@
if (server.isLocal())
{
InetAddress address = addresses.first();
- url = sProtocol +"://"+
- ConnectionUtils.getHostNameForLdapUrl(address.getHostAddress())+
- ":"+
- port;
+ url = sProtocol + "://" + getHostNameForLdapUrl(address.getHostAddress()) + ":" + port;
}
else
{
- url = sProtocol +"://"+
- ConnectionUtils.getHostNameForLdapUrl(server.getHostname())+
- ":"+port;
+ url = sProtocol + "://" + getHostNameForLdapUrl(server.getHostname()) + ":" + port;
}
}
}
@@ -1072,8 +1062,6 @@
* @return the Administration Connector URL.
*/
private static String getAdminConnectorURL(ServerDescriptor server) {
- String url = null;
-
ConnectionHandlerDescriptor desc = server.getAdminConnector();
if (desc != null)
{
@@ -1081,21 +1069,17 @@
SortedSet<InetAddress> addresses = desc.getAddresses();
if (addresses.size() == 0) {
if (port > 0) {
- url = ConnectionUtils.getLDAPUrl("localhost", port, true);
+ return getLDAPUrl("localhost", port, true);
}
} else {
if (port > 0) {
InetAddress address = addresses.first();
String a = address.getHostAddress();
- url = ConnectionUtils.getLDAPUrl(a, port, true);
+ return getLDAPUrl(a, port, true);
}
}
}
- else
- {
- url = null;
- }
- return url;
+ return null;
}
/**
diff --git a/opendj3-server-dev/src/guitools/org/opends/guitools/controlpanel/ui/LocalOrRemotePanel.java b/opendj3-server-dev/src/guitools/org/opends/guitools/controlpanel/ui/LocalOrRemotePanel.java
index af9e7c1..53307d1 100644
--- a/opendj3-server-dev/src/guitools/org/opends/guitools/controlpanel/ui/LocalOrRemotePanel.java
+++ b/opendj3-server-dev/src/guitools/org/opends/guitools/controlpanel/ui/LocalOrRemotePanel.java
@@ -79,6 +79,7 @@
import static com.forgerock.opendj.cli.Utils.*;
+import static org.opends.admin.ads.util.ConnectionUtils.*;
import static org.opends.messages.AdminToolMessages.*;
import static org.opends.messages.QuickSetupMessages.*;
@@ -583,10 +584,10 @@
{
usedUrl = ConnectionUtils.getLDAPUrl(hostName.getText().trim(),
new Integer(port.getText().trim()), true);
- ctx = Utils.createLdapsContext(usedUrl, dn.getText(),
+ ctx = createLdapsContext(usedUrl, dn.getText(),
String.valueOf(pwd.getPassword()),
getInfo().getConnectTimeout(), null,
- getInfo().getTrustManager());
+ getInfo().getTrustManager(), null);
checkVersion(ctx);
}
diff --git a/opendj3-server-dev/src/guitools/org/opends/guitools/controlpanel/util/Utilities.java b/opendj3-server-dev/src/guitools/org/opends/guitools/controlpanel/util/Utilities.java
index 0b5a3ef..b89e418 100644
--- a/opendj3-server-dev/src/guitools/org/opends/guitools/controlpanel/util/Utilities.java
+++ b/opendj3-server-dev/src/guitools/org/opends/guitools/controlpanel/util/Utilities.java
@@ -26,10 +26,6 @@
*/
package org.opends.guitools.controlpanel.util;
-import static org.opends.messages.AdminToolMessages.*;
-import static com.forgerock.opendj.util.OperatingSystem.isWindows;
-import static com.forgerock.opendj.util.OperatingSystem.isMacOS;
-
import java.awt.Color;
import java.awt.Component;
import java.awt.Container;
@@ -94,6 +90,9 @@
import javax.swing.table.TableColumn;
import javax.swing.table.TableColumnModel;
+import org.forgerock.i18n.LocalizableMessage;
+import org.forgerock.opendj.config.server.ConfigException;
+import org.forgerock.opendj.ldap.ByteString;
import org.opends.guitools.controlpanel.ControlPanel;
import org.opends.guitools.controlpanel.browser.IconPool;
import org.opends.guitools.controlpanel.datamodel.CategorizedComboBoxElement;
@@ -108,13 +107,8 @@
import org.opends.guitools.controlpanel.event.TextComponentFocusListener;
import org.opends.guitools.controlpanel.ui.ColorAndFontConstants;
import org.opends.guitools.controlpanel.ui.components.LabelWithHelpIcon;
-import org.opends.guitools.controlpanel.ui.components.
- SelectableLabelWithHelpIcon;
-import org.opends.guitools.controlpanel.ui.renderer.
- AccessibleTableHeaderRenderer;
-import org.forgerock.i18n.LocalizableMessage;
-import org.forgerock.opendj.config.server.ConfigException;
-import org.forgerock.opendj.ldap.ByteString;
+import org.opends.guitools.controlpanel.ui.components.SelectableLabelWithHelpIcon;
+import org.opends.guitools.controlpanel.ui.renderer.AccessibleTableHeaderRenderer;
import org.opends.quicksetup.Installation;
import org.opends.quicksetup.ui.UIFactory;
import org.opends.quicksetup.util.Utils;
@@ -133,8 +127,12 @@
import org.opends.server.util.ServerConstants;
import org.opends.server.util.StaticUtils;
+import static com.forgerock.opendj.cli.Utils.*;
+import static com.forgerock.opendj.util.OperatingSystem.*;
+
+import static org.opends.admin.ads.util.ConnectionUtils.*;
+import static org.opends.messages.AdminToolMessages.*;
import static org.opends.server.types.CommonSchemaElements.*;
-import static com.forgerock.opendj.cli.Utils.wrapText;
/**
* A static class that provides miscellaneous functions.
@@ -961,12 +959,7 @@
loader = ControlPanel.class.getClassLoader();
}
java.net.URL imgURL = loader.getResource(path);
- if (imgURL != null) {
- return new ImageIcon(imgURL);
- } else {
- System.err.println("Couldn't find file: " + path);
- return null;
- }
+ return imgURL != null ? new ImageIcon(imgURL) : null;
}
/**
@@ -1293,14 +1286,7 @@
{
parent = parent.getParent();
}
- if (parent != null)
- {
- return (JFrame)parent;
- }
- else
- {
- return null;
- }
+ return parent != null ? (JFrame) parent : null;
}
/**
@@ -1491,17 +1477,15 @@
*/
public static boolean areDnsEqual(String dn1, String dn2)
{
- boolean areDnsEqual = false;
try
{
LdapName name1 = new LdapName(dn1);
LdapName name2 = new LdapName(dn2);
- areDnsEqual = name1.equals(name2);
+ return name1.equals(name2);
} catch (Exception ex)
{
+ return false;
}
-
- return areDnsEqual;
}
@@ -2328,20 +2312,17 @@
ControlPanelInfo controlInfo, String bindDN, String pwd)
throws NamingException, ConfigReadException
{
- InitialLdapContext ctx;
String usedUrl = controlInfo.getAdminConnectorURL();
if (usedUrl == null)
{
throw new ConfigReadException(
ERR_COULD_NOT_FIND_VALID_LDAPURL.get());
}
- ctx = Utils.createLdapsContext(usedUrl,
- bindDN, pwd, controlInfo.getConnectTimeout(), null,
- controlInfo.getTrustManager());
- /*
- * Search for the config to check that it is the directory manager.
- */
+ InitialLdapContext ctx = createLdapsContext(usedUrl,
+ bindDN, pwd, controlInfo.getConnectTimeout(), null,
+ controlInfo.getTrustManager(), null);
+ // Search for the config to check that it is the directory manager.
checkCanReadConfig(ctx);
return ctx;
}
@@ -2386,9 +2367,9 @@
throw new ConfigReadException(
ERR_COULD_NOT_FIND_VALID_LDAPURL.get());
}
- ctx = Utils.createLdapsContext(usedUrl,
+ ctx = createLdapsContext(usedUrl,
bindDN, pwd, controlInfo.getConnectTimeout(), null,
- controlInfo.getTrustManager());
+ controlInfo.getTrustManager(), null);
}
else
{
@@ -2398,7 +2379,7 @@
throw new ConfigReadException(
ERR_COULD_NOT_FIND_VALID_LDAPURL.get());
}
- ctx = Utils.createLdapContext(usedUrl,
+ ctx = createLdapContext(usedUrl,
bindDN, pwd, controlInfo.getConnectTimeout(), null);
}
@@ -2597,24 +2578,21 @@
public static Object getFirstMonitoringValue(CustomSearchResult sr,
String attrName)
{
- Object o = null;
if (sr != null)
{
List<Object> values = sr.getAttributeValues(attrName);
- if ((values != null) && (values.size() > 0))
+ if (values != null && values.size() > 0)
{
- o = values.iterator().next();
+ Object o = values.iterator().next();
try
{
- Long l = Long.parseLong(o.toString());
- o = l;
+ return Long.parseLong(o.toString());
}
catch (Throwable t1)
{
try
{
- Double d = Double.parseDouble(o.toString());
- o = d;
+ return Double.parseDouble(o.toString());
}
catch (Throwable t2)
{
@@ -2622,7 +2600,7 @@
}
}
}
- return o;
+ return null;
}
/**
@@ -2634,41 +2612,37 @@
public static String getMonitoringValue(MonitoringAttributes attr,
CustomSearchResult monitoringEntry)
{
- String returnValue;
Object monitoringValue =
Utilities.getFirstMonitoringValue(monitoringEntry,
attr.getAttributeName());
if (monitoringValue == null)
{
- returnValue = NO_VALUE_SET.toString();
+ return NO_VALUE_SET.toString();
}
else if (isNotImplemented(attr, monitoringEntry))
{
- returnValue = NOT_IMPLEMENTED.toString();
+ return NOT_IMPLEMENTED.toString();
}
else if (attr.isNumericDate())
{
if("0".equals(monitoringValue.toString()))
{
- returnValue = NO_VALUE_SET.toString();
+ return NO_VALUE_SET.toString();
}
else
{
Long l = Long.parseLong(monitoringValue.toString());
Date date = new Date(l);
- returnValue = ConfigFromDirContext.formatter.format(date);
+ return ConfigFromDirContext.formatter.format(date);
}
}
else if (attr.isTime())
{
if("-1".equals(monitoringValue.toString()))
{
- returnValue = NO_VALUE_SET.toString();
+ return NO_VALUE_SET.toString();
}
- else
- {
- returnValue = monitoringValue.toString();
- }
+ return monitoringValue.toString();
}
else if (attr.isGMTDate())
{
@@ -2676,11 +2650,11 @@
{
Date date = ConfigFromDirContext.utcParser.parse(
monitoringValue.toString());
- returnValue = ConfigFromDirContext.formatter.format(date);
+ return ConfigFromDirContext.formatter.format(date);
}
catch (Throwable t)
{
- returnValue = monitoringValue.toString();
+ return monitoringValue.toString();
}
}
else if (attr.isValueInBytes())
@@ -2688,13 +2662,9 @@
Long l = Long.parseLong(monitoringValue.toString());
long mb = l / (1024 * 1024);
long kbs = (l - (mb * 1024 * 1024)) / 1024;
- returnValue = INFO_CTRL_PANEL_MEMORY_VALUE.get(mb , kbs).toString();
+ return INFO_CTRL_PANEL_MEMORY_VALUE.get(mb, kbs).toString();
}
- else
- {
- returnValue = monitoringValue.toString();
- }
- return returnValue;
+ return monitoringValue.toString();
}
/**
@@ -2708,7 +2678,6 @@
public static boolean isNotImplemented(MonitoringAttributes attr,
CustomSearchResult monitoringEntry)
{
- boolean returnValue;
Object monitoringValue = Utilities.getFirstMonitoringValue(
monitoringEntry,
attr.getAttributeName());
@@ -2717,18 +2686,14 @@
try
{
Long.parseLong(String.valueOf(monitoringValue));
- returnValue = false;
+ return false;
}
catch (Throwable t)
{
- returnValue = true;
+ return true;
}
}
- else
- {
- returnValue = false;
- }
- return returnValue;
+ return false;
}
/**
diff --git a/opendj3-server-dev/src/guitools/org/opends/guitools/uninstaller/UninstallCliHelper.java b/opendj3-server-dev/src/guitools/org/opends/guitools/uninstaller/UninstallCliHelper.java
index 4136989..3c0b10f 100644
--- a/opendj3-server-dev/src/guitools/org/opends/guitools/uninstaller/UninstallCliHelper.java
+++ b/opendj3-server-dev/src/guitools/org/opends/guitools/uninstaller/UninstallCliHelper.java
@@ -81,6 +81,7 @@
import static com.forgerock.opendj.cli.Utils.*;
import static org.forgerock.util.Utils.*;
+import static org.opends.admin.ads.util.ConnectionUtils.*;
import static org.opends.messages.AdminToolMessages.*;
import static org.opends.messages.QuickSetupMessages.*;
@@ -1128,9 +1129,7 @@
String ldapUrl = ConnectionUtils.getLDAPUrl(host, port, useSSL);
if (useSSL)
{
- ctx =
- Utils.createLdapsContext(ldapUrl, bindDn, pwd, connectTimeout, null,
- trustManager);
+ ctx = createLdapsContext(ldapUrl, bindDn, pwd, connectTimeout, null, trustManager, null);
}
else if (useStartTLS)
{
@@ -1140,7 +1139,7 @@
}
else
{
- ctx = Utils.createLdapContext(ldapUrl, bindDn, pwd, connectTimeout, null);
+ ctx = createLdapContext(ldapUrl, bindDn, pwd, connectTimeout, null);
}
if (!ConnectionUtils.connectedAsAdministrativeUser(ctx))
{
diff --git a/opendj3-server-dev/src/quicksetup/org/opends/quicksetup/installer/Installer.java b/opendj3-server-dev/src/quicksetup/org/opends/quicksetup/installer/Installer.java
index b9109e0..cc1a343 100644
--- a/opendj3-server-dev/src/quicksetup/org/opends/quicksetup/installer/Installer.java
+++ b/opendj3-server-dev/src/quicksetup/org/opends/quicksetup/installer/Installer.java
@@ -121,6 +121,9 @@
import static com.forgerock.opendj.cli.Utils.*;
import static org.forgerock.util.Utils.*;
+import static org.opends.admin.ads.ServerDescriptor.*;
+import static org.opends.admin.ads.ServerDescriptor.ServerProperty.*;
+import static org.opends.admin.ads.util.ConnectionUtils.*;
import static org.opends.messages.QuickSetupMessages.*;
import static org.opends.quicksetup.Step.*;
import static org.opends.quicksetup.util.Utils.*;
@@ -1517,9 +1520,6 @@
// Try to connect
DataReplicationOptions repl = getUserData().getReplicationOptions();
AuthenticationData auth = repl.getAuthenticationData();
- String ldapUrl = getLdapUrl(auth);
- String dn = auth.getDn();
- String pwd = auth.getPwd();
if (isVerbose())
{
notifyListeners(getFormattedWithPoints(
@@ -1527,18 +1527,7 @@
}
try
{
- if (auth.useSecureConnection())
- {
- ApplicationTrustManager trustManager = getTrustManager();
- trustManager.setHost(auth.getHostName());
- ctx = createLdapsContext(ldapUrl, dn, pwd,
- getConnectTimeout(), null, trustManager);
- }
- else
- {
- ctx = createLdapContext(ldapUrl, dn, pwd,
- getConnectTimeout(), null);
- }
+ ctx = createInitialLdapContext(auth);
ADSContext adsContext = new ADSContext(ctx);
if (createdRemoteAds)
@@ -1774,8 +1763,7 @@
}
for (ServerDescriptor server : lastLoadedCache.getServers())
{
- Object v = server.getServerProperties().get
- (ServerDescriptor.ServerProperty.REPLICATION_SERVER_ID);
+ Object v = server.getServerProperties().get(REPLICATION_SERVER_ID);
if (v != null)
{
knownReplicationServerIds.add((Integer)v);
@@ -1791,8 +1779,7 @@
for (ReplicaDescriptor replica : suffix.getReplicas())
{
knownServerIds.add(replica.getReplicationId());
- Object v = replica.getServer().getServerProperties().get
- (ServerDescriptor.ServerProperty.REPLICATION_SERVER_ID);
+ Object v = replica.getServer().getServerProperties().get(REPLICATION_SERVER_ID);
if (v != null)
{
knownReplicationServerIds.add((Integer)v);
@@ -1903,10 +1890,8 @@
for (ServerDescriptor server : hm.keySet())
{
notifyListeners(getFormattedWithPoints(
- INFO_PROGRESS_CONFIGURING_REPLICATION_REMOTE.get(
- getHostPort(server))));
- Integer v = (Integer)server.getServerProperties().get(
- ServerDescriptor.ServerProperty.REPLICATION_SERVER_PORT);
+ INFO_PROGRESS_CONFIGURING_REPLICATION_REMOTE.get(getHostPort(server))));
+ Integer v = (Integer)server.getServerProperties().get(REPLICATION_SERVER_PORT);
int replicationPort;
boolean enableSecureReplication;
if (v != null)
@@ -2348,7 +2333,7 @@
filter.setSearchMonitoringInformation(false);
filter.addBaseDNToSearch(ADSContext.getAdministrationSuffixDN());
filter.addBaseDNToSearch(Constants.SCHEMA_DN);
- ServerDescriptor s = ServerDescriptor.createStandalone(rCtx, filter);
+ ServerDescriptor s = createStandalone(rCtx, filter);
for (ReplicaDescriptor replica : s.getReplicas())
{
String dn = replica.getSuffix().getDN();
@@ -2432,7 +2417,7 @@
TopologyCacheFilter filter = new TopologyCacheFilter();
filter.setSearchMonitoringInformation(false);
filter.addBaseDNToSearch(dn);
- ServerDescriptor s = ServerDescriptor.createStandalone(rCtx, filter);
+ ServerDescriptor s = createStandalone(rCtx, filter);
for (ReplicaDescriptor r : s.getReplicas())
{
if (areDnsEqual(r.getSuffix().getDN(), dn))
@@ -2538,22 +2523,7 @@
{
if (isRemoteServer)
{
- /* In case the user specified an existing topology... */
- String ldapUrl = getLdapUrl(auth);
- String dn = auth.getDn();
- String pwd = auth.getPwd();
- if (auth.useSecureConnection())
- {
- ApplicationTrustManager trustManager = getTrustManager();
- trustManager.setHost(auth.getHostName());
- remoteCtx = createLdapsContext(ldapUrl, dn, pwd,
- getConnectTimeout(), null, trustManager);
- }
- else
- {
- remoteCtx = createLdapContext(ldapUrl, dn, pwd,
- getConnectTimeout(), null);
- }
+ remoteCtx = createInitialLdapContext(auth);
adsContext = new ADSContext(remoteCtx); // adsContext owns remoteCtx
/* Check the remote server for ADS. If it does not exist, create the
@@ -2570,8 +2540,7 @@
TopologyCacheFilter filter = new TopologyCacheFilter();
filter.setSearchMonitoringInformation(false);
filter.setSearchBaseDNInformation(false);
- ServerDescriptor server
- = ServerDescriptor.createStandalone(remoteCtx, filter);
+ ServerDescriptor server = createStandalone(remoteCtx, filter);
server.updateAdsPropertiesWithServerProperties();
adsContext.registerServer(server.getAdsProperties());
createdRemoteAds = true;
@@ -2606,8 +2575,7 @@
TopologyCacheFilter filter = new TopologyCacheFilter();
filter.setSearchMonitoringInformation(false);
filter.setSearchBaseDNInformation(false);
- ServerDescriptor server = ServerDescriptor.createStandalone(localCtx,
- filter);
+ ServerDescriptor server = createStandalone(localCtx, filter);
server.updateAdsPropertiesWithServerProperties();
if (0 == adsContext.registerOrUpdateServer(server.getAdsProperties())) {
if (isRemoteServer)
@@ -2620,8 +2588,7 @@
}
if (isRemoteServer)
{
- ServerDescriptor.seedAdsTrustStore(localCtx,
- adsContext.getTrustedCertificates());
+ seedAdsTrustStore(localCtx, adsContext.getTrustedCertificates());
}
if (isVerbose())
{
@@ -2695,6 +2662,22 @@
}
}
+ private InitialLdapContext createInitialLdapContext(AuthenticationData auth) throws NamingException
+ {
+ String ldapUrl = getLdapUrl(auth);
+ String dn = auth.getDn();
+ String pwd = auth.getPwd();
+
+ if (auth.useSecureConnection())
+ {
+ ApplicationTrustManager trustManager = getTrustManager();
+ trustManager.setHost(auth.getHostName());
+ return createLdapsContext(ldapUrl, dn, pwd,
+ getConnectTimeout(), null, trustManager, null);
+ }
+ return createLdapContext(ldapUrl, dn, pwd, getConnectTimeout(), null);
+ }
+
/**
* Tells whether we must create a suffix that we are not going to replicate
* with other servers or not.
@@ -3479,7 +3462,7 @@
try
{
ctx = createLdapsContext(ldapUrl, dn, pwd,
- getConnectTimeout(), null, trustManager);
+ getConnectTimeout(), null, trustManager, null);
}
catch (Throwable t)
{
@@ -3489,7 +3472,7 @@
dn = ADSContext.getAdministratorDN(dn);
effectiveDn[0] = dn;
ctx = createLdapsContext(ldapUrl, dn, pwd,
- getConnectTimeout(), null, trustManager);
+ getConnectTimeout(), null, trustManager, null);
}
else
{
@@ -4116,8 +4099,7 @@
type = SuffixesToReplicateOptions.Type.NEW_SUFFIX_IN_TOPOLOGY;
}
- ServerDescriptor s = ServerDescriptor.createStandalone(ctx,
- new TopologyCacheFilter());
+ ServerDescriptor s = createStandalone(ctx, new TopologyCacheFilter());
Set<ReplicaDescriptor> replicas = s.getReplicas();
for (ReplicaDescriptor replica : replicas)
{
@@ -4225,8 +4207,7 @@
for (ReplicaDescriptor replica : suffix.getReplicas())
{
ServerDescriptor server = replica.getServer();
- Object v = server.getServerProperties().get(
- ServerDescriptor.ServerProperty.IS_REPLICATION_SERVER);
+ Object v = server.getServerProperties().get(IS_REPLICATION_SERVER);
if (!Boolean.TRUE.equals(v))
{
AuthenticationData authData = new AuthenticationData();
@@ -4247,7 +4228,7 @@
String dn = getUserData().getDirectoryManagerDn();
String pwd = getUserData().getDirectoryManagerPwd();
return createLdapsContext(ldapUrl, dn, pwd,
- getConnectTimeout(), null, null);
+ getConnectTimeout(), null, null, null);
}
/**
diff --git a/opendj3-server-dev/src/quicksetup/org/opends/quicksetup/util/ServerController.java b/opendj3-server-dev/src/quicksetup/org/opends/quicksetup/util/ServerController.java
index a3d3941..fc84637 100644
--- a/opendj3-server-dev/src/quicksetup/org/opends/quicksetup/util/ServerController.java
+++ b/opendj3-server-dev/src/quicksetup/org/opends/quicksetup/util/ServerController.java
@@ -26,15 +26,18 @@
*/
package org.opends.quicksetup.util;
-import static org.opends.messages.QuickSetupMessages.*;
-import static com.forgerock.opendj.cli.ArgumentConstants.*;
-import static com.forgerock.opendj.util.OperatingSystem.isWindows;
-import static com.forgerock.opendj.cli.Utils.getThrowableMsg;
+import java.io.BufferedReader;
+import java.io.IOException;
+import java.io.InputStreamReader;
+import java.util.ArrayList;
+import java.util.Map;
+
+import javax.naming.NamingException;
+import javax.naming.ldap.InitialLdapContext;
import org.forgerock.i18n.LocalizableMessage;
import org.forgerock.i18n.LocalizableMessageBuilder;
import org.forgerock.i18n.slf4j.LocalizedLogger;
-import org.opends.admin.ads.util.ConnectionUtils;
import org.opends.quicksetup.*;
import org.opends.quicksetup.installer.InstallerHelper;
import org.opends.server.util.SetupUtils;
@@ -42,14 +45,12 @@
import com.forgerock.opendj.cli.CliConstants;
-import javax.naming.NamingException;
-import javax.naming.ldap.InitialLdapContext;
+import static com.forgerock.opendj.cli.ArgumentConstants.*;
+import static com.forgerock.opendj.cli.Utils.*;
+import static com.forgerock.opendj.util.OperatingSystem.*;
-import java.util.ArrayList;
-import java.util.Map;
-import java.io.BufferedReader;
-import java.io.InputStreamReader;
-import java.io.IOException;
+import static org.opends.admin.ads.util.ConnectionUtils.*;
+import static org.opends.messages.QuickSetupMessages.*;
/**
* Class used to manipulate an OpenDS server.
@@ -467,7 +468,7 @@
hostName = "0.0.0.0";
}
- hostName = ConnectionUtils.getHostNameForLdapUrl(hostName);
+ hostName = getHostNameForLdapUrl(hostName);
String ldapUrl = "ldaps://"+hostName+":" + port;
try
{
@@ -476,10 +477,8 @@
{
timeout = application.getUserData().getConnectTimeout();
}
- ctx = Utils.createLdapsContext(
- ldapUrl,
- userDn, userPw, timeout,
- null, null);
+ ctx = createLdapsContext(ldapUrl, userDn, userPw, timeout,
+ null, null, null);
connected = true;
}
catch (NamingException ne)
diff --git a/opendj3-server-dev/src/quicksetup/org/opends/quicksetup/util/Utils.java b/opendj3-server-dev/src/quicksetup/org/opends/quicksetup/util/Utils.java
index 8ee5cdc..98a3eb8 100644
--- a/opendj3-server-dev/src/quicksetup/org/opends/quicksetup/util/Utils.java
+++ b/opendj3-server-dev/src/quicksetup/org/opends/quicksetup/util/Utils.java
@@ -64,6 +64,7 @@
import static com.forgerock.opendj.util.OperatingSystem.*;
import static org.forgerock.util.Utils.*;
+import static org.opends.admin.ads.util.ConnectionUtils.*;
import static org.opends.messages.QuickSetupMessages.*;
import static org.opends.server.util.DynamicConstants.*;
@@ -709,66 +710,6 @@
}
/**
- * Creates a clear LDAP connection and returns the corresponding LdapContext.
- * This methods uses the specified parameters to create a JNDI environment
- * hashtable and creates an InitialLdapContext instance.
- *
- * @param ldapURL
- * the target LDAP URL
- * @param dn
- * passed as Context.SECURITY_PRINCIPAL if not null
- * @param pwd
- * passed as Context.SECURITY_CREDENTIALS if not null
- * @param timeout
- * passed as com.sun.jndi.ldap.connect.timeout if > 0
- * @param env
- * null or additional environment properties
- *
- * @throws NamingException
- * the exception thrown when instantiating InitialLdapContext
- *
- * @return the created InitialLdapContext.
- * @see javax.naming.Context
- * @see javax.naming.ldap.InitialLdapContext
- */
- public static InitialLdapContext createLdapContext(String ldapURL, String dn,
- String pwd, int timeout, Hashtable<String, String> env)
- throws NamingException
- {
- return ConnectionUtils.createLdapContext(ldapURL, dn, pwd, timeout, env);
- }
-
- /**
- * Creates an LDAPS connection and returns the corresponding LdapContext.
- * This method uses the TrusteSocketFactory class so that the specified
- * trust manager gets called during the SSL handshake. If trust manager is
- * null, certificates are not verified during SSL handshake.
- *
- * @param ldapsURL the target *LDAPS* URL.
- * @param dn passed as Context.SECURITY_PRINCIPAL if not null.
- * @param pwd passed as Context.SECURITY_CREDENTIALS if not null.
- * @param timeout passed as com.sun.jndi.ldap.connect.timeout if > 0.
- * @param env null or additional environment properties.
- * @param trustManager null or the trust manager to be invoked during SSL
- * negociation.
- *
- * @return the established connection with the given parameters.
- *
- * @throws NamingException the exception thrown when instantiating
- * InitialLdapContext.
- *
- * @see javax.naming.Context
- * @see javax.naming.ldap.InitialLdapContext
- * @see org.opends.admin.ads.util.TrustedSocketFactory
- */
- public static InitialLdapContext createLdapsContext(String ldapsURL,
- String dn, String pwd, int timeout, Hashtable<String, String> env,
- TrustManager trustManager) throws NamingException {
- return ConnectionUtils.createLdapsContext(ldapsURL, dn, pwd, timeout, env,
- trustManager, null);
- }
-
- /**
* Creates an LDAP+StartTLS connection and returns the corresponding
* LdapContext.
* This method first creates an LdapContext with anonymous bind. Then it
@@ -1060,21 +1001,6 @@
}
/**
- * Returns the String representation of the first value of an attribute in a
- * LDAP entry.
- * @param entry the entry.
- * @param attrName the attribute name.
- * @return the String representation of the first value of an attribute in a
- * LDAP entry.
- * @throws NamingException if there is an error processing the entry.
- */
- static public String getFirstValue(SearchResult entry, String attrName)
- throws NamingException
- {
- return ConnectionUtils.getFirstValue(entry, attrName);
- }
-
- /**
* Inserts HTML break tags into <code>d</code> breaking it up
* so that ideally no line is longer than <code>maxll</code>
* assuming no single word is longer then <code>maxll</code>.
diff --git a/opendj3-server-dev/src/server/org/opends/server/admin/client/ldap/JNDIDirContextAdaptor.java b/opendj3-server-dev/src/server/org/opends/server/admin/client/ldap/JNDIDirContextAdaptor.java
index 9935ecb..1aa4651 100644
--- a/opendj3-server-dev/src/server/org/opends/server/admin/client/ldap/JNDIDirContextAdaptor.java
+++ b/opendj3-server-dev/src/server/org/opends/server/admin/client/ldap/JNDIDirContextAdaptor.java
@@ -22,12 +22,10 @@
*
*
* Copyright 2008-2010 Sun Microsystems, Inc.
- * Portions Copyright 2013 ForgeRock AS
+ * Portions Copyright 2013-2014 ForgeRock AS
*/
package org.opends.server.admin.client.ldap;
-
-
import java.util.Collection;
import java.util.Hashtable;
import java.util.LinkedList;
@@ -48,14 +46,13 @@
import javax.naming.ldap.Rdn;
import org.opends.admin.ads.util.BlindTrustManager;
-import org.opends.admin.ads.util.ConnectionUtils;
import org.opends.admin.ads.util.TrustedSocketFactory;
import org.opends.server.admin.client.AuthenticationException;
import org.opends.server.admin.client.AuthenticationNotSupportedException;
import org.opends.server.admin.client.CommunicationException;
import org.opends.server.schema.SchemaConstants;
-
+import static com.forgerock.opendj.cli.Utils.*;
/**
* An LDAP connection adaptor which maps LDAP requests onto an
@@ -102,29 +99,12 @@
String name, String password) throws CommunicationException,
AuthenticationNotSupportedException, AuthenticationException {
Hashtable<String, Object> env = new Hashtable<String, Object>();
- env
- .put(Context.INITIAL_CONTEXT_FACTORY,
- "com.sun.jndi.ldap.LdapCtxFactory");
- String hostname = ConnectionUtils.getHostNameForLdapUrl(host) ;
+ env.put(Context.INITIAL_CONTEXT_FACTORY, "com.sun.jndi.ldap.LdapCtxFactory");
+ String hostname = getHostNameForLdapUrl(host);
env.put(Context.PROVIDER_URL, "ldap://" + hostname + ":" + port);
env.put(Context.SECURITY_PRINCIPAL, name);
env.put(Context.SECURITY_CREDENTIALS, password);
-
- DirContext ctx;
- try {
- ctx = new InitialLdapContext(env, null);
- } catch (javax.naming.CommunicationException e) {
- throw new CommunicationException(e);
- } catch (javax.naming.AuthenticationException e) {
- throw new AuthenticationException(e);
- } catch (javax.naming.AuthenticationNotSupportedException e) {
- throw new AuthenticationNotSupportedException(e);
- } catch (NamingException e) {
- // Assume some kind of communication problem.
- throw new CommunicationException(e);
- }
-
- return new JNDIDirContextAdaptor(ctx);
+ return createJNDIDirContextAdaptor(env);
}
/**
@@ -153,9 +133,8 @@
String name, String password) throws CommunicationException,
AuthenticationNotSupportedException, AuthenticationException {
Hashtable<String, Object> env = new Hashtable<String, Object>();
- env.put(Context.INITIAL_CONTEXT_FACTORY,
- "com.sun.jndi.ldap.LdapCtxFactory");
- String hostname = ConnectionUtils.getHostNameForLdapUrl(host) ;
+ env.put(Context.INITIAL_CONTEXT_FACTORY, "com.sun.jndi.ldap.LdapCtxFactory");
+ String hostname = getHostNameForLdapUrl(host);
env.put(Context.PROVIDER_URL, "ldaps://" + hostname + ":" + port);
env.put(Context.SECURITY_PRINCIPAL, name);
env.put(Context.SECURITY_CREDENTIALS, password);
@@ -164,8 +143,13 @@
env.put(Context.SECURITY_PROTOCOL, "ssl");
env.put("java.naming.ldap.factory.socket",
org.opends.admin.ads.util.TrustedSocketFactory.class.getName());
- TrustedSocketFactory.setCurrentThreadTrustManager(new BlindTrustManager(),
- null);
+ TrustedSocketFactory.setCurrentThreadTrustManager(new BlindTrustManager(), null);
+ return createJNDIDirContextAdaptor(env);
+ }
+
+ private static JNDIDirContextAdaptor createJNDIDirContextAdaptor(Hashtable<String, Object> env)
+ throws CommunicationException, AuthenticationException, AuthenticationNotSupportedException
+ {
DirContext ctx;
try {
ctx = new InitialLdapContext(env, null);
@@ -179,38 +163,29 @@
// Assume some kind of communication problem.
throw new CommunicationException(e);
}
-
return new JNDIDirContextAdaptor(ctx);
}
- // The JNDI connection context.
+ /** The JNDI connection context. */
private final DirContext dirContext;
-
-
- // Create a new JNDI connection adaptor using the provider JNDI
- // DirContext.
+ /**
+ * Create a new JNDI connection adaptor using the provider JNDI
+ * DirContext.
+ */
private JNDIDirContextAdaptor(DirContext dirContext) {
this.dirContext = dirContext;
}
-
-
- /**
- * {@inheritDoc}
- */
+ /** {@inheritDoc} */
@Override
public void createEntry(LdapName dn, Attributes attributes)
throws NamingException {
dirContext.createSubcontext(dn, attributes).close();
}
-
-
- /**
- * {@inheritDoc}
- */
+ /** {@inheritDoc} */
@Override
public void deleteSubtree(LdapName dn) throws NamingException {
// Delete the children first.
@@ -224,20 +199,16 @@
- /**
- * {@inheritDoc}
- */
+ /** {@inheritDoc} */
@Override
public boolean entryExists(LdapName dn) throws NamingException {
boolean entryExists = false;
String filter = "(objectClass=*)";
SearchControls controls = new SearchControls();
controls.setSearchScope(SearchControls.OBJECT_SCOPE);
- controls
- .setReturningAttributes(new String[] { SchemaConstants.NO_ATTRIBUTES });
+ controls.setReturningAttributes(new String[] { SchemaConstants.NO_ATTRIBUTES });
try {
- NamingEnumeration<SearchResult> results = dirContext.search(dn, filter,
- controls);
+ NamingEnumeration<SearchResult> results = dirContext.search(dn, filter, controls);
try
{
while (results.hasMore()) {
@@ -258,9 +229,7 @@
- /**
- * {@inheritDoc}
- */
+ /** {@inheritDoc} */
@Override
public Collection<LdapName> listEntries(LdapName dn, String filter)
throws NamingException {
@@ -293,9 +262,7 @@
- /**
- * {@inheritDoc}
- */
+ /** {@inheritDoc} */
@Override
public void modifyEntry(LdapName dn, Attributes mods) throws NamingException {
ModificationItem[] modList = new ModificationItem[mods.size()];
@@ -310,9 +277,7 @@
- /**
- * {@inheritDoc}
- */
+ /** {@inheritDoc} */
@Override
public Attributes readEntry(LdapName dn, Collection<String> attrIds)
throws NamingException {
@@ -322,9 +287,7 @@
- /**
- * {@inheritDoc}
- */
+ /** {@inheritDoc} */
@Override
public void unbind() {
try {
diff --git a/opendj3-server-dev/src/server/org/opends/server/tools/dsreplication/ReplicationCliMain.java b/opendj3-server-dev/src/server/org/opends/server/tools/dsreplication/ReplicationCliMain.java
index b2cba1f..c11b7da 100644
--- a/opendj3-server-dev/src/server/org/opends/server/tools/dsreplication/ReplicationCliMain.java
+++ b/opendj3-server-dev/src/server/org/opends/server/tools/dsreplication/ReplicationCliMain.java
@@ -78,7 +78,6 @@
import org.opends.admin.ads.ADSContext.AdministratorProperty;
import org.opends.admin.ads.ADSContext.ServerProperty;
import org.opends.admin.ads.util.ApplicationTrustManager;
-import org.opends.admin.ads.util.ConnectionUtils;
import org.opends.admin.ads.util.OpendsCertificateException;
import org.opends.admin.ads.util.PreferredConnection;
import org.opends.admin.ads.util.ServerLoader;
@@ -144,7 +143,11 @@
import static com.forgerock.opendj.util.OperatingSystem.*;
import static org.forgerock.util.Utils.*;
-import static org.opends.admin.ads.ServerDescriptor.*;
+import static org.opends.admin.ads.util.ConnectionUtils.*;
+import static org.opends.admin.ads.util.PreferredConnection.*;
+import static org.opends.admin.ads.ServerDescriptor.getReplicationServer;
+import static org.opends.admin.ads.ServerDescriptor.getServerRepresentation;
+import static org.opends.admin.ads.ServerDescriptor.getSuffixDisplay;
import static org.opends.messages.AdminToolMessages.*;
import static org.opends.messages.QuickSetupMessages.*;
import static org.opends.messages.ToolMessages.INFO_TASK_TOOL_TASK_SUCESSFULL;
@@ -598,8 +601,7 @@
* the Logger to be used to log the error message.
* @return the Global Administrator UID as provided by the user.
*/
- protected String askForAdministratorUID(String defaultValue,
- LocalizedLogger logger)
+ private String askForAdministratorUID(String defaultValue, LocalizedLogger logger)
{
try
{
@@ -619,7 +621,7 @@
* the Logger to be used to log the error message.
* @return the Global Administrator password as provided by the user.
*/
- protected String askForAdministratorPwd(LocalizedLogger logger)
+ private String askForAdministratorPwd(LocalizedLogger logger)
{
try
{
@@ -644,8 +646,7 @@
* the logger where the errors will be written.
* @return the value provided by the user.
*/
- protected int askInteger(LocalizableMessage prompt, int defaultValue,
- LocalizedLogger logger)
+ private int askInteger(LocalizableMessage prompt, int defaultValue, LocalizedLogger logger)
{
int newInt = -1;
while (newInt == -1)
@@ -1111,27 +1112,22 @@
throws NamingException
{
InitialLdapContext ctx;
- String ldapUrl = ConnectionUtils.getLDAPUrl(host, port, useSSL);
+ String ldapUrl = getLDAPUrl(host, port, useSSL);
if (useSSL)
{
- ctx =
- createLdapsContext(ldapUrl, bindDn, pwd, connectTimeout, null,
- trustManager);
+ ctx = createLdapsContext(ldapUrl, bindDn, pwd, connectTimeout, null, trustManager, null);
}
else if (useStartTLS)
{
- ctx =
- createStartTLSContext(ldapUrl, bindDn, pwd, connectTimeout,
- null, trustManager, null);
+ ctx = createStartTLSContext(ldapUrl, bindDn, pwd, connectTimeout, null, trustManager, null);
}
else
{
- ctx = ConnectionUtils.createLdapContext(ldapUrl, bindDn, pwd, connectTimeout, null);
+ ctx = createLdapContext(ldapUrl, bindDn, pwd, connectTimeout, null);
}
- if (!ConnectionUtils.connectedAsAdministrativeUser(ctx))
+ if (!connectedAsAdministrativeUser(ctx))
{
- throw new NoPermissionException(ERR_NOT_ADMINISTRATIVE_USER.get()
- .toString());
+ throw new NoPermissionException(ERR_NOT_ADMINISTRATIVE_USER.get().toString());
}
return ctx;
}
@@ -1148,7 +1144,7 @@
* @throws ClientException
* if there was an error establishing the connection.
*/
- protected InitialLdapContext createInitialLdapContextInteracting(
+ private InitialLdapContext createInitialLdapContextInteracting(
LDAPConnectionConsoleInteraction ci) throws ClientException
{
return createInitialLdapContextInteracting(ci, isInteractive()
@@ -1157,16 +1153,15 @@
private OpendsCertificateException getCertificateRootException(Throwable t)
{
- OpendsCertificateException oce = null;
- while (t != null && oce == null)
+ while (t != null)
{
t = t.getCause();
if (t instanceof OpendsCertificateException)
{
- oce = (OpendsCertificateException) t;
+ return (OpendsCertificateException) t;
}
}
- return oce;
+ return null;
}
/**
@@ -1183,13 +1178,13 @@
* @throws ClientException
* if there was an error establishing the connection.
*/
- protected InitialLdapContext createInitialLdapContextInteracting(
+ private InitialLdapContext createInitialLdapContextInteracting(
LDAPConnectionConsoleInteraction ci, boolean promptForCertificate)
throws ClientException
{
// Interact with the user though the console to get
// LDAP connection information
- String hostName = ConnectionUtils.getHostNameForLdapUrl(ci.getHostName());
+ String hostName = getHostNameForLdapUrl(ci.getHostName());
Integer portNumber = ci.getPortNumber();
String bindDN = ci.getBindDN();
String bindPassword = ci.getBindPassword();
@@ -1205,10 +1200,8 @@
{
try
{
- ctx =
- ConnectionUtils.createLdapsContext(ldapsUrl, bindDN,
- bindPassword, ci.getConnectTimeout(), null, trustManager,
- keyManager);
+ ctx = createLdapsContext(ldapsUrl, bindDN, bindPassword, ci.getConnectTimeout(),
+ null, trustManager, keyManager);
ctx.reconnect(null);
break;
}
@@ -1275,8 +1268,7 @@
{
try
{
- ctx =
- ConnectionUtils.createStartTLSContext(ldapUrl, bindDN,
+ ctx = createStartTLSContext(ldapUrl, bindDN,
bindPassword, CliConstants.DEFAULT_LDAP_CONNECT_TIMEOUT, null,
trustManager, keyManager, null);
ctx.reconnect(null);
@@ -1333,8 +1325,7 @@
{
try
{
- ctx =
- ConnectionUtils.createLdapContext(ldapUrl, bindDN, bindPassword,
+ ctx = createLdapContext(ldapUrl, bindDN, bindPassword,
CliConstants.DEFAULT_LDAP_CONNECT_TIMEOUT, null);
ctx.reconnect(null);
break;
@@ -1543,16 +1534,14 @@
{
isOver = true;
LocalizableMessage errorMsg;
- String server = ConnectionUtils.getHostPort(ctx);
- if (lastLogMsg == null)
+ String server = getHostPort(ctx);
+ if (lastLogMsg != null)
{
- errorMsg = INFO_ERROR_DURING_PURGE_HISTORICAL_NO_LOG.get(
- state, server);
+ errorMsg = INFO_ERROR_DURING_PURGE_HISTORICAL_LOG.get(lastLogMsg, state, server);
}
else
{
- errorMsg = INFO_ERROR_DURING_PURGE_HISTORICAL_LOG.get(
- lastLogMsg, state, server);
+ errorMsg = INFO_ERROR_DURING_PURGE_HISTORICAL_NO_LOG.get(state, server);
}
if (helper.isCompletedWithErrors(state))
@@ -2086,8 +2075,8 @@
boolean replicationServer1Configured = repPort1 > 0;
if (replicationServer1Configured && !configureReplicationServer1)
{
- final LocalizableMessage msg = INFO_REPLICATION_SERVER_CONFIGURED_WARNING_PROMPT.get(
- ConnectionUtils.getHostPort(ctx1), repPort1);
+ final LocalizableMessage msg =
+ INFO_REPLICATION_SERVER_CONFIGURED_WARNING_PROMPT.get(getHostPort(ctx1), repPort1);
if (!askConfirmation(msg, false))
{
cancelled = true;
@@ -2361,8 +2350,8 @@
boolean replicationServer2Configured = repPort2 > 0;
if (replicationServer2Configured && !configureReplicationServer2)
{
- final LocalizableMessage prompt = INFO_REPLICATION_SERVER_CONFIGURED_WARNING_PROMPT.get(
- ConnectionUtils.getHostPort(ctx2), repPort2);
+ final LocalizableMessage prompt =
+ INFO_REPLICATION_SERVER_CONFIGURED_WARNING_PROMPT.get(getHostPort(ctx2), repPort2);
if (!askConfirmation(prompt, false))
{
cancelled = true;
@@ -2713,8 +2702,7 @@
if (disableReplicationServer && repPort < 0)
{
disableReplicationServer = false;
- final LocalizableMessage msg =
- INFO_REPLICATION_PROMPT_NO_REPLICATION_SERVER_TO_DISABLE.get(ConnectionUtils.getHostPort(ctx));
+ final LocalizableMessage msg = INFO_REPLICATION_PROMPT_NO_REPLICATION_SERVER_TO_DISABLE.get(getHostPort(ctx));
try
{
cancelled = askConfirmation(msg, false, logger);
@@ -2747,8 +2735,8 @@
try
{
uData.setDisableReplicationServer(askConfirmation(
- INFO_REPLICATION_DISABLE_ALL_SUFFIXES_DISABLE_REPLICATION_SERVER.get(
- ConnectionUtils.getHostPort(ctx), repPort), true, logger));
+ INFO_REPLICATION_DISABLE_ALL_SUFFIXES_DISABLE_REPLICATION_SERVER.get(getHostPort(ctx), repPort), true,
+ logger));
}
catch (ClientException ce)
{
@@ -2895,7 +2883,7 @@
if (!cancelled)
{
// Ask for confirmation to initialize.
- String hostPortSource = ConnectionUtils.getHostPort(ctx);
+ String hostPortSource = getHostPort(ctx);
LocalizableMessage msg;
if (initializeADS(uData.getBaseDNs()))
{
@@ -3351,8 +3339,8 @@
if (!cancelled)
{
// Ask for confirmation to initialize.
- String hostPortSource = ConnectionUtils.getHostPort(ctxSource);
- String hostPortDestination = ConnectionUtils.getHostPort(ctxDestination);
+ String hostPortSource = getHostPort(ctxSource);
+ String hostPortDestination = getHostPort(ctxDestination);
LocalizableMessage msg;
if (initializeADS(uData.getBaseDNs()))
{
@@ -3765,10 +3753,10 @@
{
boolean cancelled = false;
boolean triedWithUserProvidedAdmin = false;
- String host = ConnectionUtils.getHostName(ctx[0]);
- int port = ConnectionUtils.getPort(ctx[0]);
- boolean isSSL = ConnectionUtils.isSSL(ctx[0]);
- boolean isStartTLS = ConnectionUtils.isStartTLS(ctx[0]);
+ String host = getHostName(ctx[0]);
+ int port = getPort(ctx[0]);
+ boolean isSSL = isSSL(ctx[0]);
+ boolean isStartTLS = isStartTLS(ctx[0]);
if (getTrustManager() == null)
{
// This is required when the user did connect to the server using SSL or
@@ -3792,8 +3780,7 @@
getTrustManager(), getConnectTimeout());
cache.getFilter().setSearchMonitoringInformation(false);
cache.getFilter().setSearchBaseDNInformation(false);
- cache.setPreferredConnections(
- PreferredConnection.getPreferredConnections(ctx[0]));
+ cache.setPreferredConnections(getPreferredConnections(ctx[0]));
cache.reloadTopology();
reloadTopology = false;
@@ -3868,8 +3855,7 @@
getConnectTimeout());
cache.getFilter().setSearchMonitoringInformation(false);
cache.getFilter().setSearchBaseDNInformation(false);
- cache.setPreferredConnections(
- PreferredConnection.getPreferredConnections(ctx[0]));
+ cache.setPreferredConnections(getPreferredConnections(ctx[0]));
connected = true;
}
catch (Throwable t)
@@ -4303,14 +4289,12 @@
if (!uData.configureReplicationServer1() && repPort1 > 0)
{
- println(INFO_REPLICATION_SERVER_CONFIGURED_WARNING.get(
- ConnectionUtils.getHostPort(ctx1), repPort1));
+ println(INFO_REPLICATION_SERVER_CONFIGURED_WARNING.get(getHostPort(ctx1), repPort1));
println();
}
if (!uData.configureReplicationServer2() && repPort2 > 0)
{
- println(INFO_REPLICATION_SERVER_CONFIGURED_WARNING.get(
- ConnectionUtils.getHostPort(ctx2), repPort2));
+ println(INFO_REPLICATION_SERVER_CONFIGURED_WARNING.get(getHostPort(ctx2), repPort2));
println();
}
}
@@ -4350,10 +4334,8 @@
&& time2 != -1
&& Math.abs(time1 - time2) > Installer.THRESHOLD_CLOCK_DIFFERENCE_WARNING * 60 * 1000)
{
- println(INFO_WARNING_SERVERS_CLOCK_DIFFERENCE.get(
- ConnectionUtils.getHostPort(ctx1),
- ConnectionUtils.getHostPort(ctx2),
- Installer.THRESHOLD_CLOCK_DIFFERENCE_WARNING));
+ println(INFO_WARNING_SERVERS_CLOCK_DIFFERENCE.get(getHostPort(ctx1), getHostPort(ctx2),
+ Installer.THRESHOLD_CLOCK_DIFFERENCE_WARNING));
}
println();
println(INFO_REPLICATION_POST_ENABLE_INFO.get("dsreplication", INITIALIZE_REPLICATION_SUBCMD_NAME));
@@ -4372,12 +4354,12 @@
{
final String host = isFirstSetOfValues ? uData.getHostName1() : uData.getHostName2();
final int port = isFirstSetOfValues ? uData.getPort1() : uData.getPort2();
+ final String bindDn = isFirstSetOfValues ? uData.getBindDn1() : uData.getBindDn2();
+ final String pwd = isFirstSetOfValues ? uData.getPwd1() : uData.getPwd2();
try
{
return createAdministrativeContext(
- host, port, useSSL, useStartTLS,
- isFirstSetOfValues ? uData.getBindDn1() : uData.getBindDn2(),
- isFirstSetOfValues ? uData.getPwd1() : uData.getPwd2(),
+ host, port, useSSL, useStartTLS, bindDn, pwd,
getConnectTimeout(), getTrustManager());
}
catch (NamingException ne)
@@ -4434,9 +4416,7 @@
!uData.disableAll())
{
uData.setDisableReplicationServer(false);
- println(
- INFO_REPLICATION_WARNING_NO_REPLICATION_SERVER_TO_DISABLE.get(
- ConnectionUtils.getHostPort(ctx)));
+ println(INFO_REPLICATION_WARNING_NO_REPLICATION_SERVER_TO_DISABLE.get(getHostPort(ctx)));
println();
}
}
@@ -4452,9 +4432,8 @@
{
// Inform the user that the replication server will not be disabled.
// Inform also of the user of the disableReplicationServerArg
- println(
- INFO_REPLICATION_DISABLE_ALL_SUFFIXES_KEEP_REPLICATION_SERVER.get(
- ConnectionUtils.getHostPort(ctx),
+ println(INFO_REPLICATION_DISABLE_ALL_SUFFIXES_KEEP_REPLICATION_SERVER.get(
+ getHostPort(ctx),
argParser.disableReplicationServerArg.getLongIdentifier(),
argParser.disableAllArg.getLongIdentifier()));
}
@@ -4558,9 +4537,8 @@
try
{
println();
- LocalizableMessage msg = formatter.getFormattedProgress(
- INFO_PROGRESS_INITIALIZING_SUFFIX.get(baseDN,
- ConnectionUtils.getHostPort(ctxSource)));
+ LocalizableMessage msg =
+ formatter.getFormattedProgress(INFO_PROGRESS_INITIALIZING_SUFFIX.get(baseDN, getHostPort(ctxSource)));
print(msg);
println();
initializeSuffix(baseDN, ctxSource, ctxDestination, true);
@@ -4644,8 +4622,7 @@
try
{
println();
- print(formatter.getFormattedProgress(
- INFO_PROGRESS_INITIALIZING_SUFFIX.get(baseDN, ConnectionUtils.getHostPort(ctx))));
+ print(formatter.getFormattedProgress(INFO_PROGRESS_INITIALIZING_SUFFIX.get(baseDN, getHostPort(ctx))));
println();
initializeAllSuffix(baseDN, ctx, true);
returnValue = SUCCESSFUL;
@@ -5344,10 +5321,7 @@
filter.setSearchMonitoringInformation(false);
filter.addBaseDNToSearch(ADSContext.getAdministrationSuffixDN());
filter.addBaseDNToSearch(Constants.SCHEMA_DN);
- for (String dn : uData.getBaseDNs())
- {
- filter.addBaseDNToSearch(dn);
- }
+ addBaseDNs(filter, uData.getBaseDNs());
ServerDescriptor server1 = createStandalone(ctx1, filter);
ServerDescriptor server2 = createStandalone(ctx2, filter);
@@ -5361,36 +5335,18 @@
final Set<LocalizableMessage> messages = new LinkedHashSet<LocalizableMessage>();
try
{
- final Set<PreferredConnection> cnx =
- new LinkedHashSet<PreferredConnection>();
- cnx.addAll(PreferredConnection.getPreferredConnections(ctx1));
- cnx.addAll(PreferredConnection.getPreferredConnections(ctx2));
- if (adsCtx1.hasAdminData())
+ final Set<PreferredConnection> cnx = new LinkedHashSet<PreferredConnection>();
+ cnx.addAll(getPreferredConnections(ctx1));
+ cnx.addAll(getPreferredConnections(ctx2));
+ TopologyCache cache1 = createTopologyCache(adsCtx1, cnx, uData);
+ if (cache1 != null)
{
- TopologyCache cache = new TopologyCache(adsCtx1, getTrustManager(),
- getConnectTimeout());
- cache.setPreferredConnections(cnx);
- cache.getFilter().setSearchMonitoringInformation(false);
- for (String dn : uData.getBaseDNs())
- {
- cache.getFilter().addBaseDNToSearch(dn);
- }
- cache.reloadTopology();
- messages.addAll(cache.getErrorMessages());
+ messages.addAll(cache1.getErrorMessages());
}
-
- if (adsCtx2.hasAdminData())
+ TopologyCache cache2 = createTopologyCache(adsCtx2, cnx, uData);
+ if (cache2 != null)
{
- TopologyCache cache = new TopologyCache(adsCtx2, getTrustManager(),
- getConnectTimeout());
- cache.setPreferredConnections(cnx);
- cache.getFilter().setSearchMonitoringInformation(false);
- for (String dn : uData.getBaseDNs())
- {
- cache.getFilter().addBaseDNToSearch(dn);
- }
- cache.reloadTopology();
- messages.addAll(cache.getErrorMessages());
+ messages.addAll(cache2.getErrorMessages());
}
}
catch (TopologyCacheException tce)
@@ -5665,10 +5621,8 @@
String arg = (t instanceof OpenDsException) ?
((OpenDsException)t).getMessageObject().toString() : t.toString();
throw new ReplicationCliException(
- ERR_REPLICATION_ENABLE_SEEDING_TRUSTSTORE.get(
- ConnectionUtils.getHostPort(ctxDestination),
- ConnectionUtils.getHostPort(adsCtxSource.getDirContext()),
- arg),
+ ERR_REPLICATION_ENABLE_SEEDING_TRUSTSTORE.get(getHostPort(ctxDestination),
+ getHostPort(adsCtxSource.getDirContext()), arg),
ERROR_SEEDING_TRUSTORE, t);
}
}
@@ -5691,41 +5645,23 @@
baseDNs.add(Constants.SCHEMA_DN);
uData.setBaseDNs(baseDNs);
}
+
TopologyCache cache1 = null;
TopologyCache cache2 = null;
-
try
{
- Set<PreferredConnection> cnx =
- new LinkedHashSet<PreferredConnection>();
- cnx.addAll(PreferredConnection.getPreferredConnections(ctx1));
- cnx.addAll(PreferredConnection.getPreferredConnections(ctx2));
- if (adsCtx1.hasAdminData())
+ Set<PreferredConnection> cnx = new LinkedHashSet<PreferredConnection>();
+ cnx.addAll(getPreferredConnections(ctx1));
+ cnx.addAll(getPreferredConnections(ctx2));
+ cache1 = createTopologyCache(adsCtx1, cnx, uData);
+ if (cache1 != null)
{
- cache1 = new TopologyCache(adsCtx1, getTrustManager(),
- getConnectTimeout());
- cache1.setPreferredConnections(cnx);
- cache1.getFilter().setSearchMonitoringInformation(false);
- for (String dn : uData.getBaseDNs())
- {
- cache1.getFilter().addBaseDNToSearch(dn);
- }
- cache1.reloadTopology();
usedReplicationServerIds.addAll(getReplicationServerIds(cache1));
}
-
- if (adsCtx2.hasAdminData())
+ cache2 = createTopologyCache(adsCtx2, cnx, uData);
+ if (cache1 != null)
{
- cache2 = new TopologyCache(adsCtx2, getTrustManager(),
- getConnectTimeout());
- cache2.setPreferredConnections(cnx);
- cache2.getFilter().setSearchMonitoringInformation(false);
- for (String dn : uData.getBaseDNs())
- {
- cache2.getFilter().addBaseDNToSearch(dn);
- }
- cache2.reloadTopology();
- usedReplicationServerIds.addAll(getReplicationServerIds(cache2));
+ usedReplicationServerIds.addAll(getReplicationServerIds(cache1));
}
}
catch (ADSContextException adce)
@@ -5748,8 +5684,7 @@
}
else if (uData.configureReplicationServer1())
{
- twoReplServers.add(getReplicationServer(
- ConnectionUtils.getHostName(ctx1), uData.getReplicationPort1()));
+ twoReplServers.add(getReplicationServer(getHostName(ctx1), uData.getReplicationPort1()));
}
if (server2.isReplicationServer())
{
@@ -5758,8 +5693,7 @@
}
else if (uData.configureReplicationServer2())
{
- twoReplServers.add(getReplicationServer(
- ConnectionUtils.getHostName(ctx2), uData.getReplicationPort2()));
+ twoReplServers.add(getReplicationServer(getHostName(ctx2), uData.getReplicationPort2()));
}
for (String baseDN : uData.getBaseDNs())
@@ -5806,7 +5740,7 @@
catch (OpenDsException ode)
{
throw new ReplicationCliException(
- getMessageForReplicationServerException(ConnectionUtils.getHostPort(ctx1)),
+ getMessageForReplicationServerException(getHostPort(ctx1)),
ERROR_CONFIGURING_REPLICATIONSERVER, ode);
}
}
@@ -5819,7 +5753,7 @@
catch (OpenDsException ode)
{
throw new ReplicationCliException(
- getMessageForReplicationServerException(ConnectionUtils.getHostPort(ctx1)),
+ getMessageForReplicationServerException(getHostPort(ctx1)),
ERROR_CONFIGURING_REPLICATIONSERVER, ode);
}
if (argParser.replicationPort1Arg.isPresent()
@@ -5846,7 +5780,7 @@
catch (OpenDsException ode)
{
throw new ReplicationCliException(
- getMessageForReplicationServerException(ConnectionUtils.getHostPort(ctx1)),
+ getMessageForReplicationServerException(getHostPort(ctx1)),
ERROR_CONFIGURING_REPLICATIONSERVER, ode);
}
}
@@ -5859,7 +5793,7 @@
catch (OpenDsException ode)
{
throw new ReplicationCliException(
- getMessageForReplicationServerException(ConnectionUtils.getHostPort(ctx1)),
+ getMessageForReplicationServerException(getHostPort(ctx1)),
ERROR_CONFIGURING_REPLICATIONSERVER, ode);
}
if (argParser.replicationPort2Arg.isPresent()
@@ -5890,7 +5824,7 @@
}
catch (OpenDsException ode)
{
- LocalizableMessage msg = getMessageForEnableException(ConnectionUtils.getHostPort(ctx1), baseDN);
+ LocalizableMessage msg = getMessageForEnableException(getHostPort(ctx1), baseDN);
throw new ReplicationCliException(msg,
ERROR_ENABLING_REPLICATION_ON_BASEDN, ode);
}
@@ -5906,7 +5840,7 @@
}
catch (OpenDsException ode)
{
- LocalizableMessage msg = getMessageForEnableException(ConnectionUtils.getHostPort(ctx2), baseDN);
+ LocalizableMessage msg = getMessageForEnableException(getHostPort(ctx2), baseDN);
throw new ReplicationCliException(msg,
ERROR_ENABLING_REPLICATION_ON_BASEDN, ode);
}
@@ -5934,9 +5868,7 @@
if (adsMergeDone)
{
PointAdder pointAdder = new PointAdder(this);
- print(
- INFO_ENABLE_REPLICATION_INITIALIZING_ADS_ALL.get(
- ConnectionUtils.getHostPort(ctxSource)));
+ print(INFO_ENABLE_REPLICATION_INITIALIZING_ADS_ALL.get(getHostPort(ctxSource)));
pointAdder.start();
try
{
@@ -5955,8 +5887,7 @@
{
print(formatter.getFormattedWithPoints(
INFO_ENABLE_REPLICATION_INITIALIZING_ADS.get(
- ConnectionUtils.getHostPort(ctxDestination),
- ConnectionUtils.getHostPort(ctxSource))));
+ getHostPort(ctxDestination), getHostPort(ctxSource))));
initializeSuffix(ADSContext.getAdministrationSuffixDN(), ctxSource,
ctxDestination, false);
@@ -5980,10 +5911,8 @@
if (adsMergeDone)
{
PointAdder pointAdder = new PointAdder(this);
- println(
- INFO_ENABLE_REPLICATION_INITIALIZING_SCHEMA.get(
- ConnectionUtils.getHostPort(ctxDestination),
- ConnectionUtils.getHostPort(ctxSource)));
+ println(INFO_ENABLE_REPLICATION_INITIALIZING_SCHEMA.get(
+ getHostPort(ctxDestination), getHostPort(ctxSource)));
pointAdder.start();
try
{
@@ -5997,18 +5926,30 @@
}
else
{
- print(formatter.getFormattedWithPoints(
- INFO_ENABLE_REPLICATION_INITIALIZING_SCHEMA.get(
- ConnectionUtils.getHostPort(ctxDestination),
- ConnectionUtils.getHostPort(ctxSource))));
- initializeSuffix(Constants.SCHEMA_DN, ctxSource,
- ctxDestination, false);
+ print(formatter.getFormattedWithPoints(INFO_ENABLE_REPLICATION_INITIALIZING_SCHEMA.get(
+ getHostPort(ctxDestination), getHostPort(ctxSource))));
+ initializeSuffix(Constants.SCHEMA_DN, ctxSource, ctxDestination, false);
}
print(formatter.getFormattedDone());
println();
}
}
+ private TopologyCache createTopologyCache(ADSContext adsCtx, Set<PreferredConnection> cnx, ReplicationUserData uData)
+ throws ADSContextException, TopologyCacheException
+ {
+ if (adsCtx.hasAdminData())
+ {
+ TopologyCache cache = new TopologyCache(adsCtx, getTrustManager(), getConnectTimeout());
+ cache.setPreferredConnections(cnx);
+ cache.getFilter().setSearchMonitoringInformation(false);
+ addBaseDNs(cache.getFilter(), uData.getBaseDNs());
+ cache.reloadTopology();
+ return cache;
+ }
+ return null;
+ }
+
private ServerDescriptor createStandalone(InitialLdapContext ctx, TopologyCacheFilter filter)
throws ReplicationCliException
{
@@ -6019,7 +5960,7 @@
catch (NamingException ne)
{
throw new ReplicationCliException(
- getMessageForException(ne, ConnectionUtils.getHostPort(ctx)),
+ getMessageForException(ne, getHostPort(ctx)),
ERROR_READING_CONFIGURATION, ne);
}
}
@@ -6040,10 +5981,7 @@
if (!uData.disableAll())
{
filter.addBaseDNToSearch(ADSContext.getAdministrationSuffixDN());
- for (String dn : uData.getBaseDNs())
- {
- filter.addBaseDNToSearch(dn);
- }
+ addBaseDNs(filter, uData.getBaseDNs());
}
ServerDescriptor server = createStandalone(ctx, filter);
@@ -6059,15 +5997,11 @@
{
cache = new TopologyCache(adsCtx, getTrustManager(),
getConnectTimeout());
- cache.setPreferredConnections(
- PreferredConnection.getPreferredConnections(ctx));
+ cache.setPreferredConnections(getPreferredConnections(ctx));
cache.getFilter().setSearchMonitoringInformation(false);
if (!uData.disableAll())
{
- for (String dn : uData.getBaseDNs())
- {
- cache.getFilter().addBaseDNToSearch(dn);
- }
+ addBaseDNs(cache.getFilter(), uData.getBaseDNs());
}
cache.reloadTopology();
}
@@ -6352,7 +6286,7 @@
}
catch (OpenDsException ode)
{
- LocalizableMessage msg = getMessageForDisableException(ConnectionUtils.getHostPort(ctx), baseDN);
+ LocalizableMessage msg = getMessageForDisableException(getHostPort(ctx), baseDN);
throw new ReplicationCliException(msg,
ERROR_DISABLING_REPLICATION_ON_BASEDN, ode);
}
@@ -6390,13 +6324,13 @@
}
}
}
- String bindDn = ConnectionUtils.getBindDN(ctx);
- String pwd = ConnectionUtils.getBindPassword(ctx);
+ String bindDn = getBindDN(ctx);
+ String pwd = getBindPassword(ctx);
for (ServerDescriptor s : serversToUpdate)
{
removeReferencesInServer(s, replicationServerHostPort, bindDn, pwd,
baseDNsToUpdate, disableReplicationServer,
- PreferredConnection.getPreferredConnections(ctx));
+ getPreferredConnections(ctx));
}
if (disableReplicationServer)
@@ -6458,6 +6392,14 @@
}
}
+ private void addBaseDNs(TopologyCacheFilter filter, List<String> baseDNs)
+ {
+ for (String dn : baseDNs)
+ {
+ filter.addBaseDNToSearch(dn);
+ }
+ }
+
/**
* Displays the replication status of the different base DNs in the servers
* registered in the ADS.
@@ -6475,14 +6417,9 @@
TopologyCache cache;
try
{
- cache = new TopologyCache(adsCtx, getTrustManager(),
- getConnectTimeout());
- cache.setPreferredConnections(
- PreferredConnection.getPreferredConnections(ctx));
- for (String dn : uData.getBaseDNs())
- {
- cache.getFilter().addBaseDNToSearch(dn);
- }
+ cache = new TopologyCache(adsCtx, getTrustManager(), getConnectTimeout());
+ cache.setPreferredConnections(getPreferredConnections(ctx));
+ addBaseDNs(cache.getFilter(), uData.getBaseDNs());
cache.reloadTopology();
}
catch (TopologyCacheException tce)
@@ -6583,8 +6520,7 @@
}
if (!rServers.isEmpty())
{
- displayStatus(rServers, uData.isScriptFriendly(),
- PreferredConnection.getPreferredConnections(ctx));
+ displayStatus(rServers, uData.isScriptFriendly(), getPreferredConnections(ctx));
somethingDisplayed = true;
}
}
@@ -6617,7 +6553,7 @@
Set<ServerDescriptor> serversWithNoReplica =
new HashSet<ServerDescriptor>();
displayStatus(orderedReplicaLists, uData.isScriptFriendly(),
- PreferredConnection.getPreferredConnections(ctx),
+ getPreferredConnections(ctx),
cache.getServers(),
replicasWithNoReplicationServer, serversWithNoReplica);
somethingDisplayed = true;
@@ -6690,13 +6626,13 @@
{
for (ReplicaDescriptor replica : replicas)
{
- hostPorts.add(getHostPort(replica.getServer(), cnx));
+ hostPorts.add(getHostPort2(replica.getServer(), cnx));
}
for (String hostPort : hostPorts)
{
for (ReplicaDescriptor replica : replicas)
{
- if (getHostPort(replica.getServer(), cnx).equals(hostPort))
+ if (getHostPort2(replica.getServer(), cnx).equals(hostPort))
{
orderedReplicas.add(replica);
}
@@ -6759,7 +6695,7 @@
tableBuilder.appendCell(LocalizableMessage.raw(replica.getSuffix().getDN()));
// Server port
tableBuilder.appendCell(
- LocalizableMessage.raw(getHostPort(replica.getServer(), cnx)));
+ LocalizableMessage.raw(getHostPort2(replica.getServer(), cnx)));
// Number of entries
int nEntries = replica.getEntries();
if (nEntries >= 0)
@@ -6852,10 +6788,8 @@
// Suffix DN
tableBuilder.appendCell(EMPTY_MSG);
-
// Server port
- tableBuilder.appendCell(LocalizableMessage.raw(getHostPort(server, cnx)));
-
+ tableBuilder.appendCell(LocalizableMessage.raw(getHostPort2(server, cnx)));
// Number of entries
if (scriptFriendly)
{
@@ -6959,7 +6893,7 @@
{
tableBuilder.startRow();
// Server port
- tableBuilder.appendCell(LocalizableMessage.raw(getHostPort(server, cnx)));
+ tableBuilder.appendCell(LocalizableMessage.raw(getHostPort2(server, cnx)));
// Replication port
int replicationPort = server.getReplicationServerPort();
if (replicationPort >= 0)
@@ -7183,8 +7117,7 @@
Set<Integer> usedReplicationServerIds) throws OpenDsException
{
print(formatter.getFormattedWithPoints(
- INFO_REPLICATION_ENABLE_CONFIGURING_REPLICATION_SERVER.get(
- ConnectionUtils.getHostPort(ctx))));
+ INFO_REPLICATION_ENABLE_CONFIGURING_REPLICATION_SERVER.get(getHostPort(ctx))));
ManagementContext mCtx = LDAPManagementContext.createFromContext(
JNDIDirContextAdaptor.adapt(ctx));
@@ -7201,8 +7134,7 @@
}
catch (ManagedObjectNotFoundException monfe)
{
- logger.info(LocalizableMessage.raw("Synchronization server does not exist in "+
- ConnectionUtils.getHostPort(ctx)));
+ logger.info(LocalizableMessage.raw("Synchronization server does not exist in " + getHostPort(ctx)));
}
if (sync == null)
{
@@ -7286,8 +7218,7 @@
Set<String> replicationServers) throws OpenDsException
{
print(formatter.getFormattedWithPoints(
- INFO_REPLICATION_ENABLE_UPDATING_REPLICATION_SERVER.get(
- ConnectionUtils.getHostPort(ctx))));
+ INFO_REPLICATION_ENABLE_UPDATING_REPLICATION_SERVER.get(getHostPort(ctx))));
ManagementContext mCtx = LDAPManagementContext.createFromContext(
JNDIDirContextAdaptor.adapt(ctx));
@@ -7367,14 +7298,12 @@
ADSContext.getAdministrationSuffixDN()))
{
print(formatter.getFormattedWithPoints(
- INFO_REPLICATION_ENABLE_CONFIGURING_ADS.get(
- ConnectionUtils.getHostPort(ctx))));
+ INFO_REPLICATION_ENABLE_CONFIGURING_ADS.get(getHostPort(ctx))));
}
else
{
print(formatter.getFormattedWithPoints(
- INFO_REPLICATION_ENABLE_CONFIGURING_BASEDN.get(baseDN,
- ConnectionUtils.getHostPort(ctx))));
+ INFO_REPLICATION_ENABLE_CONFIGURING_BASEDN.get(baseDN, getHostPort(ctx))));
}
ManagementContext mCtx = LDAPManagementContext.createFromContext(
JNDIDirContextAdaptor.adapt(ctx));
@@ -7523,13 +7452,13 @@
}
catch (NamingException ne)
{
- String hostPort = getHostPort(s, cache.getPreferredConnections());
+ String hostPort = getHostPort2(s, cache.getPreferredConnections());
LocalizableMessage msg = getMessageForException(ne, hostPort);
throw new ReplicationCliException(msg, ERROR_CONNECTING, ne);
}
catch (OpenDsException ode)
{
- String hostPort = getHostPort(s, cache.getPreferredConnections());
+ String hostPort = getHostPort2(s, cache.getPreferredConnections());
LocalizableMessage msg = getMessageForEnableException(hostPort, baseDN);
throw new ReplicationCliException(msg,
ERROR_ENABLING_REPLICATION_ON_BASEDN, ode);
@@ -7573,8 +7502,7 @@
TopologyCacheFilter filter = new TopologyCacheFilter();
filter.setSearchMonitoringInformation(false);
filter.addBaseDNToSearch(baseDN);
- ServerDescriptor source = ServerDescriptor.createStandalone(ctxSource,
- filter);
+ ServerDescriptor source = ServerDescriptor.createStandalone(ctxSource, filter);
for (ReplicaDescriptor replica : source.getReplicas())
{
if (areDnsEqual(replica.getSuffix().getDN(), baseDN))
@@ -7586,7 +7514,7 @@
}
catch (NamingException ne)
{
- String hostPort = ConnectionUtils.getHostPort(ctxSource);
+ String hostPort = getHostPort(ctxSource);
LocalizableMessage msg = getMessageForException(ne, hostPort);
throw new ReplicationCliException(msg, ERROR_READING_CONFIGURATION, ne);
}
@@ -7594,8 +7522,7 @@
if (replicationId == -1)
{
throw new ReplicationCliException(
- ERR_INITIALIZING_REPLICATIONID_NOT_FOUND.get(
- ConnectionUtils.getHostPort(ctxSource), baseDN),
+ ERR_INITIALIZING_REPLICATIONID_NOT_FOUND.get(getHostPort(ctxSource), baseDN),
REPLICATIONID_NOT_FOUND, null);
}
@@ -7622,7 +7549,7 @@
try
{
installer.initializeSuffix(ctxDestination, replicationId, baseDN,
- displayProgress, ConnectionUtils.getHostPort(ctxSource));
+ displayProgress, getHostPort(ctxSource));
initDone = true;
}
catch (PeerNotFoundException pnfe)
@@ -7824,7 +7751,7 @@
{
isOver = true;
LocalizableMessage errorMsg;
- String server = ConnectionUtils.getHostPort(ctx);
+ String server = getHostPort(ctx);
if (lastLogMsg == null)
{
errorMsg = isPre
@@ -7899,7 +7826,7 @@
int i = 1;
boolean isOver = false;
String dn = null;
- String serverDisplay = ConnectionUtils.getHostPort(ctx);
+ String serverDisplay = getHostPort(ctx);
BasicAttributes attrs = new BasicAttributes();
Attribute oc = new BasicAttribute("objectclass");
oc.add("top");
@@ -8188,7 +8115,7 @@
try
{
ctx = loader.createContext();
- hostPort = ConnectionUtils.getHostPort(ctx);
+ hostPort = getHostPort(ctx);
ManagementContext mCtx = LDAPManagementContext.createFromContext(
JNDIDirContextAdaptor.adapt(ctx));
RootCfgClient root = mCtx.getRootConfiguration();
@@ -8275,7 +8202,7 @@
}
catch (NamingException ne)
{
- hostPort = getHostPort(server, cnx);
+ hostPort = getHostPort2(server, cnx);
LocalizableMessage msg = getMessageForException(ne, hostPort);
throw new ReplicationCliException(msg, ERROR_CONNECTING, ne);
}
@@ -8312,7 +8239,7 @@
private void deleteReplicationDomain(InitialLdapContext ctx,
String baseDN) throws ReplicationCliException
{
- String hostPort = ConnectionUtils.getHostPort(ctx);
+ String hostPort = getHostPort(ctx);
try
{
ManagementContext mCtx = LDAPManagementContext.createFromContext(
@@ -8342,8 +8269,7 @@
if (areDnsEqual(domain.getBaseDN().toString(), baseDN))
{
print(formatter.getFormattedWithPoints(
- INFO_REPLICATION_DISABLING_BASEDN.get(baseDN,
- hostPort)));
+ INFO_REPLICATION_DISABLING_BASEDN.get(baseDN, hostPort)));
sync.removeReplicationDomain(domainName);
sync.commit();
@@ -8371,7 +8297,7 @@
private void disableReplicationServer(InitialLdapContext ctx)
throws ReplicationCliException
{
- String hostPort = ConnectionUtils.getHostPort(ctx);
+ String hostPort = getHostPort(ctx);
try
{
ManagementContext mCtx = LDAPManagementContext.createFromContext(
@@ -8817,7 +8743,7 @@
* @param cnx the preferred connections list.
* @return the host port string representation of the provided server.
*/
- protected String getHostPort(ServerDescriptor server,
+ private String getHostPort2(ServerDescriptor server,
Collection<PreferredConnection> cnx)
{
String hostPort = null;
@@ -9756,8 +9682,7 @@
Collection<ReplicaDescriptor> replicas = getReplicas(ctxDomain);
int replicationPort = getReplicationPort(ctxOther);
boolean isReplicationServerConfigured = replicationPort != -1;
- String replicationServer = getReplicationServer(
- ConnectionUtils.getHostName(ctxOther), replicationPort);
+ String replicationServer = getReplicationServer(getHostName(ctxOther), replicationPort);
for (ReplicaDescriptor replica : replicas)
{
if (!isReplicationServerConfigured)
@@ -9794,61 +9719,14 @@
{
int replicationPort1 = getReplicationPort(ctx1);
boolean isReplicationServer1Configured = replicationPort1 != -1;
- String replicationServer1 = getReplicationServer(
- ConnectionUtils.getHostName(ctx1), replicationPort1);
+ String replicationServer1 = getReplicationServer(getHostName(ctx1), replicationPort1);
int replicationPort2 = getReplicationPort(ctx2);
boolean isReplicationServer2Configured = replicationPort2 != -1;
- String replicationServer2 = getReplicationServer(
- ConnectionUtils.getHostName(ctx2), replicationPort2);
+ String replicationServer2 = getReplicationServer(getHostName(ctx2), replicationPort2);
- TopologyCache cache1 = null;
- TopologyCache cache2 = null;
-
- if (isReplicationServer1Configured)
- {
- try
- {
- ADSContext adsContext = new ADSContext(ctx1);
- if (adsContext.hasAdminData())
- {
- cache1 = new TopologyCache(adsContext, getTrustManager(),
- getConnectTimeout());
- cache1.getFilter().setSearchMonitoringInformation(false);
- cache1.setPreferredConnections(
- PreferredConnection.getPreferredConnections(ctx1));
- cache1.reloadTopology();
- }
- }
- catch (Throwable t)
- {
- logger.warn(LocalizableMessage.raw("Error loading topology cache in "+
- ConnectionUtils.getLdapUrl(ctx1)+": "+t, t));
- }
- }
-
- if (isReplicationServer2Configured)
- {
- try
- {
- ADSContext adsContext = new ADSContext(ctx2);
- if (adsContext.hasAdminData())
- {
- cache2 = new TopologyCache(adsContext, getTrustManager(),
- getConnectTimeout());
- cache2.getFilter().setSearchMonitoringInformation(false);
- cache2.setPreferredConnections(
- PreferredConnection.getPreferredConnections(ctx2));
- cache2.reloadTopology();
- }
- }
- catch (Throwable t)
- {
- logger.warn(LocalizableMessage.raw("Error loading topology cache in "+
- ConnectionUtils.getLdapUrl(ctx2)+": "+t, t));
- }
- }
-
+ TopologyCache cache1 = isReplicationServer1Configured ? createTopologyCache(ctx1) : null;
+ TopologyCache cache2 = isReplicationServer2Configured ? createTopologyCache(ctx2) : null;
if (cache1 != null && cache2 != null)
{
updateAvailableAndReplicatedSuffixesForNoDomainOneSense(cache1, cache2,
@@ -9868,6 +9746,27 @@
}
}
+ private TopologyCache createTopologyCache(InitialLdapContext ctx)
+ {
+ try
+ {
+ ADSContext adsContext = new ADSContext(ctx);
+ if (adsContext.hasAdminData())
+ {
+ TopologyCache cache = new TopologyCache(adsContext, getTrustManager(), getConnectTimeout());
+ cache.getFilter().setSearchMonitoringInformation(false);
+ cache.setPreferredConnections(getPreferredConnections(ctx));
+ cache.reloadTopology();
+ return cache;
+ }
+ }
+ catch (Throwable t)
+ {
+ logger.warn(LocalizableMessage.raw("Error loading topology cache in " + getLdapUrl(ctx) + ": " + t, t));
+ }
+ return null;
+ }
+
private void addAllAvailableSuffixes(Collection<String> availableSuffixes,
Set<SuffixDescriptor> suffixes, String rsToFind)
{
@@ -9946,47 +9845,8 @@
return;
}
Set<SuffixDescriptor> suffixes = new HashSet<SuffixDescriptor>();
- try
- {
- if (adsCtx1.hasAdminData())
- {
- TopologyCache cache = new TopologyCache(adsCtx1,
- getTrustManager(), getConnectTimeout());
- cache.getFilter().setSearchMonitoringInformation(false);
- for (String dn : uData.getBaseDNs())
- {
- cache.getFilter().addBaseDNToSearch(dn);
- }
- cache.reloadTopology();
- suffixes.addAll(cache.getSuffixes());
- }
- }
- catch (Throwable t)
- {
- logger.warn(LocalizableMessage.raw("Error loading topology cache from "+
- ConnectionUtils.getHostPort(adsCtx1.getDirContext())+": "+t, t));
- }
-
- try
- {
- if (adsCtx2.hasAdminData())
- {
- TopologyCache cache = new TopologyCache(adsCtx2,
- getTrustManager(), getConnectTimeout());
- cache.getFilter().setSearchMonitoringInformation(false);
- cache.reloadTopology();
- for (String dn : uData.getBaseDNs())
- {
- cache.getFilter().addBaseDNToSearch(dn);
- }
- suffixes.addAll(cache.getSuffixes());
- }
- }
- catch (Throwable t)
- {
- logger.warn(LocalizableMessage.raw("Error loading topology cache from "+
- ConnectionUtils.getHostPort(adsCtx2.getDirContext())+": "+t, t));
- }
+ createTopologyCache(adsCtx1, uData, suffixes);
+ createTopologyCache(adsCtx2, uData, suffixes);
int repPort1 = getReplicationPort(adsCtx1.getDirContext());
String repServer1 = getReplicationServer(uData.getHostName1(), repPort1);
@@ -10035,6 +9895,26 @@
}
}
+ private void createTopologyCache(ADSContext adsCtx, ReplicationUserData uData, Set<SuffixDescriptor> suffixes)
+ {
+ try
+ {
+ if (adsCtx.hasAdminData())
+ {
+ TopologyCache cache = new TopologyCache(adsCtx, getTrustManager(), getConnectTimeout());
+ cache.getFilter().setSearchMonitoringInformation(false);
+ addBaseDNs(cache.getFilter(), uData.getBaseDNs());
+ cache.reloadTopology();
+ suffixes.addAll(cache.getSuffixes());
+ }
+ }
+ catch (Throwable t)
+ {
+ String msg = "Error loading topology cache from " + getHostPort(adsCtx.getDirContext()) + ": " + t;
+ logger.warn(LocalizableMessage.raw(msg, t));
+ }
+ }
+
/**
* Merge the contents of the two registries but only does it partially.
* Only one of the two ADSContext will be updated (in terms of data in
@@ -10057,46 +9937,11 @@
PointAdder pointAdder = new PointAdder(this);
try
{
- Set<PreferredConnection> cnx =
- new LinkedHashSet<PreferredConnection>();
- cnx.addAll(PreferredConnection.getPreferredConnections(
- adsCtx1.getDirContext()));
- cnx.addAll(PreferredConnection.getPreferredConnections(
- adsCtx2.getDirContext()));
- // Check that there are no errors. We do not allow to do the merge with
- // errors.
- TopologyCache cache1 = new TopologyCache(adsCtx1, getTrustManager(),
- getConnectTimeout());
- cache1.setPreferredConnections(cnx);
- cache1.getFilter().setSearchBaseDNInformation(false);
- try
- {
- cache1.reloadTopology();
- }
- catch (TopologyCacheException te)
- {
- logger.error(LocalizableMessage.raw("Error reading topology cache of "+
- ConnectionUtils.getHostPort(adsCtx1.getDirContext())+ " "+te, te));
- throw new ReplicationCliException(
- ERR_REPLICATION_READING_ADS.get(te.getMessageObject()),
- ERROR_UPDATING_ADS, te);
- }
- TopologyCache cache2 = new TopologyCache(adsCtx2, getTrustManager(),
- getConnectTimeout());
- cache2.setPreferredConnections(cnx);
- cache2.getFilter().setSearchBaseDNInformation(false);
- try
- {
- cache2.reloadTopology();
- }
- catch (TopologyCacheException te)
- {
- logger.error(LocalizableMessage.raw("Error reading topology cache of "+
- ConnectionUtils.getHostPort(adsCtx2.getDirContext())+ " "+te, te));
- throw new ReplicationCliException(
- ERR_REPLICATION_READING_ADS.get(te.getMessageObject()),
- ERROR_UPDATING_ADS, te);
- }
+ Set<PreferredConnection> cnx = new LinkedHashSet<PreferredConnection>();
+ cnx.addAll(getPreferredConnections(adsCtx1.getDirContext()));
+ cnx.addAll(getPreferredConnections(adsCtx2.getDirContext()));
+ TopologyCache cache1 = createTopologyCache(adsCtx1, cnx);
+ TopologyCache cache2 = createTopologyCache(adsCtx2, cnx);
// Look for the cache with biggest number of replication servers:
// that one is going to be source.
@@ -10134,10 +9979,8 @@
if (isInteractive())
{
LocalizableMessage msg = INFO_REPLICATION_MERGING_REGISTRIES_CONFIRMATION.get(
- ConnectionUtils.getHostPort(ctxSource),
- ConnectionUtils.getHostPort(ctxDestination),
- ConnectionUtils.getHostPort(ctxSource),
- ConnectionUtils.getHostPort(ctxDestination));
+ getHostPort(ctxSource), getHostPort(ctxDestination),
+ getHostPort(ctxSource), getHostPort(ctxDestination));
if (!askConfirmation(msg, true))
{
throw new ReplicationCliException(ERR_REPLICATION_USER_CANCELLED.get(), USER_CANCELLED, null);
@@ -10146,10 +9989,8 @@
else
{
LocalizableMessage msg = INFO_REPLICATION_MERGING_REGISTRIES_DESCRIPTION.get(
- ConnectionUtils.getHostPort(ctxSource),
- ConnectionUtils.getHostPort(ctxDestination),
- ConnectionUtils.getHostPort(ctxSource),
- ConnectionUtils.getHostPort(ctxDestination));
+ getHostPort(ctxSource), getHostPort(ctxDestination),
+ getHostPort(ctxSource), getHostPort(ctxDestination));
println(msg);
println();
}
@@ -10162,7 +10003,7 @@
{
throw new ReplicationCliException(
ERR_REPLICATION_CANNOT_MERGE_WITH_ERRORS.get(
- ConnectionUtils.getHostPort(adsCtx1.getDirContext()),
+ getHostPort(adsCtx1.getDirContext()),
getMessageFromCollection(cache1Errors,
Constants.LINE_SEPARATOR)),
ERROR_READING_ADS, null);
@@ -10173,7 +10014,7 @@
{
throw new ReplicationCliException(
ERR_REPLICATION_CANNOT_MERGE_WITH_ERRORS.get(
- ConnectionUtils.getHostPort(adsCtx2.getDirContext()),
+ getHostPort(adsCtx2.getDirContext()),
getMessageFromCollection(cache2Errors,
Constants.LINE_SEPARATOR)),
ERROR_READING_ADS, null);
@@ -10296,9 +10137,9 @@
catch (ADSContextException adce)
{
logger.error(LocalizableMessage.raw("Error merging registry of "+
- ConnectionUtils.getHostPort(adsCtxSource.getDirContext())+
+ getHostPort(adsCtxSource.getDirContext())+
" with registry of "+
- ConnectionUtils.getHostPort(adsCtxDestination.getDirContext())+" "+
+ getHostPort(adsCtxDestination.getDirContext())+" "+
adce, adce));
if (adce.getError() == ADSContextException.ErrorType.ERROR_MERGING)
{
@@ -10321,7 +10162,7 @@
{
logger.info(LocalizableMessage.raw("Seeding to replication server on "+
server.getHostPort(true)+" with certificates of "+
- ConnectionUtils.getHostPort(adsCtxSource.getDirContext())));
+ getHostPort(adsCtxSource.getDirContext())));
InitialLdapContext ctx = null;
try
{
@@ -10341,12 +10182,9 @@
logger.error(LocalizableMessage.raw("Error seeding truststore: "+t, t));
String arg = (t instanceof OpenDsException) ?
((OpenDsException)t).getMessageObject().toString() : t.toString();
- throw new ReplicationCliException(
- ERR_REPLICATION_ENABLE_SEEDING_TRUSTSTORE.get(
- ConnectionUtils.getHostPort(adsCtx2.getDirContext()),
- ConnectionUtils.getHostPort(adsCtx1.getDirContext()),
- arg),
- ERROR_SEEDING_TRUSTORE, t);
+ LocalizableMessage msg = ERR_REPLICATION_ENABLE_SEEDING_TRUSTSTORE.get(
+ getHostPort(adsCtx2.getDirContext()), getHostPort(adsCtx1.getDirContext()), arg);
+ throw new ReplicationCliException(msg, ERROR_SEEDING_TRUSTORE, t);
}
pointAdder.stop();
print(formatter.getSpace());
@@ -10361,13 +10199,30 @@
}
}
- private InitialLdapContext getDirContextForServer(TopologyCache cache,
- ServerDescriptor server) throws NamingException
+ private TopologyCache createTopologyCache(ADSContext adsCtx, Set<PreferredConnection> cnx)
+ throws ReplicationCliException
{
- String dn = ConnectionUtils.getBindDN(
- cache.getAdsContext().getDirContext());
- String pwd = ConnectionUtils.getBindPassword(
- cache.getAdsContext().getDirContext());
+ TopologyCache cache = new TopologyCache(adsCtx, getTrustManager(), getConnectTimeout());
+ cache.setPreferredConnections(cnx);
+ cache.getFilter().setSearchBaseDNInformation(false);
+ try
+ {
+ cache.reloadTopology();
+ return cache;
+ }
+ catch (TopologyCacheException te)
+ {
+ logger.error(LocalizableMessage.raw(
+ "Error reading topology cache of " + getHostPort(adsCtx.getDirContext()) + " " + te, te));
+ throw new ReplicationCliException(ERR_REPLICATION_READING_ADS.get(te.getMessageObject()), ERROR_UPDATING_ADS, te);
+ }
+ }
+
+ private InitialLdapContext getDirContextForServer(TopologyCache cache, ServerDescriptor server)
+ throws NamingException
+ {
+ String dn = getBindDN(cache.getAdsContext().getDirContext());
+ String pwd = getBindPassword(cache.getAdsContext().getDirContext());
TopologyCacheFilter filter = new TopologyCacheFilter();
filter.setSearchMonitoringInformation(false);
filter.setSearchBaseDNInformation(false);
@@ -10476,7 +10331,6 @@
binDir += File.separatorChar;
}
}
-
return binDir;
}
diff --git a/opendj3-server-dev/src/server/org/opends/server/tools/status/StatusCli.java b/opendj3-server-dev/src/server/org/opends/server/tools/status/StatusCli.java
index ed528c6..2507a1f 100644
--- a/opendj3-server-dev/src/server/org/opends/server/tools/status/StatusCli.java
+++ b/opendj3-server-dev/src/server/org/opends/server/tools/status/StatusCli.java
@@ -24,16 +24,16 @@
* Copyright 2007-2010 Sun Microsystems, Inc.
* Portions Copyright 2011-2014 ForgeRock AS
*/
-
package org.opends.server.tools.status;
-import static com.forgerock.opendj.cli.ArgumentConstants.LIST_TABLE_SEPARATOR;
+import static com.forgerock.opendj.cli.ArgumentConstants.*;
import static com.forgerock.opendj.cli.CliMessages.*;
+import static com.forgerock.opendj.cli.Utils.*;
+
+import static org.forgerock.util.Utils.*;
import static org.opends.messages.AdminToolMessages.*;
import static org.opends.messages.QuickSetupMessages.INFO_ERROR_READING_SERVER_CONFIGURATION;
import static org.opends.messages.QuickSetupMessages.INFO_NOT_AVAILABLE_LABEL;
-import static com.forgerock.opendj.cli.Utils.MAX_LINE_WIDTH;
-import static org.forgerock.util.Utils.closeSilently;
import java.io.File;
import java.io.InputStream;
@@ -65,14 +65,13 @@
import org.forgerock.opendj.config.server.ConfigException;
import org.forgerock.opendj.ldap.AuthorizationException;
import org.forgerock.opendj.ldap.Connection;
-import org.forgerock.opendj.ldap.LdapException;
import org.forgerock.opendj.ldap.LDAPConnectionFactory;
import org.forgerock.opendj.ldap.LDAPOptions;
+import org.forgerock.opendj.ldap.LdapException;
import org.forgerock.opendj.ldap.ResultCode;
import org.forgerock.opendj.ldap.SSLContextBuilder;
import org.forgerock.opendj.ldap.TrustManagers;
import org.opends.admin.ads.util.ApplicationTrustManager;
-import org.opends.admin.ads.util.ConnectionUtils;
import org.opends.guitools.controlpanel.datamodel.BackendDescriptor;
import org.opends.guitools.controlpanel.datamodel.BaseDNDescriptor;
import org.opends.guitools.controlpanel.datamodel.BaseDNTableModel;
@@ -1277,7 +1276,7 @@
{
// Interact with the user though the console to get
// LDAP connection information
- final String hostName = ConnectionUtils.getHostNameForLdapUrl(ci.getHostName());
+ final String hostName = getHostNameForLdapUrl(ci.getHostName());
final Integer portNumber = ci.getPortNumber();
final String bindDN = ci.getBindDN();
final String bindPassword = ci.getBindPassword();
--
Gitblit v1.10.0