From 6ba31b40d37b5026c1da21d797321d73df375e27 Mon Sep 17 00:00:00 2001
From: Jean-Noël Rouvignac <jean-noel.rouvignac@forgerock.com>
Date: Wed, 04 May 2016 08:44:30 +0000
Subject: [PATCH] OPENDJ-2987 DirectoryServer.getObjectClass(String, true) => DirectoryServer.getObjectClass2(String)

---
 opendj-server-legacy/src/main/java/org/opends/server/core/DirectoryServer.java                        |   24 +---
 opendj-server-legacy/src/main/java/org/opends/server/backends/MonitorBackend.java                     |   12 -
 opendj-server-legacy/src/main/java/org/opends/server/backends/ChangelogBackend.java                   |   10 +-
 opendj-server-legacy/src/test/java/org/opends/server/tasks/TestBackupAndRestore.java                  |    4 
 opendj-server-legacy/src/main/java/org/opends/server/tools/LDIFModify.java                            |    8 -
 opendj-server-legacy/src/main/java/org/opends/server/extensions/DynamicGroup.java                     |    8 -
 opendj-server-legacy/src/main/java/org/opends/server/tools/makeldif/TemplateEntry.java                |    3 
 opendj-server-legacy/src/test/java/org/opends/server/core/AddOperationTestCase.java                   |    4 
 opendj-server-legacy/src/main/java/org/opends/server/monitors/BackendMonitor.java                     |    4 
 opendj-server-legacy/src/main/java/org/opends/server/protocols/ldap/LDAPStatistics.java               |    6 
 opendj-server-legacy/src/main/java/org/opends/server/backends/SchemaBackend.java                      |   12 -
 opendj-server-legacy/src/main/java/org/opends/server/backends/BackupBackend.java                      |   17 --
 opendj-server-legacy/src/main/java/org/opends/server/types/DirectoryConfig.java                       |   22 ----
 opendj-server-legacy/src/main/java/org/opends/server/api/MonitorProvider.java                         |    4 
 opendj-server-legacy/src/main/java/org/opends/server/extensions/StaticGroup.java                      |    3 
 opendj-server-legacy/src/main/java/org/opends/server/plugins/LDAPADListPlugin.java                    |   28 +---
 opendj-server-legacy/src/main/java/org/opends/server/protocols/internal/InternalClientConnection.java |    8 -
 opendj-server-legacy/src/main/java/org/opends/server/tools/LDIFSearch.java                            |    2 
 opendj-server-legacy/src/main/java/org/opends/server/extensions/VirtualStaticGroup.java               |   10 -
 opendj-server-legacy/src/test/java/org/opends/server/core/ModifyOperationTestCase.java                |   13 +-
 opendj-server-legacy/src/main/java/org/opends/server/types/Entry.java                                 |   11 -
 opendj-server-legacy/src/test/java/org/opends/server/tasks/TestImportAndExport.java                   |    5 
 opendj-server-legacy/src/main/java/org/opends/server/api/CompressedSchema.java                        |    5 
 opendj-server-legacy/src/main/java/org/opends/server/backends/TrustStoreBackend.java                  |   14 --
 opendj-server-legacy/src/main/java/org/opends/server/monitors/ConnectionHandlerMonitor.java           |    4 
 opendj-server-legacy/src/main/java/org/opends/server/crypto/CryptoManagerSync.java                    |    6 
 26 files changed, 78 insertions(+), 169 deletions(-)

diff --git a/opendj-server-legacy/src/main/java/org/opends/server/api/CompressedSchema.java b/opendj-server-legacy/src/main/java/org/opends/server/api/CompressedSchema.java
index c22fdf9..b2c65bd 100644
--- a/opendj-server-legacy/src/main/java/org/opends/server/api/CompressedSchema.java
+++ b/opendj-server-legacy/src/main/java/org/opends/server/api/CompressedSchema.java
@@ -17,7 +17,6 @@
 package org.opends.server.api;
 
 import static org.opends.messages.CoreMessages.*;
-import static com.forgerock.opendj.util.StaticUtils.toLowerCase;
 
 import java.util.AbstractMap.SimpleImmutableEntry;
 import java.util.Collection;
@@ -632,9 +631,7 @@
     final LinkedHashMap<ObjectClass, String> ocMap = new LinkedHashMap<>(objectClassNames.size());
     for (final String name : objectClassNames)
     {
-      final String lowerName = toLowerCase(name);
-      final ObjectClass oc = DirectoryServer.getObjectClass(lowerName, true);
-      ocMap.put(oc, name);
+      ocMap.put(DirectoryServer.getObjectClass2(name), name);
     }
     if (sync)
     {
diff --git a/opendj-server-legacy/src/main/java/org/opends/server/api/MonitorProvider.java b/opendj-server-legacy/src/main/java/org/opends/server/api/MonitorProvider.java
index 61df951..52d704f 100644
--- a/opendj-server-legacy/src/main/java/org/opends/server/api/MonitorProvider.java
+++ b/opendj-server-legacy/src/main/java/org/opends/server/api/MonitorProvider.java
@@ -28,7 +28,7 @@
 import org.forgerock.i18n.LocalizableMessage;
 import org.forgerock.opendj.config.server.ConfigException;
 import org.forgerock.opendj.server.config.server.MonitorProviderCfg;
-import org.opends.server.types.DirectoryConfig;
+import org.opends.server.core.DirectoryServer;
 import org.opends.server.types.InitializationException;
 import org.opends.server.types.ObjectClass;
 
@@ -157,7 +157,7 @@
    */
   public ObjectClass getMonitorObjectClass()
   {
-    return DirectoryConfig.getObjectClass(OC_EXTENSIBLE_OBJECT_LC, true);
+    return DirectoryServer.getObjectClass2(OC_EXTENSIBLE_OBJECT_LC);
   }
 
 
diff --git a/opendj-server-legacy/src/main/java/org/opends/server/backends/BackupBackend.java b/opendj-server-legacy/src/main/java/org/opends/server/backends/BackupBackend.java
index 7292dad..ebabcfc 100644
--- a/opendj-server-legacy/src/main/java/org/opends/server/backends/BackupBackend.java
+++ b/opendj-server-legacy/src/main/java/org/opends/server/backends/BackupBackend.java
@@ -212,10 +212,7 @@
     // Construct the backup base entry.
     LinkedHashMap<ObjectClass,String> objectClasses = new LinkedHashMap<>(2);
     objectClasses.put(DirectoryServer.getTopObjectClass(), OC_TOP);
-
-    ObjectClass untypedOC =
-         DirectoryServer.getObjectClass(OC_UNTYPED_OBJECT_LC, true);
-    objectClasses.put(untypedOC, OC_UNTYPED_OBJECT);
+    objectClasses.put(DirectoryServer.getObjectClass2(OC_UNTYPED_OBJECT_LC), OC_UNTYPED_OBJECT);
 
     LinkedHashMap<AttributeType,List<Attribute>> opAttrs = new LinkedHashMap<>(0);
     LinkedHashMap<AttributeType,List<Attribute>> userAttrs = new LinkedHashMap<>(1);
@@ -506,9 +503,7 @@
     LinkedHashMap<ObjectClass,String> ocMap = new LinkedHashMap<>(2);
     ocMap.put(DirectoryServer.getTopObjectClass(), OC_TOP);
 
-    ObjectClass backupDirOC =
-         DirectoryServer.getObjectClass(OC_BACKUP_DIRECTORY, true);
-    ocMap.put(backupDirOC, OC_BACKUP_DIRECTORY);
+    ocMap.put(DirectoryServer.getObjectClass2(OC_BACKUP_DIRECTORY), OC_BACKUP_DIRECTORY);
 
     LinkedHashMap<AttributeType,List<Attribute>> opAttrs = new LinkedHashMap<>(0);
     LinkedHashMap<AttributeType,List<Attribute>> userAttrs = new LinkedHashMap<>(3);
@@ -584,12 +579,8 @@
     // Construct the backup entry to return.
     LinkedHashMap<ObjectClass, String> ocMap = new LinkedHashMap<>(3);
     ocMap.put(DirectoryServer.getTopObjectClass(), OC_TOP);
-
-    ObjectClass oc = DirectoryServer.getObjectClass(OC_BACKUP_INFO, true);
-    ocMap.put(oc, OC_BACKUP_INFO);
-
-    oc = DirectoryServer.getObjectClass(OC_EXTENSIBLE_OBJECT_LC, true);
-    ocMap.put(oc, OC_EXTENSIBLE_OBJECT);
+    ocMap.put(DirectoryServer.getObjectClass2(OC_BACKUP_INFO), OC_BACKUP_INFO);
+    ocMap.put(DirectoryServer.getObjectClass2(OC_EXTENSIBLE_OBJECT_LC), OC_EXTENSIBLE_OBJECT);
 
     LinkedHashMap<AttributeType, List<Attribute>> opAttrs = new LinkedHashMap<>(0);
     LinkedHashMap<AttributeType, List<Attribute>> userAttrs = new LinkedHashMap<>();
diff --git a/opendj-server-legacy/src/main/java/org/opends/server/backends/ChangelogBackend.java b/opendj-server-legacy/src/main/java/org/opends/server/backends/ChangelogBackend.java
index 1974d35..2b31b0c 100644
--- a/opendj-server-legacy/src/main/java/org/opends/server/backends/ChangelogBackend.java
+++ b/opendj-server-legacy/src/main/java/org/opends/server/backends/ChangelogBackend.java
@@ -42,6 +42,7 @@
 
 import org.forgerock.i18n.LocalizableMessage;
 import org.forgerock.i18n.slf4j.LocalizedLogger;
+import org.forgerock.opendj.config.Configuration;
 import org.forgerock.opendj.config.server.ConfigException;
 import org.forgerock.opendj.ldap.AttributeDescription;
 import org.forgerock.opendj.ldap.ByteString;
@@ -52,7 +53,6 @@
 import org.forgerock.opendj.ldap.ResultCode;
 import org.forgerock.opendj.ldap.SearchScope;
 import org.forgerock.opendj.ldap.schema.AttributeType;
-import org.forgerock.opendj.config.Configuration;
 import org.opends.server.api.Backend;
 import org.opends.server.config.ConfigConstants;
 import org.opends.server.controls.EntryChangelogNotificationControl;
@@ -176,8 +176,8 @@
     CHANGELOG_ROOT_OBJECT_CLASSES = new LinkedHashMap<>(2);
   static
   {
-    CHANGELOG_ROOT_OBJECT_CLASSES.put(DirectoryServer.getObjectClass(OC_TOP, true), OC_TOP);
-    CHANGELOG_ROOT_OBJECT_CLASSES.put(DirectoryServer.getObjectClass("container", true), "container");
+    CHANGELOG_ROOT_OBJECT_CLASSES.put(DirectoryServer.getObjectClass2(OC_TOP), OC_TOP);
+    CHANGELOG_ROOT_OBJECT_CLASSES.put(DirectoryServer.getObjectClass2("container"), "container");
   }
 
   /** The set of objectclasses that will be used in ECL entries. */
@@ -185,8 +185,8 @@
     CHANGELOG_ENTRY_OBJECT_CLASSES = new LinkedHashMap<>(2);
   static
   {
-    CHANGELOG_ENTRY_OBJECT_CLASSES.put(DirectoryServer.getObjectClass(OC_TOP, true), OC_TOP);
-    CHANGELOG_ENTRY_OBJECT_CLASSES.put(DirectoryServer.getObjectClass(OC_CHANGELOG_ENTRY, true), OC_CHANGELOG_ENTRY);
+    CHANGELOG_ENTRY_OBJECT_CLASSES.put(DirectoryServer.getObjectClass2(OC_TOP), OC_TOP);
+    CHANGELOG_ENTRY_OBJECT_CLASSES.put(DirectoryServer.getObjectClass2(OC_CHANGELOG_ENTRY), OC_CHANGELOG_ENTRY);
   }
 
   /** The attribute type for the "creatorsName" attribute. */
diff --git a/opendj-server-legacy/src/main/java/org/opends/server/backends/MonitorBackend.java b/opendj-server-legacy/src/main/java/org/opends/server/backends/MonitorBackend.java
index 1fbfc0f..0ee9e6e 100644
--- a/opendj-server-legacy/src/main/java/org/opends/server/backends/MonitorBackend.java
+++ b/opendj-server-legacy/src/main/java/org/opends/server/backends/MonitorBackend.java
@@ -193,12 +193,8 @@
     addAll(userDefinedAttributes, configEntry.getOperationalAttributes().values());
 
     // Construct the set of objectclasses to include in the base monitor entry.
-    final ObjectClass topOC = DirectoryServer.getObjectClass(OC_TOP, true);
-    monitorObjectClasses.put(topOC, OC_TOP);
-
-    final ObjectClass monitorOC = DirectoryServer.getObjectClass(
-        OC_MONITOR_ENTRY, true);
-    monitorObjectClasses.put(monitorOC, OC_MONITOR_ENTRY);
+    monitorObjectClasses.put(DirectoryServer.getObjectClass2(OC_TOP), OC_TOP);
+    monitorObjectClasses.put(DirectoryServer.getObjectClass2(OC_MONITOR_ENTRY), OC_MONITOR_ENTRY);
 
     // Create the set of base DNs that we will handle. In this case, it's just
     // the DN of the base monitor entry.
@@ -564,7 +560,7 @@
    */
   private Entry getBaseMonitorEntry()
   {
-    final ObjectClass extensibleObjectOC = DirectoryServer.getObjectClass(OC_EXTENSIBLE_OBJECT_LC, true);
+    final ObjectClass extensibleObjectOC = DirectoryServer.getObjectClass2(OC_EXTENSIBLE_OBJECT_LC);
     final HashMap<ObjectClass, String> monitorClasses = newObjectClasses(extensibleObjectOC, OC_EXTENSIBLE_OBJECT);
 
     final HashMap<AttributeType, List<Attribute>> monitorUserAttrs = new LinkedHashMap<>();
@@ -635,7 +631,7 @@
    */
   private Entry getBranchMonitorEntry(final DN dn)
   {
-    final ObjectClass monitorOC = DirectoryServer.getObjectClass(OC_MONITOR_BRANCH, true);
+    final ObjectClass monitorOC = DirectoryServer.getObjectClass2(OC_MONITOR_BRANCH);
     final HashMap<ObjectClass, String> monitorClasses = newObjectClasses(monitorOC, OC_MONITOR_BRANCH);
 
     final HashMap<AttributeType, List<Attribute>> monitorUserAttrs = new LinkedHashMap<>();
diff --git a/opendj-server-legacy/src/main/java/org/opends/server/backends/SchemaBackend.java b/opendj-server-legacy/src/main/java/org/opends/server/backends/SchemaBackend.java
index bb526d9..8d5f805 100644
--- a/opendj-server-legacy/src/main/java/org/opends/server/backends/SchemaBackend.java
+++ b/opendj-server-legacy/src/main/java/org/opends/server/backends/SchemaBackend.java
@@ -249,12 +249,8 @@
     // Construct the set of objectclasses to include in the schema entry.
     schemaObjectClasses = new LinkedHashMap<>(3);
     schemaObjectClasses.put(DirectoryServer.getTopObjectClass(), OC_TOP);
-
-    ObjectClass subentryOC = DirectoryServer.getObjectClass(OC_LDAP_SUBENTRY_LC, true);
-    schemaObjectClasses.put(subentryOC, OC_LDAP_SUBENTRY);
-
-    ObjectClass subschemaOC = DirectoryServer.getObjectClass(OC_SUBSCHEMA, true);
-    schemaObjectClasses.put(subschemaOC, OC_SUBSCHEMA);
+    schemaObjectClasses.put(DirectoryServer.getObjectClass2(OC_LDAP_SUBENTRY_LC), OC_LDAP_SUBENTRY);
+    schemaObjectClasses.put(DirectoryServer.getObjectClass2(OC_SUBSCHEMA), OC_SUBSCHEMA);
 
     configEntryDN = configEntry.getName();
     baseDNs = cfg.getBaseDN();
@@ -2611,8 +2607,8 @@
   {
     Map<ObjectClass,String> objectClasses = new LinkedHashMap<>();
     objectClasses.put(DirectoryServer.getTopObjectClass(), OC_TOP);
-    objectClasses.put(DirectoryServer.getObjectClass(OC_LDAP_SUBENTRY_LC, true), OC_LDAP_SUBENTRY);
-    objectClasses.put(DirectoryServer.getObjectClass(OC_SUBSCHEMA, true), OC_SUBSCHEMA);
+    objectClasses.put(DirectoryServer.getObjectClass2(OC_LDAP_SUBENTRY_LC), OC_LDAP_SUBENTRY);
+    objectClasses.put(DirectoryServer.getObjectClass2(OC_SUBSCHEMA), OC_SUBSCHEMA);
 
     Map<AttributeType,List<Attribute>> userAttributes = new LinkedHashMap<>();
     Map<AttributeType,List<Attribute>> operationalAttributes = new LinkedHashMap<>();
diff --git a/opendj-server-legacy/src/main/java/org/opends/server/backends/TrustStoreBackend.java b/opendj-server-legacy/src/main/java/org/opends/server/backends/TrustStoreBackend.java
index d4d0cba..c4c536e 100644
--- a/opendj-server-legacy/src/main/java/org/opends/server/backends/TrustStoreBackend.java
+++ b/opendj-server-legacy/src/main/java/org/opends/server/backends/TrustStoreBackend.java
@@ -190,10 +190,7 @@
     // Construct the trust store base entry.
     LinkedHashMap<ObjectClass,String> objectClasses = new LinkedHashMap<>(2);
     objectClasses.put(DirectoryServer.getTopObjectClass(), OC_TOP);
-
-    ObjectClass branchOC =
-         DirectoryServer.getObjectClass("ds-cfg-branch", true);
-    objectClasses.put(branchOC, "ds-cfg-branch");
+    objectClasses.put(DirectoryServer.getObjectClass2("ds-cfg-branch"), "ds-cfg-branch");
 
     LinkedHashMap<AttributeType,List<Attribute>> userAttrs = new LinkedHashMap<>(1);
     for (AVA ava : getBaseDN().rdn())
@@ -417,10 +414,7 @@
     // Construct the certificate entry to return.
     LinkedHashMap<ObjectClass,String> ocMap = new LinkedHashMap<>(2);
     ocMap.put(DirectoryServer.getTopObjectClass(), OC_TOP);
-
-    ObjectClass objectClass =
-         DirectoryServer.getObjectClass(OC_CRYPTO_INSTANCE_KEY, true);
-    ocMap.put(objectClass, OC_CRYPTO_INSTANCE_KEY);
+    ocMap.put(DirectoryServer.getObjectClass2(OC_CRYPTO_INSTANCE_KEY), OC_CRYPTO_INSTANCE_KEY);
 
     LinkedHashMap<AttributeType,List<Attribute>> opAttrs = new LinkedHashMap<>(0);
     LinkedHashMap<AttributeType,List<Attribute>> userAttrs = new LinkedHashMap<>(3);
@@ -1061,9 +1055,7 @@
         throw new DirectoryException(ResultCode.ENTRY_ALREADY_EXISTS, message);
       }
 
-      ObjectClass ocSelfSignedCertRequest =
-           DirectoryServer.getObjectClass(OC_SELF_SIGNED_CERT_REQUEST, true);
-      if (entry.hasObjectClass(ocSelfSignedCertRequest))
+      if (entry.hasObjectClass(DirectoryServer.getObjectClass2(OC_SELF_SIGNED_CERT_REQUEST)))
       {
         try
         {
diff --git a/opendj-server-legacy/src/main/java/org/opends/server/core/DirectoryServer.java b/opendj-server-legacy/src/main/java/org/opends/server/core/DirectoryServer.java
index af36ec0..7854287 100644
--- a/opendj-server-legacy/src/main/java/org/opends/server/core/DirectoryServer.java
+++ b/opendj-server-legacy/src/main/java/org/opends/server/core/DirectoryServer.java
@@ -17,6 +17,7 @@
 package org.opends.server.core;
 
 import static com.forgerock.opendj.cli.CommonArguments.*;
+
 import static org.forgerock.util.Reject.*;
 import static org.opends.messages.CoreMessages.*;
 import static org.opends.messages.ToolMessages.*;
@@ -72,6 +73,7 @@
 import org.forgerock.opendj.ldap.schema.AttributeType;
 import org.forgerock.opendj.ldap.schema.CoreSchema;
 import org.forgerock.opendj.ldap.schema.MatchingRule;
+import org.forgerock.opendj.ldap.schema.MatchingRuleUse;
 import org.forgerock.opendj.ldap.schema.ObjectClassType;
 import org.forgerock.opendj.ldap.schema.Syntax;
 import org.forgerock.opendj.ldap.schema.UnknownSchemaElementException;
@@ -155,7 +157,6 @@
 import org.opends.server.types.LDIFExportConfig;
 import org.opends.server.types.LDIFImportConfig;
 import org.opends.server.types.LockManager;
-import org.forgerock.opendj.ldap.schema.MatchingRuleUse;
 import org.opends.server.types.Modification;
 import org.opends.server.types.NameForm;
 import org.opends.server.types.ObjectClass;
@@ -2389,30 +2390,19 @@
   }
 
   /**
-   * Retrieves the objectclass for the provided lowercase name or OID.  It can
+   * Retrieves the objectclass for the provided name or OID.  It can
    * optionally return a generated "default" version if the requested
    * objectclass is not defined in the schema.
    *
-   * @param  lowerName      The lowercase name or OID for the objectclass to
-   *                        retrieve.
-   * @param  returnDefault  Indicates whether to generate a default version if
-   *                        the requested objectclass is not defined in the
-   *                        server schema.
-   *
+   * @param  nameOrOid      The name or OID for the objectclass to retrieve.
    * @return  The objectclass type, or {@code null} if there is no
    *          objectclass with the specified name or OID defined in the server
    *          schema and a default class should not be returned.
    */
-  public static ObjectClass getObjectClass(String lowerName,
-                                           boolean returnDefault)
+  public static ObjectClass getObjectClass2(String nameOrOid)
   {
-    ObjectClass oc = directoryServer.schema.getObjectClass(lowerName);
-    if (returnDefault && oc == null)
-    {
-      oc = getDefaultObjectClass(lowerName);
-    }
-
-    return oc;
+    ObjectClass oc = getObjectClass(toLowerCase(nameOrOid));
+    return oc != null ? oc : getDefaultObjectClass(nameOrOid);
   }
 
   /**
diff --git a/opendj-server-legacy/src/main/java/org/opends/server/crypto/CryptoManagerSync.java b/opendj-server-legacy/src/main/java/org/opends/server/crypto/CryptoManagerSync.java
index c2a708e..8f777fd 100644
--- a/opendj-server-legacy/src/main/java/org/opends/server/crypto/CryptoManagerSync.java
+++ b/opendj-server-legacy/src/main/java/org/opends/server/crypto/CryptoManagerSync.java
@@ -154,9 +154,9 @@
     {
     }
 
-    ocInstanceKey = DirectoryServer.getObjectClass(OC_CRYPTO_INSTANCE_KEY, true);
-    ocCipherKey = DirectoryServer.getObjectClass(OC_CRYPTO_CIPHER_KEY, true);
-    ocMacKey = DirectoryServer.getObjectClass(OC_CRYPTO_MAC_KEY, true);
+    ocInstanceKey = DirectoryServer.getObjectClass2(OC_CRYPTO_INSTANCE_KEY);
+    ocCipherKey = DirectoryServer.getObjectClass2(OC_CRYPTO_CIPHER_KEY);
+    ocMacKey = DirectoryServer.getObjectClass2(OC_CRYPTO_MAC_KEY);
 
     attrCert = getAttributeType(ATTR_CRYPTO_PUBLIC_KEY_CERTIFICATE);
     attrAlias = getAttributeType(ATTR_CRYPTO_KEY_ID);
diff --git a/opendj-server-legacy/src/main/java/org/opends/server/extensions/DynamicGroup.java b/opendj-server-legacy/src/main/java/org/opends/server/extensions/DynamicGroup.java
index 154bd2c..b43dd91 100644
--- a/opendj-server-legacy/src/main/java/org/opends/server/extensions/DynamicGroup.java
+++ b/opendj-server-legacy/src/main/java/org/opends/server/extensions/DynamicGroup.java
@@ -42,7 +42,6 @@
 import org.opends.server.types.LDAPURL;
 import org.opends.server.types.MemberList;
 import org.opends.server.types.Modification;
-import org.opends.server.types.ObjectClass;
 import org.opends.server.types.SearchFilter;
 
 import static org.forgerock.util.Reject.*;
@@ -147,11 +146,8 @@
   {
     ifNull(entry);
 
-    // FIXME -- This needs to exclude enhanced groups once we have support for
-    //them.
-    ObjectClass groupOfURLsClass =
-         DirectoryConfig.getObjectClass(OC_GROUP_OF_URLS_LC, true);
-    return entry.hasObjectClass(groupOfURLsClass);
+    // FIXME -- This needs to exclude enhanced groups once we have support for them.
+    return entry.hasObjectClass(DirectoryServer.getObjectClass2(OC_GROUP_OF_URLS_LC));
   }
 
   @Override
diff --git a/opendj-server-legacy/src/main/java/org/opends/server/extensions/StaticGroup.java b/opendj-server-legacy/src/main/java/org/opends/server/extensions/StaticGroup.java
index 1ac6b91..2288323 100644
--- a/opendj-server-legacy/src/main/java/org/opends/server/extensions/StaticGroup.java
+++ b/opendj-server-legacy/src/main/java/org/opends/server/extensions/StaticGroup.java
@@ -47,7 +47,6 @@
 import org.opends.server.types.Attribute;
 import org.opends.server.types.Attributes;
 import org.opends.server.types.Control;
-import org.opends.server.types.DirectoryConfig;
 import org.opends.server.types.DirectoryException;
 import org.opends.server.types.Entry;
 import org.opends.server.types.InitializationException;
@@ -257,7 +256,7 @@
 
   private boolean hasObjectClass(Entry entry, String ocName)
   {
-    return entry.hasObjectClass(DirectoryConfig.getObjectClass(ocName, true));
+    return entry.hasObjectClass(DirectoryServer.getObjectClass2(ocName));
   }
 
   @Override
diff --git a/opendj-server-legacy/src/main/java/org/opends/server/extensions/VirtualStaticGroup.java b/opendj-server-legacy/src/main/java/org/opends/server/extensions/VirtualStaticGroup.java
index f5fa0ff..90c7964 100644
--- a/opendj-server-legacy/src/main/java/org/opends/server/extensions/VirtualStaticGroup.java
+++ b/opendj-server-legacy/src/main/java/org/opends/server/extensions/VirtualStaticGroup.java
@@ -25,6 +25,7 @@
 import org.forgerock.i18n.slf4j.LocalizedLogger;
 import org.forgerock.opendj.config.server.ConfigException;
 import org.forgerock.opendj.ldap.ByteString;
+import org.forgerock.opendj.ldap.DN;
 import org.forgerock.opendj.ldap.ResultCode;
 import org.forgerock.opendj.ldap.SearchScope;
 import org.forgerock.opendj.ldap.schema.AttributeType;
@@ -33,13 +34,11 @@
 import org.opends.server.core.DirectoryServer;
 import org.opends.server.core.ServerContext;
 import org.opends.server.types.Attribute;
-import org.forgerock.opendj.ldap.DN;
 import org.opends.server.types.DirectoryException;
 import org.opends.server.types.Entry;
 import org.opends.server.types.InitializationException;
 import org.opends.server.types.MemberList;
 import org.opends.server.types.Modification;
-import org.opends.server.types.ObjectClass;
 import org.opends.server.types.SearchFilter;
 
 import static org.forgerock.util.Reject.*;
@@ -158,11 +157,8 @@
   {
     ifNull(entry);
 
-    // FIXME -- This needs to exclude enhanced groups once we have support for
-    //them.
-    ObjectClass virtualStaticGroupClass =
-         DirectoryServer.getObjectClass(OC_VIRTUAL_STATIC_GROUP, true);
-    return entry.hasObjectClass(virtualStaticGroupClass);
+    // FIXME -- This needs to exclude enhanced groups once we have support for them.
+    return entry.hasObjectClass(DirectoryServer.getObjectClass2(OC_VIRTUAL_STATIC_GROUP));
   }
 
   @Override
diff --git a/opendj-server-legacy/src/main/java/org/opends/server/monitors/BackendMonitor.java b/opendj-server-legacy/src/main/java/org/opends/server/monitors/BackendMonitor.java
index 830330b..2a50747 100644
--- a/opendj-server-legacy/src/main/java/org/opends/server/monitors/BackendMonitor.java
+++ b/opendj-server-legacy/src/main/java/org/opends/server/monitors/BackendMonitor.java
@@ -29,7 +29,7 @@
 import org.opends.server.api.Backend;
 import org.opends.server.api.MonitorData;
 import org.opends.server.api.MonitorProvider;
-import org.opends.server.types.DirectoryConfig;
+import org.opends.server.core.DirectoryServer;
 import org.opends.server.types.ObjectClass;
 
 /**
@@ -81,7 +81,7 @@
   @Override
   public ObjectClass getMonitorObjectClass()
   {
-    return DirectoryConfig.getObjectClass(OC_MONITOR_BACKEND, true);
+    return DirectoryServer.getObjectClass2(OC_MONITOR_BACKEND);
   }
 
   @Override
diff --git a/opendj-server-legacy/src/main/java/org/opends/server/monitors/ConnectionHandlerMonitor.java b/opendj-server-legacy/src/main/java/org/opends/server/monitors/ConnectionHandlerMonitor.java
index 15d1319..d3aedab 100644
--- a/opendj-server-legacy/src/main/java/org/opends/server/monitors/ConnectionHandlerMonitor.java
+++ b/opendj-server-legacy/src/main/java/org/opends/server/monitors/ConnectionHandlerMonitor.java
@@ -28,7 +28,7 @@
 import org.opends.server.api.ConnectionHandler;
 import org.opends.server.api.MonitorData;
 import org.opends.server.api.MonitorProvider;
-import org.opends.server.types.DirectoryConfig;
+import org.opends.server.core.DirectoryServer;
 import org.opends.server.types.HostPort;
 import org.opends.server.types.ObjectClass;
 
@@ -91,7 +91,7 @@
   @Override
   public ObjectClass getMonitorObjectClass()
   {
-    return DirectoryConfig.getObjectClass(OC_MONITOR_CONNHANDLER, true);
+    return DirectoryServer.getObjectClass2(OC_MONITOR_CONNHANDLER);
   }
 
 
diff --git a/opendj-server-legacy/src/main/java/org/opends/server/plugins/LDAPADListPlugin.java b/opendj-server-legacy/src/main/java/org/opends/server/plugins/LDAPADListPlugin.java
index c207273..08c605d 100644
--- a/opendj-server-legacy/src/main/java/org/opends/server/plugins/LDAPADListPlugin.java
+++ b/opendj-server-legacy/src/main/java/org/opends/server/plugins/LDAPADListPlugin.java
@@ -16,34 +16,31 @@
  */
 package org.opends.server.plugins;
 
-
 import java.util.LinkedHashSet;
 import java.util.List;
 import java.util.Set;
 
 import org.forgerock.i18n.LocalizableMessage;
+import org.forgerock.i18n.slf4j.LocalizedLogger;
+import org.forgerock.opendj.config.server.ConfigChangeResult;
+import org.forgerock.opendj.config.server.ConfigException;
 import org.forgerock.opendj.config.server.ConfigurationChangeListener;
+import org.forgerock.opendj.ldap.schema.AttributeType;
 import org.forgerock.opendj.server.config.meta.PluginCfgDefn;
 import org.forgerock.opendj.server.config.server.LDAPAttributeDescriptionListPluginCfg;
 import org.forgerock.opendj.server.config.server.PluginCfg;
 import org.opends.server.api.plugin.DirectoryServerPlugin;
-import org.opends.server.api.plugin.PluginType;
 import org.opends.server.api.plugin.PluginResult;
-import org.forgerock.opendj.config.server.ConfigException;
-import org.forgerock.opendj.ldap.schema.AttributeType;
-import org.forgerock.opendj.config.server.ConfigChangeResult;
+import org.opends.server.api.plugin.PluginType;
 import org.opends.server.types.DirectoryConfig;
 import org.opends.server.types.ObjectClass;
 import org.opends.server.types.operation.PreParseSearchOperation;
 
-import org.forgerock.i18n.slf4j.LocalizedLogger;
 import static org.opends.messages.PluginMessages.*;
-
-import static org.opends.server.types.DirectoryConfig.getObjectClass;
+import static org.opends.server.core.DirectoryServer.getObjectClass;
 import static org.opends.server.util.ServerConstants.*;
 import static org.opends.server.util.StaticUtils.*;
 
-
 /**
  * This pre-parse plugin modifies the operation to allow an object class
  * identifier to be specified in attributes lists, such as in Search requests,
@@ -93,21 +90,14 @@
         if (attrName.startsWith("@"))
         {
           final String lowerName = toLowerCase(attrName.substring(1));
-          final ObjectClass oc = getObjectClass(lowerName, false);
+          final ObjectClass oc = getObjectClass(lowerName);
           if (oc == null)
           {
-            if (logger.isTraceEnabled())
-            {
-              logger.trace("Cannot replace unknown objectclass %s",
-                                  lowerName);
-            }
+            logger.trace("Cannot replace unknown objectclass %s", lowerName);
           }
           else
           {
-            if (logger.isTraceEnabled())
-            {
-              logger.trace("Replacing objectclass %s", lowerName);
-            }
+            logger.trace("Replacing objectclass %s", lowerName);
 
             for (final AttributeType at : oc.getRequiredAttributeChain())
             {
diff --git a/opendj-server-legacy/src/main/java/org/opends/server/protocols/internal/InternalClientConnection.java b/opendj-server-legacy/src/main/java/org/opends/server/protocols/internal/InternalClientConnection.java
index 5dd9aef..d6751e2 100644
--- a/opendj-server-legacy/src/main/java/org/opends/server/protocols/internal/InternalClientConnection.java
+++ b/opendj-server-legacy/src/main/java/org/opends/server/protocols/internal/InternalClientConnection.java
@@ -153,8 +153,8 @@
     {
       LinkedHashMap<ObjectClass,String> objectClasses = new LinkedHashMap<>();
       put(objectClasses, DirectoryServer.getTopObjectClass());
-      put(objectClasses, DirectoryServer.getObjectClass(OC_PERSON, true));
-      put(objectClasses, DirectoryServer.getObjectClass(OC_ROOT_DN, true));
+      put(objectClasses, DirectoryServer.getObjectClass2(OC_PERSON));
+      put(objectClasses, DirectoryServer.getObjectClass2(OC_ROOT_DN));
 
       LinkedHashMap<AttributeType,List<Attribute>> userAttrs = new LinkedHashMap<>();
       put(userAttrs, ATTR_COMMON_NAME, commonName);
@@ -882,9 +882,7 @@
         for (ByteString v : a)
         {
           String ocName = v.toString();
-          String lowerName = toLowerCase(ocName);
-          ObjectClass oc = DirectoryServer.getObjectClass(lowerName, true);
-          objectClasses.put(oc, ocName);
+          objectClasses.put(DirectoryServer.getObjectClass2(ocName), ocName);
         }
       }
       else
diff --git a/opendj-server-legacy/src/main/java/org/opends/server/protocols/ldap/LDAPStatistics.java b/opendj-server-legacy/src/main/java/org/opends/server/protocols/ldap/LDAPStatistics.java
index 0f47d08..b043d6e 100644
--- a/opendj-server-legacy/src/main/java/org/opends/server/protocols/ldap/LDAPStatistics.java
+++ b/opendj-server-legacy/src/main/java/org/opends/server/protocols/ldap/LDAPStatistics.java
@@ -24,10 +24,10 @@
 
 import org.forgerock.i18n.LocalizableMessage;
 import org.forgerock.opendj.config.server.ConfigException;
-import org.opends.server.api.MonitorData;
 import org.forgerock.opendj.server.config.server.MonitorProviderCfg;
+import org.opends.server.api.MonitorData;
 import org.opends.server.api.MonitorProvider;
-import org.opends.server.types.DirectoryConfig;
+import org.opends.server.core.DirectoryServer;
 import org.opends.server.types.ObjectClass;
 import org.opends.server.types.OperationType;
 
@@ -156,7 +156,7 @@
   @Override
   public ObjectClass getMonitorObjectClass()
   {
-      return DirectoryConfig.getObjectClass(OC_MONITOR_CONNHANDLERSTATS, true);
+    return DirectoryServer.getObjectClass2(OC_MONITOR_CONNHANDLERSTATS);
   }
 
   @Override
diff --git a/opendj-server-legacy/src/main/java/org/opends/server/tools/LDIFModify.java b/opendj-server-legacy/src/main/java/org/opends/server/tools/LDIFModify.java
index bf7fe87..32dbcb6 100644
--- a/opendj-server-legacy/src/main/java/org/opends/server/tools/LDIFModify.java
+++ b/opendj-server-legacy/src/main/java/org/opends/server/tools/LDIFModify.java
@@ -35,12 +35,12 @@
 
 import org.forgerock.i18n.LocalizableMessage;
 import org.forgerock.opendj.ldap.ByteString;
+import org.forgerock.opendj.ldap.DN;
+import org.forgerock.opendj.ldap.schema.AttributeType;
 import org.opends.server.core.DirectoryServer;
 import org.opends.server.core.DirectoryServer.DirectoryServerVersionHandler;
 import org.opends.server.loggers.JDKLogging;
 import org.opends.server.types.Attribute;
-import org.forgerock.opendj.ldap.schema.AttributeType;
-import org.forgerock.opendj.ldap.DN;
 import org.opends.server.types.DirectoryException;
 import org.opends.server.types.Entry;
 import org.opends.server.types.ExistingFileBehavior;
@@ -309,9 +309,7 @@
           for (ByteString v : a)
           {
             String stringValue = v.toString();
-            String lowerValue  = toLowerCase(stringValue);
-            ObjectClass oc = DirectoryServer.getObjectClass(lowerValue, true);
-            objectClasses.put(oc, stringValue);
+            objectClasses.put(DirectoryServer.getObjectClass2(stringValue), stringValue);
           }
         }
         else if (t.isOperational())
diff --git a/opendj-server-legacy/src/main/java/org/opends/server/tools/LDIFSearch.java b/opendj-server-legacy/src/main/java/org/opends/server/tools/LDIFSearch.java
index 01af4f8..b605297 100644
--- a/opendj-server-legacy/src/main/java/org/opends/server/tools/LDIFSearch.java
+++ b/opendj-server-legacy/src/main/java/org/opends/server/tools/LDIFSearch.java
@@ -484,7 +484,7 @@
 
     for (String objectClassName : objectClassNames)
     {
-      ObjectClass c = DirectoryServer.getObjectClass(objectClassName, true);
+      ObjectClass c = DirectoryServer.getObjectClass2(objectClassName);
       for (AttributeType t : c.getRequiredAttributeChain())
       {
         if (t.isOperational())
diff --git a/opendj-server-legacy/src/main/java/org/opends/server/tools/makeldif/TemplateEntry.java b/opendj-server-legacy/src/main/java/org/opends/server/tools/makeldif/TemplateEntry.java
index c8d92d9..32b30e0 100644
--- a/opendj-server-legacy/src/main/java/org/opends/server/tools/makeldif/TemplateEntry.java
+++ b/opendj-server-legacy/src/main/java/org/opends/server/tools/makeldif/TemplateEntry.java
@@ -249,8 +249,7 @@
         for (TemplateValue v : valueList)
         {
           String ocName = toLowerCase(v.getValue().toString());
-          ObjectClass oc = DirectoryServer.getObjectClass(ocName, true);
-          objectClasses.put(oc, ocName);
+          objectClasses.put(DirectoryServer.getObjectClass2(ocName), ocName);
         }
       }
       else if (t.isOperational())
diff --git a/opendj-server-legacy/src/main/java/org/opends/server/types/DirectoryConfig.java b/opendj-server-legacy/src/main/java/org/opends/server/types/DirectoryConfig.java
index f7a94e1..f06eabb 100644
--- a/opendj-server-legacy/src/main/java/org/opends/server/types/DirectoryConfig.java
+++ b/opendj-server-legacy/src/main/java/org/opends/server/types/DirectoryConfig.java
@@ -215,28 +215,6 @@
   }
 
   /**
-   * Retrieves the objectclass for the provided lowercase name or OID.
-   * It can optionally return a generated "default" version if the
-   * requested objectclass is not defined in the schema.
-   *
-   * @param  lowerName      The lowercase name or OID for the
-   *                        objectclass to retrieve.
-   * @param  returnDefault  Indicates whether to generate a default
-   *                        version if the requested objectclass is
-   *                        not defined in the server schema.
-   *
-   * @return  The objectclass type, or <CODE>null</CODE> if there is
-   *          no objectclass with the specified name or OID defined in
-   *          the server schema and a default class should not be
-   *          returned.
-   */
-  public static ObjectClass
-       getObjectClass(String lowerName, boolean returnDefault)
-  {
-    return DirectoryServer.getObjectClass(lowerName, returnDefault);
-  }
-
-  /**
    * Retrieves the "top" objectClass, which should be the topmost
    * objectclass in the inheritance chain for most other
    * objectclasses.
diff --git a/opendj-server-legacy/src/main/java/org/opends/server/types/Entry.java b/opendj-server-legacy/src/main/java/org/opends/server/types/Entry.java
index f0fb6b9..40a71b4 100644
--- a/opendj-server-legacy/src/main/java/org/opends/server/types/Entry.java
+++ b/opendj-server-legacy/src/main/java/org/opends/server/types/Entry.java
@@ -61,7 +61,6 @@
 import static org.forgerock.opendj.ldap.ResultCode.*;
 import static org.opends.messages.CoreMessages.*;
 import static org.opends.messages.UtilityMessages.*;
-import static org.opends.server.config.ConfigConstants.*;
 import static org.opends.server.util.CollectionUtils.*;
 import static org.opends.server.util.LDIFWriter.*;
 import static org.opends.server.util.ServerConstants.*;
@@ -1345,9 +1344,7 @@
     for (ByteString v : a)
     {
       String ocName = v.toString();
-      String lowerName = toLowerCase(ocName);
-      ObjectClass oc = DirectoryServer.getObjectClass(lowerName, true);
-      ocs.put(oc, ocName);
+      ocs.put(DirectoryServer.getObjectClass2(ocName), ocName);
     }
 
     AttributeDescription attrDesc = a.getAttributeDescription();
@@ -3494,9 +3491,7 @@
   {
     entryBuffer.position(startPos);
     final String ocName = entryBuffer.readStringUtf8(endPos - startPos);
-    final String lowerName = toLowerCase(ocName);
-    final ObjectClass oc = DirectoryServer.getObjectClass(lowerName, true);
-    objectClasses.put(oc, ocName);
+    objectClasses.put(DirectoryServer.getObjectClass2(ocName), ocName);
   }
 
   /**
@@ -4231,7 +4226,7 @@
         String lowerName = toLowerName(rule, v);
 
         // Create a default object class if necessary.
-        ObjectClass oc = DirectoryServer.getObjectClass(lowerName, true);
+        ObjectClass oc = DirectoryServer.getObjectClass2(lowerName);
 
         if (replace)
         {
diff --git a/opendj-server-legacy/src/test/java/org/opends/server/core/AddOperationTestCase.java b/opendj-server-legacy/src/test/java/org/opends/server/core/AddOperationTestCase.java
index ad3552d..fb41e2b 100644
--- a/opendj-server-legacy/src/test/java/org/opends/server/core/AddOperationTestCase.java
+++ b/opendj-server-legacy/src/test/java/org/opends/server/core/AddOperationTestCase.java
@@ -284,7 +284,7 @@
 
     UpdatePreOpPlugin.reset();
 
-    ObjectClass oc = DirectoryServer.getObjectClass("extensibleobject", true);
+    ObjectClass oc = DirectoryServer.getObjectClass2("extensibleobject");
     UpdatePreOpPlugin.addObjectClassToAdd(oc);
 
     AddOperation addOperation = getRootConnection().processAdd(entry);
@@ -316,7 +316,7 @@
 
     UpdatePreOpPlugin.reset();
 
-    ObjectClass oc = DirectoryServer.getObjectClass("extensibleobject", true);
+    ObjectClass oc = DirectoryServer.getObjectClass2("extensibleobject");
     UpdatePreOpPlugin.addObjectClassToRemove(oc);
 
     AddOperation addOperation = getRootConnection().processAdd(entry);
diff --git a/opendj-server-legacy/src/test/java/org/opends/server/core/ModifyOperationTestCase.java b/opendj-server-legacy/src/test/java/org/opends/server/core/ModifyOperationTestCase.java
index aca7fe0..8f104cb 100644
--- a/opendj-server-legacy/src/test/java/org/opends/server/core/ModifyOperationTestCase.java
+++ b/opendj-server-legacy/src/test/java/org/opends/server/core/ModifyOperationTestCase.java
@@ -2123,8 +2123,7 @@
     retrieveSuccessfulOperationElements(modifyOperation);
 
     Entry e = DirectoryServer.getEntry(DN.valueOf("uid=test.user," + baseDN));
-    assertFalse(e.hasObjectClass(
-         DirectoryServer.getObjectClass("extensibleobject", true)));
+    assertFalse(e.hasObjectClass(DirectoryServer.getObjectClass2("extensibleobject")));
   }
 
 
@@ -2160,11 +2159,11 @@
     retrieveSuccessfulOperationElements(modifyOperation);
 
     Entry e = DirectoryServer.getEntry(DN.valueOf("uid=test.user," + baseDN));
-    assertTrue(e.hasObjectClass(DirectoryServer.getObjectClass("extensibleobject", true)));
-    assertTrue(e.hasObjectClass(DirectoryServer.getObjectClass("inetOrgPerson", true)));
-    assertTrue(e.hasObjectClass(DirectoryServer.getObjectClass("organizationalPerson", true)));
-    assertTrue(e.hasObjectClass(DirectoryServer.getObjectClass("person", true)));
-    assertTrue(e.hasObjectClass(DirectoryServer.getObjectClass("top", true)));
+    assertTrue(e.hasObjectClass(DirectoryServer.getObjectClass2("extensibleobject")));
+    assertTrue(e.hasObjectClass(DirectoryServer.getObjectClass2("inetOrgPerson")));
+    assertTrue(e.hasObjectClass(DirectoryServer.getObjectClass2("organizationalPerson")));
+    assertTrue(e.hasObjectClass(DirectoryServer.getObjectClass2("person")));
+    assertTrue(e.hasObjectClass(DirectoryServer.getObjectClass2("top")));
     assertEquals(e.getUserAttributes().size(), 8, "Incorrect number of user attributes");
   }
 
diff --git a/opendj-server-legacy/src/test/java/org/opends/server/tasks/TestBackupAndRestore.java b/opendj-server-legacy/src/test/java/org/opends/server/tasks/TestBackupAndRestore.java
index d0d927c..e649dd7 100644
--- a/opendj-server-legacy/src/test/java/org/opends/server/tasks/TestBackupAndRestore.java
+++ b/opendj-server-legacy/src/test/java/org/opends/server/tasks/TestBackupAndRestore.java
@@ -12,7 +12,7 @@
  * information: "Portions Copyright [year] [name of copyright owner]".
  *
  * Copyright 2006-2008 Sun Microsystems, Inc.
- * Portions Copyright 2014-2015 ForgeRock AS.
+ * Portions Copyright 2014-2016 ForgeRock AS.
  */
 package org.opends.server.tasks;
 
@@ -188,7 +188,7 @@
     final int restoreBeginCountStart = restoreBeginCount.get();
     final int restoreEndCountStart = restoreEndCount.get();
 
-    ObjectClass backupClass = DirectoryServer.getObjectClass("ds-task-backup", true);
+    ObjectClass backupClass = DirectoryServer.getObjectClass2("ds-task-backup");
 
     testTask(taskEntry, expectedState, 30);
     if (expectedState == TaskState.COMPLETED_SUCCESSFULLY ||
diff --git a/opendj-server-legacy/src/test/java/org/opends/server/tasks/TestImportAndExport.java b/opendj-server-legacy/src/test/java/org/opends/server/tasks/TestImportAndExport.java
index 378409a..533a63d 100644
--- a/opendj-server-legacy/src/test/java/org/opends/server/tasks/TestImportAndExport.java
+++ b/opendj-server-legacy/src/test/java/org/opends/server/tasks/TestImportAndExport.java
@@ -12,9 +12,8 @@
  * information: "Portions Copyright [year] [name of copyright owner]".
  *
  * Copyright 2006-2009 Sun Microsystems, Inc.
- * Portions Copyright 2011-2015 ForgeRock AS.
+ * Portions Copyright 2011-2016 ForgeRock AS.
  */
-
 package org.opends.server.tasks;
 
 import java.io.File;
@@ -358,7 +357,7 @@
     int importEndCount   = TestTaskListener.importEndCount.get();
 
     ObjectClass exportClass =
-         DirectoryServer.getObjectClass("ds-task-export", true);
+         DirectoryServer.getObjectClass2("ds-task-export");
 
     // Use a big timeout since this test is sensitive to host environment (e.g.
     // low memory, etc). See issue OPENDJ-256.

--
Gitblit v1.10.0