mirror of https://github.com/OpenIdentityPlatform/OpenDJ.git

Jean-Noël Rouvignac
28.14.2016 3e7100797afc9068d10990f57b46e868ff812966
Use the new Entry.parseAttribute() method

Replaced calls to ConnectionUtils.firstValueAsString() by Entry.parseAttribute().
Inlined BackendToolUtils.getStringSingleValuedAttribute().
11 files modified
128 ■■■■■ changed files
opendj-server-legacy/src/main/java/org/opends/admin/ads/ServerDescriptor.java 5 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/admin/ads/TopologyCache.java 22 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/guitools/controlpanel/browser/BrowserController.java 33 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/guitools/controlpanel/datamodel/ControlPanelInfo.java 7 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/guitools/controlpanel/datamodel/DatabaseMonitoringTableModel.java 6 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/guitools/controlpanel/datamodel/ServerDescriptor.java 4 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/quicksetup/util/Utils.java 5 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/tasks/TaskUtils.java 9 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/tools/BackendToolUtils.java 25 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/tools/ListBackends.java 2 ●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/tools/dsreplication/ReplicationCliMain.java 10 ●●●● patch | view | raw | blame | history
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());
      }
    }
  }
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));
    }
  }
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;
  }
  /**
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);
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;
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));
  }
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)
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;
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)
    {
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;
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)
    {