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

Jean-Noël Rouvignac
07.40.2016 6276e230cb3cfcbb25f8dfe8123fcfd81d13d83c
OPENDJ-3037 inlined DirectoryServer methods that delegate to the schema
46 files modified
258 ■■■■■ changed files
opendj-server-legacy/src/main/java/org/forgerock/opendj/adapter/server3x/Converters.java 2 ●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/guitools/controlpanel/datamodel/CustomSearchResult.java 2 ●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/guitools/controlpanel/ui/ManageTasksPanel.java 2 ●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/api/CompressedSchema.java 2 ●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/api/MonitorData.java 2 ●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/backends/BackupBackend.java 6 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/backends/ChangelogBackend.java 4 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/backends/MonitorBackend.java 4 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/backends/NullBackend.java 15 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/backends/RootDSEBackend.java 2 ●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/backends/SchemaBackend.java 8 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/backends/TrustStoreBackend.java 6 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/core/AddOperationBasis.java 2 ●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/core/DirectoryServer.java 35 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/core/SubentryPasswordPolicy.java 4 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/crypto/CryptoManagerImpl.java 19 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/crypto/CryptoManagerSync.java 6 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/extensions/DynamicGroup.java 2 ●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/extensions/StaticGroup.java 2 ●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/extensions/VirtualStaticGroup.java 2 ●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/monitors/BackendMonitor.java 2 ●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/monitors/ConnectionHandlerMonitor.java 2 ●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/plugins/LDAPADListPlugin.java 2 ●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/protocols/internal/InternalClientConnection.java 12 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/protocols/ldap/LDAPStatistics.java 2 ●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/protocols/ldap/SearchResultEntryProtocolOp.java 2 ●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/replication/plugin/LDAPReplicationDomain.java 2 ●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/tools/ConfigureDS.java 2 ●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/tools/LDIFModify.java 2 ●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/tools/LDIFSearch.java 2 ●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/tools/makeldif/TemplateEntry.java 2 ●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/types/Entry.java 12 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/types/SubtreeSpecification.java 2 ●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/util/LDIFReader.java 2 ●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/util/StaticUtils.java 2 ●●● patch | view | raw | blame | history
opendj-server-legacy/src/test/java/org/forgerock/opendj/adapter/server3x/ConvertersTestCase.java 2 ●●● patch | view | raw | blame | history
opendj-server-legacy/src/test/java/org/opends/server/backends/SchemaBackendTestCase.java 8 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/test/java/org/opends/server/backends/pluggable/TestDnKeyFormat.java 2 ●●● patch | view | raw | blame | history
opendj-server-legacy/src/test/java/org/opends/server/core/AddOperationTestCase.java 8 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/test/java/org/opends/server/core/ModifyOperationTestCase.java 4 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/test/java/org/opends/server/replication/plugin/FractionalReplicationTest.java 45 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/test/java/org/opends/server/replication/plugin/ModifyConflictTest.java 3 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/test/java/org/opends/server/replication/protocol/SynchronizationMsgTest.java 2 ●●● patch | view | raw | blame | history
opendj-server-legacy/src/test/java/org/opends/server/tasks/TestBackupAndRestore.java 2 ●●● patch | view | raw | blame | history
opendj-server-legacy/src/test/java/org/opends/server/tasks/TestImportAndExport.java 3 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/test/java/org/opends/server/util/TestLDIFWriter.java 2 ●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/forgerock/opendj/adapter/server3x/Converters.java
@@ -89,7 +89,7 @@
                if (attribute.getAttributeDescription().getAttributeType().isObjectClass()) {
                    for (ByteString attrName : attribute) {
                        try {
                            entry.addObjectClass(DirectoryServer.getObjectClass(attrName.toString()));
                            entry.addObjectClass(DirectoryServer.getSchema().getObjectClass(attrName.toString()));
                        } catch (DirectoryException e) {
                            throw new IllegalStateException(e.getMessage(), e);
                        }
opendj-server-legacy/src/main/java/org/opends/guitools/controlpanel/datamodel/CustomSearchResult.java
@@ -277,7 +277,7 @@
        for (Object value : getAttributeValues(attrType.getNameOrOID()))
        {
          String ocName = value.toString().trim();
          objectClasses.put(DirectoryServer.getObjectClass(ocName), ocName);
          objectClasses.put(DirectoryServer.getSchema().getObjectClass(ocName), ocName);
        }
      }
      else
opendj-server-legacy/src/main/java/org/opends/guitools/controlpanel/ui/ManageTasksPanel.java
@@ -651,7 +651,7 @@
        for (Object value : csr.getAttributeValues(attrType.getNameOrOID()))
        {
          String ocName = value.toString().trim();
          objectClasses.put(DirectoryServer.getObjectClass(ocName), ocName);
          objectClasses.put(DirectoryServer.getSchema().getObjectClass(ocName), ocName);
        }
      }
      else
opendj-server-legacy/src/main/java/org/opends/server/api/CompressedSchema.java
@@ -603,7 +603,7 @@
    final LinkedHashMap<ObjectClass, String> ocMap = new LinkedHashMap<>(objectClassNames.size());
    for (final String name : objectClassNames)
    {
      ocMap.put(DirectoryServer.getObjectClass(name), name);
      ocMap.put(DirectoryServer.getSchema().getObjectClass(name), name);
    }
    if (sync)
    {
opendj-server-legacy/src/main/java/org/opends/server/api/MonitorData.java
@@ -132,7 +132,7 @@
  private void add(String attrName, Syntax syntax, Object attrValue)
  {
    AttributeType attrType = getAttributeType(attrName, syntax);
    AttributeType attrType = getSchema().getAttributeType(attrName, syntax);
    attrs.add(Attributes.create(attrType, String.valueOf(attrValue)));
  }
opendj-server-legacy/src/main/java/org/opends/server/backends/BackupBackend.java
@@ -213,7 +213,7 @@
    // Construct the backup base entry.
    LinkedHashMap<ObjectClass,String> objectClasses = new LinkedHashMap<>(2);
    objectClasses.put(CoreSchema.getTopObjectClass(), OC_TOP);
    objectClasses.put(DirectoryServer.getObjectClass(OC_UNTYPED_OBJECT_LC), OC_UNTYPED_OBJECT);
    objectClasses.put(DirectoryServer.getSchema().getObjectClass(OC_UNTYPED_OBJECT_LC), OC_UNTYPED_OBJECT);
    LinkedHashMap<AttributeType,List<Attribute>> opAttrs = new LinkedHashMap<>(0);
    LinkedHashMap<AttributeType,List<Attribute>> userAttrs = new LinkedHashMap<>(1);
@@ -503,7 +503,7 @@
    // Construct the backup directory entry to return.
    LinkedHashMap<ObjectClass,String> ocMap = new LinkedHashMap<>(2);
    ocMap.put(CoreSchema.getTopObjectClass(), OC_TOP);
    ocMap.put(DirectoryServer.getObjectClass(OC_BACKUP_DIRECTORY), OC_BACKUP_DIRECTORY);
    ocMap.put(DirectoryServer.getSchema().getObjectClass(OC_BACKUP_DIRECTORY), OC_BACKUP_DIRECTORY);
    LinkedHashMap<AttributeType,List<Attribute>> opAttrs = new LinkedHashMap<>(0);
    LinkedHashMap<AttributeType,List<Attribute>> userAttrs = new LinkedHashMap<>(3);
@@ -579,7 +579,7 @@
    // Construct the backup entry to return.
    LinkedHashMap<ObjectClass, String> ocMap = new LinkedHashMap<>(3);
    ocMap.put(CoreSchema.getTopObjectClass(), OC_TOP);
    ocMap.put(DirectoryServer.getObjectClass(OC_BACKUP_INFO), OC_BACKUP_INFO);
    ocMap.put(DirectoryServer.getSchema().getObjectClass(OC_BACKUP_INFO), OC_BACKUP_INFO);
    ocMap.put(CoreSchema.getExtensibleObjectObjectClass(), OC_EXTENSIBLE_OBJECT);
    LinkedHashMap<AttributeType, List<Attribute>> opAttrs = new LinkedHashMap<>(0);
opendj-server-legacy/src/main/java/org/opends/server/backends/ChangelogBackend.java
@@ -178,7 +178,7 @@
  static
  {
    CHANGELOG_ROOT_OBJECT_CLASSES.put(CoreSchema.getTopObjectClass(), OC_TOP);
    CHANGELOG_ROOT_OBJECT_CLASSES.put(DirectoryServer.getObjectClass("container"), "container");
    CHANGELOG_ROOT_OBJECT_CLASSES.put(DirectoryServer.getSchema().getObjectClass("container"), "container");
  }
  /** The set of objectclasses that will be used in ECL entries. */
@@ -187,7 +187,7 @@
  static
  {
    CHANGELOG_ENTRY_OBJECT_CLASSES.put(CoreSchema.getTopObjectClass(), OC_TOP);
    CHANGELOG_ENTRY_OBJECT_CLASSES.put(DirectoryServer.getObjectClass(OC_CHANGELOG_ENTRY), OC_CHANGELOG_ENTRY);
    CHANGELOG_ENTRY_OBJECT_CLASSES.put(getSchema().getObjectClass(OC_CHANGELOG_ENTRY), OC_CHANGELOG_ENTRY);
  }
  /** The attribute type for the "creatorsName" attribute. */
opendj-server-legacy/src/main/java/org/opends/server/backends/MonitorBackend.java
@@ -195,7 +195,7 @@
    // Construct the set of objectclasses to include in the base monitor entry.
    monitorObjectClasses.put(CoreSchema.getTopObjectClass(), OC_TOP);
    monitorObjectClasses.put(DirectoryServer.getObjectClass(OC_MONITOR_ENTRY), OC_MONITOR_ENTRY);
    monitorObjectClasses.put(DirectoryServer.getSchema().getObjectClass(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.
@@ -632,7 +632,7 @@
   */
  private Entry getBranchMonitorEntry(final DN dn)
  {
    final ObjectClass monitorOC = DirectoryServer.getObjectClass(OC_MONITOR_BRANCH);
    final ObjectClass monitorOC = DirectoryServer.getSchema().getObjectClass(OC_MONITOR_BRANCH);
    final HashMap<ObjectClass, String> monitorClasses = newObjectClasses(monitorOC, OC_MONITOR_BRANCH);
    final HashMap<AttributeType, List<Attribute>> monitorUserAttrs = new LinkedHashMap<>();
opendj-server-legacy/src/main/java/org/opends/server/backends/NullBackend.java
@@ -16,6 +16,7 @@
 */
package org.opends.server.backends;
import static org.forgerock.opendj.ldap.schema.CoreSchema.*;
import static org.opends.messages.BackendMessages.*;
import static org.opends.server.util.ServerConstants.*;
import static org.opends.server.util.StaticUtils.*;
@@ -33,7 +34,6 @@
import org.forgerock.opendj.ldap.ResultCode;
import org.forgerock.opendj.ldap.SearchScope;
import org.forgerock.opendj.ldap.schema.AttributeType;
import org.forgerock.opendj.ldap.schema.CoreSchema;
import org.forgerock.opendj.ldap.schema.ObjectClass;
import org.forgerock.opendj.server.config.server.BackendCfg;
import org.opends.server.api.Backend;
@@ -144,10 +144,11 @@
    // Initialize null entry object classes.
    objectClasses = new HashMap<>();
    objectClasses.put(CoreSchema.getTopObjectClass(), OC_TOP);
    objectClasses.put(getTopObjectClass(), OC_TOP);
    objectClasses.put(getExtensibleObjectObjectClass(), "extensibleobject");
    String nulOCName = "nullbackendobject";
    ObjectClass nulOC = DirectoryServer.getObjectClass(nulOCName);
    ObjectClass nulOC = DirectoryServer.getSchema().getObjectClass(nulOCName);
    try {
      DirectoryServer.getSchema().registerObjectClass(nulOC, new ServerSchemaElement(nulOC).getSchemaFile(), false);
    } catch (DirectoryException de) {
@@ -155,14 +156,6 @@
      throw new InitializationException(de.getMessageObject());
    }
    objectClasses.put(nulOC, nulOCName);
    String extOCName = "extensibleobject";
    ObjectClass extOC = DirectoryServer.getObjectClass(extOCName);
    if (extOC.isPlaceHolder()) {
      throw new InitializationException(LocalizableMessage.raw("Unable to locate " + extOCName +
        " objectclass in the current server schema"));
    }
    objectClasses.put(extOC, extOCName);
  }
  @Override
opendj-server-legacy/src/main/java/org/opends/server/backends/RootDSEBackend.java
@@ -222,7 +222,7 @@
    // Construct the set of objectclasses to include in the root DSE entry.
    dseObjectClasses = new HashMap<>(2);
    dseObjectClasses.put(getTopObjectClass(), OC_TOP);
    dseObjectClasses.put(DirectoryServer.getObjectClass(OC_ROOT_DSE), OC_ROOT_DSE);
    dseObjectClasses.put(DirectoryServer.getSchema().getObjectClass(OC_ROOT_DSE), OC_ROOT_DSE);
    // Set the backend ID for this backend. The identifier needs to be
    // specific enough to avoid conflict with user backend identifiers.
opendj-server-legacy/src/main/java/org/opends/server/backends/SchemaBackend.java
@@ -241,8 +241,8 @@
    // Construct the set of objectclasses to include in the schema entry.
    schemaObjectClasses = new LinkedHashMap<>(3);
    schemaObjectClasses.put(CoreSchema.getTopObjectClass(), OC_TOP);
    schemaObjectClasses.put(DirectoryServer.getObjectClass(OC_LDAP_SUBENTRY_LC), OC_LDAP_SUBENTRY);
    schemaObjectClasses.put(DirectoryServer.getObjectClass(OC_SUBSCHEMA), OC_SUBSCHEMA);
    schemaObjectClasses.put(DirectoryServer.getSchema().getObjectClass(OC_LDAP_SUBENTRY_LC), OC_LDAP_SUBENTRY);
    schemaObjectClasses.put(DirectoryServer.getSchema().getObjectClass(OC_SUBSCHEMA), OC_SUBSCHEMA);
    configEntryDN = configEntry.getName();
    baseDNs = cfg.getBaseDN();
@@ -2203,8 +2203,8 @@
  {
    Map<ObjectClass,String> objectClasses = new LinkedHashMap<>();
    objectClasses.put(CoreSchema.getTopObjectClass(), OC_TOP);
    objectClasses.put(DirectoryServer.getObjectClass(OC_LDAP_SUBENTRY_LC), OC_LDAP_SUBENTRY);
    objectClasses.put(DirectoryServer.getObjectClass(OC_SUBSCHEMA), OC_SUBSCHEMA);
    objectClasses.put(DirectoryServer.getSchema().getObjectClass(OC_LDAP_SUBENTRY_LC), OC_LDAP_SUBENTRY);
    objectClasses.put(DirectoryServer.getSchema().getObjectClass(OC_SUBSCHEMA), OC_SUBSCHEMA);
    Map<AttributeType,List<Attribute>> userAttributes = new LinkedHashMap<>();
    Map<AttributeType,List<Attribute>> operationalAttributes = new LinkedHashMap<>();
opendj-server-legacy/src/main/java/org/opends/server/backends/TrustStoreBackend.java
@@ -191,7 +191,7 @@
    // Construct the trust store base entry.
    LinkedHashMap<ObjectClass,String> objectClasses = new LinkedHashMap<>(2);
    objectClasses.put(CoreSchema.getTopObjectClass(), OC_TOP);
    objectClasses.put(DirectoryServer.getObjectClass("ds-cfg-branch"), "ds-cfg-branch");
    objectClasses.put(DirectoryServer.getSchema().getObjectClass("ds-cfg-branch"), "ds-cfg-branch");
    LinkedHashMap<AttributeType,List<Attribute>> userAttrs = new LinkedHashMap<>(1);
    for (AVA ava : getBaseDN().rdn())
@@ -415,7 +415,7 @@
    // Construct the certificate entry to return.
    LinkedHashMap<ObjectClass,String> ocMap = new LinkedHashMap<>(2);
    ocMap.put(CoreSchema.getTopObjectClass(), OC_TOP);
    ocMap.put(DirectoryServer.getObjectClass(OC_CRYPTO_INSTANCE_KEY), OC_CRYPTO_INSTANCE_KEY);
    ocMap.put(DirectoryServer.getSchema().getObjectClass(OC_CRYPTO_INSTANCE_KEY), OC_CRYPTO_INSTANCE_KEY);
    LinkedHashMap<AttributeType,List<Attribute>> opAttrs = new LinkedHashMap<>(0);
    LinkedHashMap<AttributeType,List<Attribute>> userAttrs = new LinkedHashMap<>(3);
@@ -1056,7 +1056,7 @@
        throw new DirectoryException(ResultCode.ENTRY_ALREADY_EXISTS, message);
      }
      if (entry.hasObjectClass(DirectoryServer.getObjectClass(OC_SELF_SIGNED_CERT_REQUEST)))
      if (entry.hasObjectClass(DirectoryServer.getSchema().getObjectClass(OC_SELF_SIGNED_CERT_REQUEST)))
      {
        try
        {
opendj-server-legacy/src/main/java/org/opends/server/core/AddOperationBasis.java
@@ -326,7 +326,7 @@
            for (ByteString os : a.getValues())
            {
              String ocName = os.toString();
              objectClasses.put(getObjectClass(ocName), ocName);
              objectClasses.put(getSchema().getObjectClass(ocName), ocName);
            }
          }
          else if (attrType.isOperational())
opendj-server-legacy/src/main/java/org/opends/server/core/DirectoryServer.java
@@ -70,8 +70,6 @@
import org.forgerock.opendj.ldap.DN;
import org.forgerock.opendj.ldap.ResultCode;
import org.forgerock.opendj.ldap.schema.AttributeType;
import org.forgerock.opendj.ldap.schema.ObjectClass;
import org.forgerock.opendj.ldap.schema.Syntax;
import org.forgerock.opendj.server.config.server.AlertHandlerCfg;
import org.forgerock.opendj.server.config.server.ConnectionHandlerCfg;
import org.forgerock.opendj.server.config.server.CryptoManagerCfg;
@@ -2277,20 +2275,6 @@
  }
  /**
   * 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 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 nameOrOid)
  {
    return directoryServer.schema.getObjectClass(nameOrOid);
  }
  /**
   * Retrieves the attribute type for the provided name or OID. It can optionally return a generated
   * placeholder version if the requested attribute type is not defined in the schema.
   *
@@ -2301,24 +2285,7 @@
   */
  public static AttributeType getAttributeType(String nameOrOid)
  {
    return getAttributeType(nameOrOid, getSchema().getDefaultSyntax());
  }
  /**
   * Retrieves the attribute type for the provided name or OID. It will return a generated
   * placeholder version with the name or OID if the requested attribute type is not defined in the
   * schema.
   *
   * @param nameOrOid
   *          The name or OID for the attribute type to look for.
   * @param syntax
   *          The syntax for the attribute type to generate.
   * @return The requested attribute type, or a generated placeholder version if there is no
   *         attribute with the specified type defined in the server schema
   */
  public static AttributeType getAttributeType(String nameOrOid, Syntax syntax)
  {
    return directoryServer.schema.getAttributeType(nameOrOid, syntax);
    return getSchema().getAttributeType(nameOrOid, getSchema().getDefaultSyntax());
  }
  /**
opendj-server-legacy/src/main/java/org/opends/server/core/SubentryPasswordPolicy.java
@@ -140,7 +140,7 @@
  public SubentryPasswordPolicy(SubEntry subentry) throws DirectoryException
  {
    // Determine if this is a password policy subentry.
    ObjectClass pwdPolicyOC = DirectoryServer.getObjectClass(PWD_OC_POLICY);
    ObjectClass pwdPolicyOC = DirectoryServer.getSchema().getObjectClass(PWD_OC_POLICY);
    Entry entry = subentry.getEntry();
    Map<ObjectClass, String> objectClasses = entry.getObjectClasses();
    if (pwdPolicyOC.isPlaceHolder())
@@ -245,7 +245,7 @@
    // Now check for the pwdValidatorPolicy OC and its attribute.
    // Determine if this is a password validator policy object class.
    ObjectClass pwdValidatorPolicyOC = DirectoryServer.getObjectClass(PWD_OC_VALIDATORPOLICY);
    ObjectClass pwdValidatorPolicyOC = DirectoryServer.getSchema().getObjectClass(PWD_OC_VALIDATORPOLICY);
    if (!pwdValidatorPolicyOC.isPlaceHolder() &&
        objectClasses.containsKey(pwdValidatorPolicyOC))
    {
opendj-server-legacy/src/main/java/org/opends/server/crypto/CryptoManagerImpl.java
@@ -60,12 +60,11 @@
import javax.net.ssl.SSLContext;
import javax.net.ssl.TrustManager;
import net.jcip.annotations.GuardedBy;
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.ByteString;
import org.forgerock.opendj.ldap.DN;
import org.forgerock.opendj.ldap.ModificationType;
@@ -74,10 +73,10 @@
import org.forgerock.opendj.ldap.SearchScope;
import org.forgerock.opendj.ldap.schema.AttributeType;
import org.forgerock.opendj.ldap.schema.CoreSchema;
import org.forgerock.opendj.ldap.schema.ObjectClass;
import org.forgerock.opendj.server.config.server.CryptoManagerCfg;
import org.forgerock.util.Reject;
import org.opends.admin.ads.ADSContext;
import org.forgerock.opendj.config.server.ConfigurationChangeListener;
import org.forgerock.opendj.server.config.server.CryptoManagerCfg;
import org.opends.server.api.Backend;
import org.opends.server.backends.TrustStoreBackend;
import org.opends.server.core.AddOperation;
@@ -106,13 +105,14 @@
import org.opends.server.types.IdentifiedException;
import org.opends.server.types.InitializationException;
import org.opends.server.types.Modification;
import org.forgerock.opendj.ldap.schema.ObjectClass;
import org.opends.server.types.SearchResultEntry;
import org.opends.server.util.Base64;
import org.opends.server.util.SelectableCertificateKeyManager;
import org.opends.server.util.ServerConstants;
import org.opends.server.util.StaticUtils;
import net.jcip.annotations.GuardedBy;
import static org.opends.messages.CoreMessages.*;
import static org.opends.server.config.ConfigConstants.*;
import static org.opends.server.protocols.internal.InternalClientConnection.*;
@@ -295,10 +295,11 @@
      attrInitVectorLength = DirectoryServer.getAttributeType(ATTR_CRYPTO_INIT_VECTOR_LENGTH_BITS);
      attrKeyLength = DirectoryServer.getAttributeType(ATTR_CRYPTO_KEY_LENGTH_BITS);
      attrCompromisedTime = DirectoryServer.getAttributeType(ATTR_CRYPTO_KEY_COMPROMISED_TIME);
      ocCertRequest = DirectoryServer.getObjectClass("ds-cfg-self-signed-cert-request"); // TODO: ConfigConstants
      ocInstanceKey = DirectoryServer.getObjectClass(OC_CRYPTO_INSTANCE_KEY);
      ocCipherKey = DirectoryServer.getObjectClass(OC_CRYPTO_CIPHER_KEY);
      ocMacKey = DirectoryServer.getObjectClass(OC_CRYPTO_MAC_KEY);
      // TODO: ConfigConstants
      ocCertRequest = DirectoryServer.getSchema().getObjectClass("ds-cfg-self-signed-cert-request");
      ocInstanceKey = DirectoryServer.getSchema().getObjectClass(OC_CRYPTO_INSTANCE_KEY);
      ocCipherKey = DirectoryServer.getSchema().getObjectClass(OC_CRYPTO_CIPHER_KEY);
      ocMacKey = DirectoryServer.getSchema().getObjectClass(OC_CRYPTO_MAC_KEY);
      localTruststoreDN = DN.valueOf(DN_TRUST_STORE_ROOT);
      DN adminSuffixDN = DN.valueOf(ADSContext.getAdministrationSuffixDN());
opendj-server-legacy/src/main/java/org/opends/server/crypto/CryptoManagerSync.java
@@ -155,9 +155,9 @@
    {
    }
    ocInstanceKey = DirectoryServer.getObjectClass(OC_CRYPTO_INSTANCE_KEY);
    ocCipherKey = DirectoryServer.getObjectClass(OC_CRYPTO_CIPHER_KEY);
    ocMacKey = DirectoryServer.getObjectClass(OC_CRYPTO_MAC_KEY);
    ocInstanceKey = DirectoryServer.getSchema().getObjectClass(OC_CRYPTO_INSTANCE_KEY);
    ocCipherKey = DirectoryServer.getSchema().getObjectClass(OC_CRYPTO_CIPHER_KEY);
    ocMacKey = DirectoryServer.getSchema().getObjectClass(OC_CRYPTO_MAC_KEY);
    attrCert = getAttributeType(ATTR_CRYPTO_PUBLIC_KEY_CERTIFICATE);
    attrAlias = getAttributeType(ATTR_CRYPTO_KEY_ID);
opendj-server-legacy/src/main/java/org/opends/server/extensions/DynamicGroup.java
@@ -147,7 +147,7 @@
    ifNull(entry);
    // FIXME -- This needs to exclude enhanced groups once we have support for them.
    return entry.hasObjectClass(DirectoryServer.getObjectClass(OC_GROUP_OF_URLS_LC));
    return entry.hasObjectClass(DirectoryServer.getSchema().getObjectClass(OC_GROUP_OF_URLS_LC));
  }
  @Override
opendj-server-legacy/src/main/java/org/opends/server/extensions/StaticGroup.java
@@ -261,7 +261,7 @@
  private boolean hasObjectClass(Entry entry, String ocName)
  {
    return entry.hasObjectClass(DirectoryServer.getObjectClass(ocName));
    return entry.hasObjectClass(DirectoryServer.getSchema().getObjectClass(ocName));
  }
  @Override
opendj-server-legacy/src/main/java/org/opends/server/extensions/VirtualStaticGroup.java
@@ -158,7 +158,7 @@
    ifNull(entry);
    // FIXME -- This needs to exclude enhanced groups once we have support for them.
    return entry.hasObjectClass(DirectoryServer.getObjectClass(OC_VIRTUAL_STATIC_GROUP));
    return entry.hasObjectClass(DirectoryServer.getSchema().getObjectClass(OC_VIRTUAL_STATIC_GROUP));
  }
  @Override
opendj-server-legacy/src/main/java/org/opends/server/monitors/BackendMonitor.java
@@ -81,7 +81,7 @@
  @Override
  public ObjectClass getMonitorObjectClass()
  {
    return DirectoryServer.getObjectClass(OC_MONITOR_BACKEND);
    return DirectoryServer.getSchema().getObjectClass(OC_MONITOR_BACKEND);
  }
  @Override
opendj-server-legacy/src/main/java/org/opends/server/monitors/ConnectionHandlerMonitor.java
@@ -91,7 +91,7 @@
  @Override
  public ObjectClass getMonitorObjectClass()
  {
    return DirectoryServer.getObjectClass(OC_MONITOR_CONNHANDLER);
    return DirectoryServer.getSchema().getObjectClass(OC_MONITOR_CONNHANDLER);
  }
opendj-server-legacy/src/main/java/org/opends/server/plugins/LDAPADListPlugin.java
@@ -89,7 +89,7 @@
        if (attrName.startsWith("@"))
        {
          final String ocName = attrName.substring(1);
          final ObjectClass oc = getObjectClass(ocName);
          final ObjectClass oc = getSchema().getObjectClass(ocName);
          if (oc.isPlaceHolder())
          {
            logger.trace("Cannot replace unknown objectclass %s", ocName);
opendj-server-legacy/src/main/java/org/opends/server/protocols/internal/InternalClientConnection.java
@@ -18,6 +18,7 @@
import static org.forgerock.opendj.adapter.server3x.Converters.*;
import static org.forgerock.opendj.ldap.ByteString.*;
import static org.forgerock.opendj.ldap.schema.CoreSchema.*;
import static org.opends.messages.ProtocolMessages.*;
import static org.opends.server.config.ConfigConstants.*;
import static org.opends.server.util.CollectionUtils.*;
@@ -44,7 +45,7 @@
import org.forgerock.opendj.ldap.requests.ModifyDNRequest;
import org.forgerock.opendj.ldap.requests.ModifyRequest;
import org.forgerock.opendj.ldap.schema.AttributeType;
import org.forgerock.opendj.ldap.schema.CoreSchema;
import org.forgerock.opendj.ldap.schema.ObjectClass;
import org.opends.server.api.ClientConnection;
import org.opends.server.api.ConnectionHandler;
import org.opends.server.core.AddOperation;
@@ -75,7 +76,6 @@
import org.opends.server.types.Entry;
import org.opends.server.types.IntermediateResponse;
import org.opends.server.types.Modification;
import org.forgerock.opendj.ldap.schema.ObjectClass;
import org.opends.server.types.Operation;
import org.opends.server.types.Privilege;
import org.opends.server.types.RawAttribute;
@@ -153,9 +153,9 @@
    try
    {
      LinkedHashMap<ObjectClass,String> objectClasses = new LinkedHashMap<>();
      put(objectClasses, CoreSchema.getTopObjectClass());
      put(objectClasses, DirectoryServer.getObjectClass(OC_PERSON));
      put(objectClasses, DirectoryServer.getObjectClass(OC_ROOT_DN));
      put(objectClasses, getTopObjectClass());
      put(objectClasses, getPersonObjectClass());
      put(objectClasses, DirectoryServer.getSchema().getObjectClass(OC_ROOT_DN));
      LinkedHashMap<AttributeType,List<Attribute>> userAttrs = new LinkedHashMap<>();
      put(userAttrs, ATTR_COMMON_NAME, commonName);
@@ -883,7 +883,7 @@
        for (ByteString v : a)
        {
          String ocName = v.toString();
          objectClasses.put(DirectoryServer.getObjectClass(ocName), ocName);
          objectClasses.put(DirectoryServer.getSchema().getObjectClass(ocName), ocName);
        }
      }
      else
opendj-server-legacy/src/main/java/org/opends/server/protocols/ldap/LDAPStatistics.java
@@ -156,7 +156,7 @@
  @Override
  public ObjectClass getMonitorObjectClass()
  {
    return DirectoryServer.getObjectClass(OC_MONITOR_CONNHANDLERSTATS);
    return DirectoryServer.getSchema().getObjectClass(OC_MONITOR_CONNHANDLERSTATS);
  }
  @Override
opendj-server-legacy/src/main/java/org/opends/server/protocols/ldap/SearchResultEntryProtocolOp.java
@@ -547,7 +547,7 @@
        for (ByteString os : a.getValues())
        {
          String ocName = os.toString();
          ObjectClass oc = DirectoryServer.getObjectClass(ocName);
          ObjectClass oc = DirectoryServer.getSchema().getObjectClass(ocName);
          objectClasses.put(oc, ocName);
        }
      }
opendj-server-legacy/src/main/java/org/opends/server/replication/plugin/LDAPReplicationDomain.java
@@ -4437,7 +4437,7 @@
      if (name.startsWith("@"))
      {
        String ocName = name.substring(1);
        ObjectClass objectClass = DirectoryServer.getObjectClass(ocName);
        ObjectClass objectClass = DirectoryServer.getSchema().getObjectClass(ocName);
        if (!objectClass.isPlaceHolder())
        {
          for (AttributeType at : objectClass.getRequiredAttributes())
opendj-server-legacy/src/main/java/org/opends/server/tools/ConfigureDS.java
@@ -1139,7 +1139,7 @@
      org.forgerock.opendj.ldap.Entry configEntry, String attrName, Syntax syntax, Object...values)
  {
    org.forgerock.opendj.ldap.Entry newEntry = LinkedHashMapEntry.deepCopyOfEntry(configEntry);
    AttributeType attrType = DirectoryServer.getAttributeType(attrName, syntax);
    AttributeType attrType = DirectoryServer.getSchema().getAttributeType(attrName, syntax);
    newEntry.replaceAttribute(new LinkedAttribute(AttributeDescription.create(attrType), values));
    return newEntry;
  }
opendj-server-legacy/src/main/java/org/opends/server/tools/LDIFModify.java
@@ -309,7 +309,7 @@
          for (ByteString v : a)
          {
            String ocName = v.toString();
            objectClasses.put(DirectoryServer.getObjectClass(ocName), ocName);
            objectClasses.put(DirectoryServer.getSchema().getObjectClass(ocName), ocName);
          }
        }
        else if (t.isOperational())
opendj-server-legacy/src/main/java/org/opends/server/tools/LDIFSearch.java
@@ -485,7 +485,7 @@
    for (String objectClassName : objectClassNames)
    {
      ObjectClass c = DirectoryServer.getObjectClass(objectClassName);
      ObjectClass c = DirectoryServer.getSchema().getObjectClass(objectClassName);
      for (AttributeType t : c.getRequiredAttributes())
      {
        if (t.isOperational())
opendj-server-legacy/src/main/java/org/opends/server/tools/makeldif/TemplateEntry.java
@@ -248,7 +248,7 @@
        for (TemplateValue v : valueList)
        {
          String ocName = v.getValue().toString();
          objectClasses.put(DirectoryServer.getObjectClass(ocName), ocName);
          objectClasses.put(DirectoryServer.getSchema().getObjectClass(ocName), ocName);
        }
      }
      else if (t.isOperational())
opendj-server-legacy/src/main/java/org/opends/server/types/Entry.java
@@ -1290,7 +1290,7 @@
    for (ByteString v : a)
    {
      String ocName = v.toString();
      ocs.put(DirectoryServer.getObjectClass(ocName), ocName);
      ocs.put(DirectoryServer.getSchema().getObjectClass(ocName), ocName);
    }
    AttributeDescription attrDesc = a.getAttributeDescription();
@@ -1648,7 +1648,7 @@
    // all attributes required by the object classes are present.
    for (ObjectClass o : objectClasses.keySet())
    {
      if (DirectoryServer.getObjectClass(o.getOID()).isPlaceHolder())
      if (DirectoryServer.getSchema().getObjectClass(o.getOID()).isPlaceHolder())
      {
        invalidReason.append(ERR_ENTRY_SCHEMA_UNKNOWN_OC.get(dn, o.getNameOrOID()));
        return false;
@@ -2405,7 +2405,7 @@
   */
  private boolean hasObjectClassOrAttribute(String objectClassName, String attrTypeName)
  {
    ObjectClass oc = DirectoryServer.getObjectClass(objectClassName);
    ObjectClass oc = DirectoryServer.getSchema().getObjectClass(objectClassName);
    if (oc.isPlaceHolder())
    {
      // This should not happen
@@ -2580,7 +2580,7 @@
   */
  private boolean hasObjectClass(String objectClassLowerCase)
  {
    ObjectClass oc = DirectoryServer.getObjectClass(objectClassLowerCase);
    ObjectClass oc = DirectoryServer.getSchema().getObjectClass(objectClassLowerCase);
    if (oc.isPlaceHolder())
    {
      // This should not happen
@@ -3421,7 +3421,7 @@
  {
    entryBuffer.position(startPos);
    final String ocName = entryBuffer.readStringUtf8(endPos - startPos);
    objectClasses.put(DirectoryServer.getObjectClass(ocName), ocName);
    objectClasses.put(DirectoryServer.getSchema().getObjectClass(ocName), ocName);
  }
  /**
@@ -4156,7 +4156,7 @@
        String lowerName = toLowerName(rule, v);
        // Create a default object class if necessary.
        ObjectClass oc = DirectoryServer.getObjectClass(lowerName);
        ObjectClass oc = DirectoryServer.getSchema().getObjectClass(lowerName);
        if (replace)
        {
opendj-server-legacy/src/main/java/org/opends/server/types/SubtreeSpecification.java
@@ -271,7 +271,7 @@
    @Override
    public boolean matches(final Entry entry)
    {
      final ObjectClass oc = DirectoryServer.getObjectClass(normalizedObjectClass);
      final ObjectClass oc = DirectoryServer.getSchema().getObjectClass(normalizedObjectClass);
      return !oc.isPlaceHolder() && entry.hasObjectClass(oc);
    }
opendj-server-legacy/src/main/java/org/opends/server/util/LDIFReader.java
@@ -757,7 +757,7 @@
      }
      String ocName      = value.toString().trim();
      ObjectClass objectClass = DirectoryServer.getObjectClass(ocName);
      ObjectClass objectClass = DirectoryServer.getSchema().getObjectClass(ocName);
      if (objectClasses.containsKey(objectClass))
      {
        logger.warn(WARN_LDIF_DUPLICATE_OBJECTCLASS, entryDN, lastEntryLineNumber, ocName);
opendj-server-legacy/src/main/java/org/opends/server/util/StaticUtils.java
@@ -1949,7 +1949,7 @@
    RDN rdn = dn.rdn();
    // If there is only one RDN attribute, then see which objectclass we should use.
    ObjectClass structuralClass = DirectoryServer.getObjectClass(getObjectClassName(rdn));
    ObjectClass structuralClass = DirectoryServer.getSchema().getObjectClass(getObjectClassName(rdn));
    // Get the top and untypedObject classes to include in the entry.
    LinkedHashMap<ObjectClass,String> objectClasses = new LinkedHashMap<>(3);
opendj-server-legacy/src/test/java/org/forgerock/opendj/adapter/server3x/ConvertersTestCase.java
@@ -146,7 +146,7 @@
        assertThat(result.getName().toString()).isEqualTo(entry.getName().toString());
        List<ObjectClass> ocs = new ArrayList<>(result.getObjectClasses().keySet());
        assertThat(ocs).hasSize(2);
        assertThat(ocs.get(0).getOID()).isEqualTo(DirectoryServer.getObjectClass("ds-cfg-backend").getOID());
        assertThat(ocs.get(0).getOID()).isEqualTo(DirectoryServer.getSchema().getObjectClass("ds-cfg-backend").getOID());
        assertThat(ocs.get(1).getOID()).as("This should be a placeholder").endsWith("-oid");
    }
opendj-server-legacy/src/test/java/org/opends/server/backends/SchemaBackendTestCase.java
@@ -4537,8 +4537,8 @@
      "  MAY ( street $ c) X-ORIGIN 'user defined' )");
    assertEquals(resultCode, 0);
    assertFalse(getObjectClass("testaddanddeletedefinitionwithextraspaces").isPlaceHolder());
    assertFalse(getObjectClass("testaddanddeletedefinitionwithextraspaces-oid").isPlaceHolder());
    assertFalse(getSchema().getObjectClass("testaddanddeletedefinitionwithextraspaces").isPlaceHolder());
    assertFalse(getSchema().getObjectClass("testaddanddeletedefinitionwithextraspaces-oid").isPlaceHolder());
    resultCode = TestCaseUtils.applyModifications(false,
      "dn: cn=schema",
@@ -4549,8 +4549,8 @@
      "  MAY ( street $ c) X-ORIGIN 'user defined' )");
    assertEquals(resultCode, 0);
    assertTrue(getObjectClass("testaddanddeletedefinitionwithextraspaces").isPlaceHolder());
    assertTrue(getObjectClass("testaddanddeletedefinitionwithextraspaces-oid").isPlaceHolder());
    assertTrue(getSchema().getObjectClass("testaddanddeletedefinitionwithextraspaces").isPlaceHolder());
    assertTrue(getSchema().getObjectClass("testaddanddeletedefinitionwithextraspaces-oid").isPlaceHolder());
  }
  /**
opendj-server-legacy/src/test/java/org/opends/server/backends/pluggable/TestDnKeyFormat.java
@@ -376,7 +376,7 @@
        // check the object classes were not changed
        for (String ocBefore : entryBefore.getObjectClasses().values()) {
          ObjectClass objectClass = DirectoryServer.getObjectClass(ocBefore);
          ObjectClass objectClass = DirectoryServer.getSchema().getObjectClass(ocBefore);
          String ocAfter = entryAfter.getObjectClasses().get(objectClass);
          assertEquals(ocBefore, ocAfter);
        }
opendj-server-legacy/src/test/java/org/opends/server/core/AddOperationTestCase.java
@@ -18,6 +18,7 @@
import static org.assertj.core.api.Assertions.*;
import static org.forgerock.opendj.ldap.requests.Requests.*;
import static org.forgerock.opendj.ldap.schema.CoreSchema.*;
import static org.opends.server.TestCaseUtils.*;
import static org.opends.server.protocols.internal.InternalClientConnection.*;
import static org.opends.server.protocols.ldap.LDAPConstants.*;
@@ -35,7 +36,6 @@
import org.forgerock.opendj.ldap.ResultCode;
import org.forgerock.opendj.ldap.requests.AddRequest;
import org.forgerock.opendj.ldap.schema.AttributeType;
import org.forgerock.opendj.ldap.schema.CoreSchema;
import org.forgerock.opendj.ldap.schema.ObjectClass;
import org.opends.server.TestCaseUtils;
import org.opends.server.api.Backend;
@@ -285,7 +285,7 @@
    UpdatePreOpPlugin.reset();
    ObjectClass oc = DirectoryServer.getObjectClass("extensibleobject");
    ObjectClass oc = getExtensibleObjectObjectClass();
    UpdatePreOpPlugin.addObjectClassToAdd(oc);
    AddOperation addOperation = getRootConnection().processAdd(entry);
@@ -317,7 +317,7 @@
    UpdatePreOpPlugin.reset();
    ObjectClass oc = DirectoryServer.getObjectClass("extensibleobject");
    ObjectClass oc = getExtensibleObjectObjectClass();
    UpdatePreOpPlugin.addObjectClassToRemove(oc);
    AddOperation addOperation = getRootConnection().processAdd(entry);
@@ -846,7 +846,7 @@
    retrieveCompletedOperationElements(addOperation);
    Entry e = DirectoryServer.getEntry(DN.valueOf("uid=test.user,o=test"));
    List<Attribute> attrList = e.getAttribute(CoreSchema.getObjectClassAttributeType());
    List<Attribute> attrList = e.getAttribute(getObjectClassAttributeType());
    assertTrue(findAttributeValueIgnoreCase(attrList, "top"));
  }
opendj-server-legacy/src/test/java/org/opends/server/core/ModifyOperationTestCase.java
@@ -2124,7 +2124,7 @@
    retrieveSuccessfulOperationElements(modifyOperation);
    Entry e = DirectoryServer.getEntry(DN.valueOf("uid=test.user," + baseDN));
    assertFalse(e.hasObjectClass(DirectoryServer.getObjectClass("extensibleobject")));
    assertFalse(e.hasObjectClass(getExtensibleObjectObjectClass()));
  }
@@ -2161,7 +2161,7 @@
    Entry e = DirectoryServer.getEntry(DN.valueOf("uid=test.user," + baseDN));
    assertTrue(e.hasObjectClass(getExtensibleObjectObjectClass()));
    assertTrue(e.hasObjectClass(DirectoryServer.getObjectClass("inetOrgPerson")));
    assertTrue(e.hasObjectClass(DirectoryServer.getSchema().getObjectClass("inetOrgPerson")));
    assertTrue(e.hasObjectClass(getOrganizationalPersonObjectClass()));
    assertTrue(e.hasObjectClass(getPersonObjectClass()));
    assertTrue(e.hasObjectClass(getTopObjectClass()));
opendj-server-legacy/src/test/java/org/opends/server/replication/plugin/FractionalReplicationTest.java
@@ -16,6 +16,12 @@
 */
package org.opends.server.replication.plugin;
import static org.assertj.core.api.Assertions.*;
import static org.opends.server.TestCaseUtils.*;
import static org.opends.server.util.CollectionUtils.*;
import static org.testng.Assert.fail;
import static org.testng.Assert.*;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
@@ -52,12 +58,6 @@
import org.testng.annotations.DataProvider;
import org.testng.annotations.Test;
import static org.testng.Assert.fail;
import static org.assertj.core.api.Assertions.*;
import static org.opends.server.TestCaseUtils.*;
import static org.opends.server.util.CollectionUtils.*;
import static org.testng.Assert.*;
/** Various tests around fractional replication */
@SuppressWarnings("javadoc")
public class FractionalReplicationTest extends ReplicationTestCase {
@@ -655,7 +655,7 @@
      String objectClassStr = fractionalConf[0];
      if (!objectClassStr.equals("*"))
      {
        ObjectClass objectClass = DirectoryServer.getObjectClass(objectClassStr);
        ObjectClass objectClass = DirectoryServer.getSchema().getObjectClass(objectClassStr);
        assertTrue(newEntry.hasObjectClass(objectClass));
      }
@@ -708,7 +708,7 @@
      String objectClassStr = fractionalConf[0];
      if (!objectClassStr.equals("*"))
      {
        ObjectClass objectClass = DirectoryServer.getObjectClass(objectClassStr);
        ObjectClass objectClass = DirectoryServer.getSchema().getObjectClass(objectClassStr);
        assertTrue(entry.hasObjectClass(objectClass));
      }
@@ -1235,8 +1235,7 @@
      Entry newEntry = getEntry(entry.getName(), TIMEOUT, true);
      assertNotNull(newEntry);
      assertEquals(entry.getName(), newEntry.getName());
      ObjectClass objectClass = DirectoryServer.getObjectClass("inetOrgPerson");
      assertTrue(newEntry.hasObjectClass(objectClass));
      assertTrue(newEntry.hasObjectClass(getInetOrgPersonObjectClass()));
      checkEntryAttributeValue(newEntry, "displayName", "ValueToBeKept");
      /**
@@ -1270,8 +1269,7 @@
      newEntry = getEntry(entry.getName(), TIMEOUT, true);
      assertNotNull(newEntry);
      assertEquals(entry.getName(), newEntry.getName());
      objectClass = DirectoryServer.getObjectClass("inetOrgPerson");
      assertTrue(newEntry.hasObjectClass(objectClass));
      assertTrue(newEntry.hasObjectClass(getInetOrgPersonObjectClass()));
      checkEntryAttributeValue(newEntry, "displayName", "ValueToBeKept");
      checkEntryAttributeValue(newEntry, "givenName", "ValueToBeKeptToo");
    }
@@ -1326,8 +1324,7 @@
      Entry newEntry = getEntry(entry.getName(), TIMEOUT, true);
      assertNotNull(newEntry);
      assertEquals(entry.getName(), newEntry.getName());
      ObjectClass objectClass = DirectoryServer.getObjectClass("inetOrgPerson");
      assertTrue(newEntry.hasObjectClass(objectClass));
      assertTrue(newEntry.hasObjectClass(getInetOrgPersonObjectClass()));
      checkEntryAttributeValue(newEntry, "displayName", "ValueToBeKept");
      checkEntryAttributeValue(newEntry, "carLicense", "cirLicenseValue");
@@ -1363,8 +1360,7 @@
      newEntry = getEntry(entry.getName(), TIMEOUT, true);
      assertNotNull(newEntry);
      assertEquals(entry.getName(), newEntry.getName());
      objectClass = DirectoryServer.getObjectClass("inetOrgPerson");
      assertTrue(newEntry.hasObjectClass(objectClass));
      assertTrue(newEntry.hasObjectClass(getInetOrgPersonObjectClass()));
      checkEntryAttributeValue(newEntry, "displayName", "ValueToBeKept");
      checkEntryAttributeValue(newEntry, "description", "ValueToBeKeptToo");
      checkEntryAttributeValue(newEntry, "carLicense", "cirLicenseValue");
@@ -1418,8 +1414,7 @@
      Entry newEntry = getEntry(entry.getName(), TIMEOUT, true);
      assertNotNull(newEntry);
      assertEquals(entry.getName(), newEntry.getName());
      ObjectClass objectClass = DirectoryServer.getObjectClass("inetOrgPerson");
      assertTrue(newEntry.hasObjectClass(objectClass));
      assertTrue(newEntry.hasObjectClass(getInetOrgPersonObjectClass()));
      checkEntryAttributeValue(newEntry, "displayName", "ValueToBeKept");
      checkEntryAttributeValue(newEntry, "givenName", "ValueToBeRemoved");
@@ -1441,8 +1436,7 @@
      newEntry = getEntry(newEntryDn, TIMEOUT, true);
      assertNotNull(newEntry);
      assertEquals(newEntryDn, newEntry.getName());
      objectClass = DirectoryServer.getObjectClass("inetOrgPerson");
      assertTrue(newEntry.hasObjectClass(objectClass));
      assertTrue(newEntry.hasObjectClass(getInetOrgPersonObjectClass()));
      checkEntryAttributeValue(newEntry, "displayName", "ValueToBeKept");
      assertThat(newEntry.getAttribute("givenName")).isEmpty();
    }
@@ -1500,8 +1494,7 @@
      Entry newEntry = getEntry(entry.getName(), TIMEOUT, true);
      assertNotNull(newEntry);
      assertEquals(entry.getName(), newEntry.getName());
      ObjectClass objectClass = DirectoryServer.getObjectClass("inetOrgPerson");
      assertTrue(newEntry.hasObjectClass(objectClass));
      assertTrue(newEntry.hasObjectClass(getInetOrgPersonObjectClass()));
      checkEntryAttributeValue(newEntry, "displayName", "ValueToBeKept");
      checkEntryAttributeValue(newEntry, "description", "ValueToBeRemoved");
@@ -1523,8 +1516,7 @@
      newEntry = getEntry(newEntryDn, TIMEOUT, true);
      assertNotNull(newEntry);
      assertEquals(newEntryDn, newEntry.getName());
      objectClass = DirectoryServer.getObjectClass("inetOrgPerson");
      assertTrue(newEntry.hasObjectClass(objectClass));
      assertTrue(newEntry.hasObjectClass(getInetOrgPersonObjectClass()));
      checkEntryAttributeValue(newEntry, "displayName", "ValueToBeKept");
      assertThat(newEntry.getAttribute("description")).isEmpty();
    }
@@ -1533,4 +1525,9 @@
      endTest();
    }
  }
  private ObjectClass getInetOrgPersonObjectClass()
  {
    return DirectoryServer.getSchema().getObjectClass("inetOrgPerson");
  }
}
opendj-server-legacy/src/test/java/org/opends/server/replication/plugin/ModifyConflictTest.java
@@ -27,6 +27,7 @@
import org.forgerock.opendj.ldap.DN;
import org.forgerock.opendj.ldap.ModificationType;
import org.forgerock.opendj.ldap.schema.AttributeType;
import org.forgerock.opendj.ldap.schema.CoreSchema;
import org.forgerock.opendj.ldap.schema.ObjectClass;
import org.opends.server.core.ModifyOperationBasis;
import org.opends.server.replication.ReplicationTestCase;
@@ -1065,7 +1066,7 @@
     */
    DN dn = DN.valueOf(TEST_ROOT_DN_STRING);
    Map<ObjectClass, String> objectClasses = new HashMap<>();
    objectClasses.put(getObjectClass(ORGANIZATION), ORGANIZATION);
    objectClasses.put(CoreSchema.getOrganizationObjectClass(), ORGANIZATION);
    // start with a new entry with an empty attribute
    Entry entry = new Entry(dn, objectClasses, null, null);
opendj-server-legacy/src/test/java/org/opends/server/replication/protocol/SynchronizationMsgTest.java
@@ -1189,7 +1189,7 @@
      byte safeDataLevel, List<Attribute> entryAttrList) throws Exception
  {
    Map<ObjectClass, String> objectClassList = new HashMap<>();
    objectClassList.put(DirectoryServer.getObjectClass("organization"), "organization");
    objectClassList.put(getOrganizationObjectClass(), "organization");
    Attribute attr = Attributes.create("o", "com");
    Map<AttributeType, List<Attribute>> userAttList = new HashMap<>();
opendj-server-legacy/src/test/java/org/opends/server/tasks/TestBackupAndRestore.java
@@ -188,7 +188,7 @@
    final int restoreBeginCountStart = restoreBeginCount.get();
    final int restoreEndCountStart = restoreEndCount.get();
    ObjectClass backupClass = DirectoryServer.getObjectClass("ds-task-backup");
    ObjectClass backupClass = DirectoryServer.getSchema().getObjectClass("ds-task-backup");
    testTask(taskEntry, expectedState, 30);
    if (expectedState == TaskState.COMPLETED_SUCCESSFULLY ||
opendj-server-legacy/src/test/java/org/opends/server/tasks/TestImportAndExport.java
@@ -356,8 +356,7 @@
    int importBeginCount = TestTaskListener.importBeginCount.get();
    int importEndCount   = TestTaskListener.importEndCount.get();
    ObjectClass exportClass =
         DirectoryServer.getObjectClass("ds-task-export");
    ObjectClass exportClass = DirectoryServer.getSchema().getObjectClass("ds-task-export");
    // Use a big timeout since this test is sensitive to host environment (e.g.
    // low memory, etc). See issue OPENDJ-256.
opendj-server-legacy/src/test/java/org/opends/server/util/TestLDIFWriter.java
@@ -304,7 +304,7 @@
        String avalue = toLowerCase(s[i+1]);
        if (atype.equals("objectclass")) {
          entry.addObjectClass(DirectoryServer.getObjectClass(avalue));
          entry.addObjectClass(DirectoryServer.getSchema().getObjectClass(avalue));
        } else {
          Attribute attr = Attributes.create(atype, avalue);