From 3e7100797afc9068d10990f57b46e868ff812966 Mon Sep 17 00:00:00 2001
From: Jean-Noël Rouvignac <jean-noel.rouvignac@forgerock.com>
Date: Fri, 28 Oct 2016 14:18:44 +0000
Subject: [PATCH] Use the new Entry.parseAttribute() method
---
opendj-server-legacy/src/main/java/org/opends/server/tools/ListBackends.java | 2
opendj-server-legacy/src/main/java/org/opends/server/tools/dsreplication/ReplicationCliMain.java | 10 +-
opendj-server-legacy/src/main/java/org/opends/guitools/controlpanel/datamodel/DatabaseMonitoringTableModel.java | 6 +-
opendj-server-legacy/src/main/java/org/opends/guitools/controlpanel/datamodel/ServerDescriptor.java | 4
opendj-server-legacy/src/main/java/org/opends/server/tools/BackendToolUtils.java | 25 -------
opendj-server-legacy/src/main/java/org/opends/quicksetup/util/Utils.java | 5 -
opendj-server-legacy/src/main/java/org/opends/server/tasks/TaskUtils.java | 9 +--
opendj-server-legacy/src/main/java/org/opends/guitools/controlpanel/datamodel/ControlPanelInfo.java | 7 +-
opendj-server-legacy/src/main/java/org/opends/admin/ads/TopologyCache.java | 22 +++----
opendj-server-legacy/src/main/java/org/opends/guitools/controlpanel/browser/BrowserController.java | 33 +++-------
opendj-server-legacy/src/main/java/org/opends/admin/ads/ServerDescriptor.java | 5 -
11 files changed, 42 insertions(+), 86 deletions(-)
diff --git a/opendj-server-legacy/src/main/java/org/opends/admin/ads/ServerDescriptor.java b/opendj-server-legacy/src/main/java/org/opends/admin/ads/ServerDescriptor.java
index c9c7e70..caeb34b 100644
--- a/opendj-server-legacy/src/main/java/org/opends/admin/ads/ServerDescriptor.java
+++ b/opendj-server-legacy/src/main/java/org/opends/admin/ads/ServerDescriptor.java
@@ -18,7 +18,6 @@
import static org.forgerock.opendj.ldap.SearchScope.*;
import static org.forgerock.opendj.ldap.requests.Requests.*;
-import static org.opends.admin.ads.util.ConnectionUtils.*;
import java.io.IOException;
import java.util.ArrayList;
@@ -780,7 +779,7 @@
{
SearchResultEntry sr = entryReader.readEntry();
- String backendId = firstValueAsString(sr, "ds-cfg-backend-id");
+ String backendId = sr.parseAttribute("ds-cfg-backend-id").asString();
if (!isConfigBackend(backendId) || isSchemaBackend(backendId))
{
Set<String> entries;
@@ -1021,7 +1020,7 @@
SearchResultEntry sr = entryReader.readEntry();
desc.serverProperties.put(ServerProperty.SCHEMA_GENERATION_ID,
- firstValueAsString(sr, "ds-sync-generation-id"));
+ sr.parseAttribute("ds-sync-generation-id").asString());
}
}
}
diff --git a/opendj-server-legacy/src/main/java/org/opends/admin/ads/TopologyCache.java b/opendj-server-legacy/src/main/java/org/opends/admin/ads/TopologyCache.java
index 1ed6bf9..06c7432 100644
--- a/opendj-server-legacy/src/main/java/org/opends/admin/ads/TopologyCache.java
+++ b/opendj-server-legacy/src/main/java/org/opends/admin/ads/TopologyCache.java
@@ -31,6 +31,7 @@
import java.util.Set;
import org.forgerock.i18n.LocalizableMessage;
+import org.forgerock.i18n.LocalizedIllegalArgumentException;
import org.forgerock.i18n.slf4j.LocalizedLogger;
import org.forgerock.opendj.ldap.DN;
import org.forgerock.opendj.ldap.EntryNotFoundException;
@@ -49,7 +50,6 @@
import static org.forgerock.opendj.ldap.SearchScope.*;
import static org.forgerock.opendj.ldap.requests.Requests.*;
-import static org.opends.admin.ads.util.ConnectionUtils.*;
import static org.opends.messages.QuickSetupMessages.*;
/**
@@ -458,7 +458,7 @@
{
SearchResultEntry sr = entryReader.readEntry();
- final DN dn = DN.valueOf(firstValueAsString(sr, "domain-name"));
+ final DN dn = sr.parseAttribute("domain-name").asDN();
int replicaId = -1;
try
{
@@ -509,18 +509,14 @@
private void setAgeOfOldestMissingChange(ReplicaDescriptor replica, SearchResultEntry sr)
{
- String s = firstValueAsString(sr, "approx-older-change-not-synchronized-millis");
- if (s != null)
+ try
{
- try
- {
- replica.setAgeOfOldestMissingChange(Long.valueOf(s));
- }
- catch (Throwable t)
- {
- logger.warn(LocalizableMessage.raw(
- "Unexpected error reading age of oldest change: " + t, t));
- }
+ replica.setAgeOfOldestMissingChange(
+ sr.parseAttribute("approx-older-change-not-synchronized-millis").asLong());
+ }
+ catch (LocalizedIllegalArgumentException t)
+ {
+ logger.warn(LocalizableMessage.raw("Unexpected error reading age of oldest change: " + t, t));
}
}
diff --git a/opendj-server-legacy/src/main/java/org/opends/guitools/controlpanel/browser/BrowserController.java b/opendj-server-legacy/src/main/java/org/opends/guitools/controlpanel/browser/BrowserController.java
index 80468dd..b42ace8 100644
--- a/opendj-server-legacy/src/main/java/org/opends/guitools/controlpanel/browser/BrowserController.java
+++ b/opendj-server-legacy/src/main/java/org/opends/guitools/controlpanel/browser/BrowserController.java
@@ -39,6 +39,7 @@
import javax.swing.tree.TreeNode;
import javax.swing.tree.TreePath;
+import org.forgerock.i18n.LocalizedIllegalArgumentException;
import org.forgerock.opendj.ldap.DN;
import org.forgerock.opendj.ldap.Entry;
import org.forgerock.opendj.ldap.EntryNotFoundException;
@@ -1674,7 +1675,14 @@
*/
private static int getNumSubOrdinates(Entry entry)
{
- return toInt(firstValueAsString(entry, NUMSUBORDINATES_ATTR));
+ try
+ {
+ return entry.parseAttribute(NUMSUBORDINATES_ATTR).asInteger(0);
+ }
+ catch (LocalizedIllegalArgumentException e)
+ {
+ return 0;
+ }
}
/**
@@ -1687,27 +1695,8 @@
*/
public static boolean getHasSubOrdinates(Entry entry)
{
- String v = firstValueAsString(entry, HASSUBORDINATES_ATTR);
- if (v != null) {
- return "true".equalsIgnoreCase(v);
- }
- return getNumSubOrdinates(entry) > 0;
- }
-
- private static int toInt(String v)
- {
- if (v == null)
- {
- return 0;
- }
- try
- {
- return Integer.parseInt(v);
- }
- catch (NumberFormatException x)
- {
- return 0;
- }
+ Boolean val = entry.parseAttribute(HASSUBORDINATES_ATTR).asBoolean();
+ return val != null ? val : getNumSubOrdinates(entry) > 0;
}
/**
diff --git a/opendj-server-legacy/src/main/java/org/opends/guitools/controlpanel/datamodel/ControlPanelInfo.java b/opendj-server-legacy/src/main/java/org/opends/guitools/controlpanel/datamodel/ControlPanelInfo.java
index f84b415..57a3b93 100644
--- a/opendj-server-legacy/src/main/java/org/opends/guitools/controlpanel/datamodel/ControlPanelInfo.java
+++ b/opendj-server-legacy/src/main/java/org/opends/guitools/controlpanel/datamodel/ControlPanelInfo.java
@@ -18,7 +18,6 @@
import static com.forgerock.opendj.util.OperatingSystem.*;
-import static org.opends.admin.ads.util.ConnectionUtils.*;
import static org.opends.admin.ads.util.PreferredConnection.Type.*;
import static org.opends.server.tools.ConfigureWindowsService.*;
@@ -520,13 +519,13 @@
desc.setJvmMemoryUsageMonitor(rCtx.getJvmMemoryUsage());
desc.setSystemInformationMonitor(rCtx.getSystemInformation());
desc.setWorkQueueMonitor(rCtx.getWorkQueue());
- desc.setOpenDJVersion(firstValueAsString(rCtx.getVersionMonitor(), "fullVersion"));
- String installPath = firstValueAsString(rCtx.getSystemInformation(), "installPath");
+ desc.setOpenDJVersion(rCtx.getVersionMonitor().parseAttribute("fullVersion").asString());
+ String installPath = rCtx.getSystemInformation().parseAttribute("installPath").asString();
if (installPath != null)
{
desc.setInstallPath(installPath);
}
- String instancePath = firstValueAsString(rCtx.getSystemInformation(), "instancePath");
+ String instancePath = rCtx.getSystemInformation().parseAttribute("instancePath").asString();
if (instancePath != null)
{
desc.setInstancePath(instancePath);
diff --git a/opendj-server-legacy/src/main/java/org/opends/guitools/controlpanel/datamodel/DatabaseMonitoringTableModel.java b/opendj-server-legacy/src/main/java/org/opends/guitools/controlpanel/datamodel/DatabaseMonitoringTableModel.java
index 9b205cc..786fb62 100644
--- a/opendj-server-legacy/src/main/java/org/opends/guitools/controlpanel/datamodel/DatabaseMonitoringTableModel.java
+++ b/opendj-server-legacy/src/main/java/org/opends/guitools/controlpanel/datamodel/DatabaseMonitoringTableModel.java
@@ -16,7 +16,6 @@
*/
package org.opends.guitools.controlpanel.datamodel;
-import static org.opends.admin.ads.util.ConnectionUtils.*;
import static org.opends.guitools.controlpanel.util.Utilities.*;
import static org.opends.messages.AdminToolMessages.*;
import static org.opends.server.util.CollectionUtils.*;
@@ -295,14 +294,15 @@
private String[] getLine(BackendDescriptor backend)
{
+ final String defaultVal = NO_VALUE_SET.toString();
+
String[] line = new String[attributes.size() + 1];
line[0] = getName(backend);
int i = 1;
SearchResultEntry monitoringEntry = getMonitoringEntry(backend);
for (String attr : attributes)
{
- String o = firstValueAsString(monitoringEntry, attr);
- line[i] = o != null ? o : NO_VALUE_SET.toString();
+ line[i] = monitoringEntry.parseAttribute(attr).asString(defaultVal);
i++;
}
return line;
diff --git a/opendj-server-legacy/src/main/java/org/opends/guitools/controlpanel/datamodel/ServerDescriptor.java b/opendj-server-legacy/src/main/java/org/opends/guitools/controlpanel/datamodel/ServerDescriptor.java
index 006d87e..b7f8bd1 100644
--- a/opendj-server-legacy/src/main/java/org/opends/guitools/controlpanel/datamodel/ServerDescriptor.java
+++ b/opendj-server-legacy/src/main/java/org/opends/guitools/controlpanel/datamodel/ServerDescriptor.java
@@ -35,10 +35,10 @@
import org.forgerock.opendj.ldap.responses.SearchResultEntry;
import org.forgerock.opendj.ldap.schema.AttributeType;
import org.forgerock.opendj.ldap.schema.ObjectClass;
+import org.forgerock.opendj.ldap.schema.Schema;
import org.opends.guitools.controlpanel.util.ConfigFromConnection;
import org.opends.quicksetup.UserData;
import org.opends.server.tools.tasks.TaskEntry;
-import org.forgerock.opendj.ldap.schema.Schema;
import com.forgerock.opendj.util.OperatingSystem;
@@ -509,7 +509,7 @@
{
return false;
}
- String os = firstValueAsString(sr, "operatingSystem");
+ String os = sr.parseAttribute("operatingSystem").asString();
return os != null && OperatingSystem.WINDOWS.equals(OperatingSystem.forName(os));
}
diff --git a/opendj-server-legacy/src/main/java/org/opends/quicksetup/util/Utils.java b/opendj-server-legacy/src/main/java/org/opends/quicksetup/util/Utils.java
index d242585..ccdce48 100644
--- a/opendj-server-legacy/src/main/java/org/opends/quicksetup/util/Utils.java
+++ b/opendj-server-legacy/src/main/java/org/opends/quicksetup/util/Utils.java
@@ -22,7 +22,6 @@
import static org.forgerock.opendj.ldap.SearchScope.*;
import static org.forgerock.opendj.ldap.requests.Requests.*;
import static org.forgerock.util.Utils.*;
-import static org.opends.admin.ads.util.ConnectionUtils.*;
import static org.opends.messages.QuickSetupMessages.*;
import static org.opends.quicksetup.Installation.*;
import static org.opends.server.util.CollectionUtils.*;
@@ -930,12 +929,10 @@
try
{
SearchResultEntry sr = conn.getConnection().searchSingleEntry(request);
-
- String v = firstValueAsString(sr, "currentTime");
+ String v = sr.parseAttribute("currentTime").asString();
SimpleDateFormat formatter = new SimpleDateFormat("yyyyMMddHHmmss'Z'");
formatter.setTimeZone(TimeZone.getTimeZone("UTC"));
-
return formatter.parse(v).getTime();
}
catch (Throwable t)
diff --git a/opendj-server-legacy/src/main/java/org/opends/server/tasks/TaskUtils.java b/opendj-server-legacy/src/main/java/org/opends/server/tasks/TaskUtils.java
index c8ed1f5..52fcf08 100644
--- a/opendj-server-legacy/src/main/java/org/opends/server/tasks/TaskUtils.java
+++ b/opendj-server-legacy/src/main/java/org/opends/server/tasks/TaskUtils.java
@@ -33,7 +33,6 @@
import org.forgerock.opendj.server.config.server.BackendCfg;
import org.forgerock.opendj.server.config.server.RootCfg;
import org.opends.server.api.Backend;
-import org.opends.server.tools.BackendToolUtils;
import org.opends.server.types.Entry;
import org.opends.server.config.ConfigurationHandler;
import org.opends.server.core.DirectoryServer;
@@ -51,9 +50,7 @@
import static org.opends.server.util.ServerConstants.*;
import static org.opends.server.util.StaticUtils.*;
-/**
- * This class defines a number of static utility methods for server tasks.
- */
+/** This class defines a number of static utility methods for server tasks. */
public class TaskUtils
{
private static final LocalizedLogger logger = LocalizedLogger.getLoggerForThisClass();
@@ -71,7 +68,7 @@
{
try
{
- return BackendToolUtils.getStringSingleValuedAttribute(configEntry, ATTR_BACKEND_ID);
+ return configEntry.parseAttribute(ATTR_BACKEND_ID).asString();
}
catch (Exception e)
{
@@ -117,7 +114,7 @@
try
{
configEntry = Converters.to(configHandler.getEntry(childrenDn));
- backendID = BackendToolUtils.getStringSingleValuedAttribute(configEntry, ATTR_BACKEND_ID);
+ backendID = configEntry.parseAttribute(ATTR_BACKEND_ID).asString();
if (backendID == null)
{
continue;
diff --git a/opendj-server-legacy/src/main/java/org/opends/server/tools/BackendToolUtils.java b/opendj-server-legacy/src/main/java/org/opends/server/tools/BackendToolUtils.java
index bde8767..0f0ee3f 100644
--- a/opendj-server-legacy/src/main/java/org/opends/server/tools/BackendToolUtils.java
+++ b/opendj-server-legacy/src/main/java/org/opends/server/tools/BackendToolUtils.java
@@ -110,27 +110,6 @@
}
}
- /**
- * Returns a string from the single valued attribute in provided entry.
- *
- * @param entry the entry
- * @param attrName the attribute name
- * @return the string value if available or {@code null}
- */
- public static String getStringSingleValuedAttribute(Entry entry, String attrName)
- {
- Iterator<Attribute> attributes = entry.getAllAttributes(attrName).iterator();
- if (attributes.hasNext())
- {
- Attribute attribute = attributes.next();
- for (ByteString byteString : attribute)
- {
- return byteString.toString();
- }
- }
- return null;
- }
-
private static List<DN> getBaseDNsForEntry(final Entry configEntry) throws Exception
{
try
@@ -173,7 +152,7 @@
{
try
{
- return getStringSingleValuedAttribute(configEntry, ATTR_BACKEND_CLASS);
+ return configEntry.parseAttribute(ATTR_BACKEND_CLASS).asString();
}
catch (final Exception e)
{
@@ -186,7 +165,7 @@
{
try
{
- return getStringSingleValuedAttribute(configEntry, ATTR_BACKEND_ID);
+ return configEntry.parseAttribute(ATTR_BACKEND_ID).asString();
}
catch (final Exception e)
{
diff --git a/opendj-server-legacy/src/main/java/org/opends/server/tools/ListBackends.java b/opendj-server-legacy/src/main/java/org/opends/server/tools/ListBackends.java
index 5ceb723..de50cdf 100644
--- a/opendj-server-legacy/src/main/java/org/opends/server/tools/ListBackends.java
+++ b/opendj-server-legacy/src/main/java/org/opends/server/tools/ListBackends.java
@@ -401,7 +401,7 @@
String backendID = null;
try
{
- backendID = BackendToolUtils.getStringSingleValuedAttribute(configEntry, ATTR_BACKEND_ID);
+ backendID = configEntry.parseAttribute(ATTR_BACKEND_ID).asString();
if (backendID == null)
{
continue;
diff --git a/opendj-server-legacy/src/main/java/org/opends/server/tools/dsreplication/ReplicationCliMain.java b/opendj-server-legacy/src/main/java/org/opends/server/tools/dsreplication/ReplicationCliMain.java
index 6a127cc..fa57322 100644
--- a/opendj-server-legacy/src/main/java/org/opends/server/tools/dsreplication/ReplicationCliMain.java
+++ b/opendj-server-legacy/src/main/java/org/opends/server/tools/dsreplication/ReplicationCliMain.java
@@ -1345,20 +1345,20 @@
}
sr = entryReader.readEntry();
}
-
- String newStartCSN = firstValueAsString(sr, "replicationCSN");
+ String newStartCSN = sr.parseAttribute("replicationCSN").asString();
if (newStartCSN == null)
{
errPrintln(ERROR_RESET_CHANGE_NUMBER_NO_CSN_FOUND.get(newStartCN, uData.getSourceHostPort()));
return ERROR_RESET_CHANGE_NUMBER_NO_CSN;
}
- String targetDN = firstValueAsString(sr, "targetDN");
+ DN targetDN;
DN targetBaseDN = DN.rootDN();
try
{
+ targetDN = sr.parseAttribute("targetDN").asDN();
for (DN dn : getCommonSuffixes(connSource, connDest, SuffixRelationType.REPLICATED))
{
- if (DN.valueOf(targetDN).isSubordinateOrEqualTo(dn) && dn.isSubordinateOrEqualTo(targetBaseDN))
+ if (targetDN.isSubordinateOrEqualTo(dn) && dn.isSubordinateOrEqualTo(targetBaseDN))
{
targetBaseDN = dn;
}
@@ -1399,7 +1399,7 @@
{
SearchResultEntry sr =
conn.getConnection().searchSingleEntry("", BASE_OBJECT, "objectclass=*", "lastChangeNumber");
- return firstValueAsString(sr, "lastChangeNumber");
+ return sr.parseAttribute("lastChangeNumber").asString();
}
catch (LdapException e)
{
--
Gitblit v1.10.0