From 61936a7099192c2f3d2814a3ca5e0646ef37675c Mon Sep 17 00:00:00 2001
From: Jean-Noel Rouvignac <jean-noel.rouvignac@forgerock.com>
Date: Tue, 18 Feb 2014 11:43:01 +0000
Subject: [PATCH] OPENDJ-1308 Migrate schema support

---
 opendj3-server-dev/src/server/org/opends/server/core/SubentryManager.java                                                                      |    3 
 opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/ExtensionTestUtils.java                                     |   12 
 opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/replication/server/ExternalChangeLogTest.java                          |    9 
 opendj3-server-dev/src/server/org/opends/server/crypto/CryptoManagerSync.java                                                                  |    3 
 opendj3-server-dev/src/server/org/opends/server/types/operation/PostResponseSearchOperation.java                                               |    4 
 opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/GoverningStructureRuleVirtualAttributeProviderTestCase.java |   10 
 opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/CancelExtendedOperationTestCase.java                        |    4 
 opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/crypto/CryptoManagerTestCase.java                                      |    3 
 opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/IsMemberOfVirtualAttributeProviderTestCase.java             |    8 
 opendj3-server-dev/src/server/org/opends/server/types/operation/PostOperationSearchOperation.java                                              |    4 
 opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/VirtualStaticGroupTestCase.java                             |   11 
 opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/crypto/GetSymmetricKeyExtendedOperationTestCase.java                   |    3 
 opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/LDAPPassThroughAuthenticationPolicyTestCase.java            |    3 
 opendj3-server-dev/src/server/org/opends/server/core/SearchOperationBasis.java                                                                 |   11 
 opendj3-server-dev/src/dsml/org/opends/dsml/protocol/DSMLServlet.java                                                                          |    4 
 opendj3-server-dev/src/server/org/opends/server/admin/AdministrationDataSync.java                                                              |    4 
 opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/core/AbandonOperationTestCase.java                                     |    3 
 opendj3-server-dev/src/server/org/opends/server/extensions/FingerprintCertificateMapper.java                                                   |    3 
 opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/schema/AttributeTypeSyntaxTest.java                                    |    4 
 opendj3-server-dev/src/server/org/opends/server/types/operation/PreOperationSearchOperation.java                                               |    4 
 opendj3-server-dev/src/server/org/opends/server/extensions/DynamicGroupSearchThread.java                                                       |    4 
 opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/protocols/internal/InternalLDAPSocketTestCase.java                     |    4 
 opendj3-server-dev/src/server/org/opends/server/tools/LDAPSearchOptions.java                                                                   |   18 
 opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/SubschemaSubentryVirtualAttributeProviderTestCase.java      |   10 
 opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/TraditionalWorkQueueTestCase.java                           |    6 
 opendj3-server-dev/src/server/org/opends/server/protocols/internal/InternalClientConnection.java                                               |   23 
 opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/schema/LDAPSyntaxTest.java                                             |   10 
 opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/controls/VLVControlTestCase.java                                       |   43 +-
 opendj3-server-dev/src/server/org/opends/server/types/operation/PreParseSearchOperation.java                                                   |    5 
 opendj3-server-dev/src/server/org/opends/server/authorization/dseecompat/AciListenerManager.java                                               |    3 
 opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/EntityTagVirtualAttributeProviderTestCase.java              |    4 
 opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/protocols/internal/InternalSearchOperationTestCase.java                |   17 
 opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/types/PrivilegeTestCase.java                                           |    5 
 opendj3-server-dev/src/server/org/opends/server/extensions/LDAPPassThroughAuthenticationPolicyFactory.java                                     |    4 
 opendj3-server-dev/src/server/org/opends/server/extensions/SubjectAttributeToUserAttributeCertificateMapper.java                               |    3 
 opendj3-server-dev/src/server/org/opends/server/protocols/http/SdkConnectionAdapter.java                                                       |    2 
 opendj3-server-dev/src/server/org/opends/server/replication/plugin/LDAPReplicationDomain.java                                                  |   21 
 opendj3-server-dev/src/server/org/opends/server/protocols/ldap/LDAPReader.java                                                                 |   21 
 opendj3-server-dev/src/server/org/opends/server/protocols/ldap/SearchRequestProtocolOp.java                                                    |   10 
 opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/replication/server/ReplicationServerTest.java                          |    7 
 opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/protocols/jmx/JmxPrivilegeTestCase.java                                |    5 
 opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/core/GroupManagerTestCase.java                                         |   42 --
 opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/NumSubordinatesVirtualAttributeProviderTestCase.java        |   13 
 opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/PasswordExpirationTimeVirtualAttributeProviderTestCase.java |    3 
 opendj3-server-dev/src/server/org/opends/server/extensions/RegularExpressionIdentityMapper.java                                                |    3 
 opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/protocols/internal/InternalClientConnectionTestCase.java               |    9 
 opendj3-server-dev/src/server/org/opends/server/extensions/SubjectDNToUserAttributeCertificateMapper.java                                      |    3 
 opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/controls/PersistentSearchControlTest.java                              |    3 
 opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/StructuralObjectClassVirtualAttributeProviderTestCase.java  |   10 
 opendj3-server-dev/src/server/org/opends/server/core/SearchOperationWrapper.java                                                               |    5 
 opendj3-server-dev/src/server/org/opends/server/tools/tasks/TaskClient.java                                                                    |    6 
 opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/core/SubentryManagerTestCase.java                                      |    4 
 opendj3-server-dev/src/server/org/opends/server/protocols/internal/InternalSearchOperation.java                                                |    5 
 opendj3-server-dev/src/server/org/opends/server/crypto/CryptoManagerImpl.java                                                                  |    9 
 opendj3-server-dev/src/server/org/opends/server/replication/server/ReplicationBackend.java                                                     |    3 
 opendj3-server-dev/src/server/org/opends/server/types/operation/SearchReferenceSearchOperation.java                                            |    4 
 opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/core/WorkflowConfigurationTest.java                                    |    3 
 opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/EntryDNVirtualAttributeProviderTestCase.java                |   13 
 opendj3-server-dev/src/server/org/opends/server/authorization/dseecompat/AciHandler.java                                                       |    5 
 opendj3-server-dev/src/server/org/opends/server/types/operation/SearchEntrySearchOperation.java                                                |    4 
 opendj3-server-dev/src/server/org/opends/server/plugins/ReferentialIntegrityPlugin.java                                                        |    3 
 opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/backends/jeb/TestBackendImpl.java                                      |   17 
 opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/backends/jeb/TestVLVIndex.java                                         |   26 +
 opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/plugins/ReferentialIntegrityPluginTestCase.java                        |    3 
 opendj3-server-dev/src/server/org/opends/server/core/GroupManager.java                                                                         |    3 
 opendj3-server-dev/src/server/org/opends/server/protocols/jmx/JmxClientConnection.java                                                         |    9 
 opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/controls/ServerSideSortControlTestCase.java                            |   20 
 opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/protocols/ldap/LDAPv2TestCase.java                                     |    4 
 opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/HasSubordinatesVirtualAttributeProviderTestCase.java        |   12 
 opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/plugins/LDAPADListPluginTestCase.java                                  |   10 
 opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/schema/StringPrepProfileTestCase.java                                  |    4 
 opendj3-server-dev/src/server/org/opends/server/extensions/ExactMatchIdentityMapper.java                                                       |    3 
 opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/schema/TimeBasedMatchingRuleTest.java                                  |   12 
 opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/UserDefinedVirtualAttributeProviderTestCase.java            |    9 
 opendj3-server-dev/src/server/org/opends/server/plugins/UniqueAttributePlugin.java                                                             |    3 
 opendj3-server-dev/src/server/org/opends/server/extensions/PasswordPolicyStateExtendedOperation.java                                           |    3 
 opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/protocols/ldap/TestSearchProtocolOp.java                               |    7 
 opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/EntryUUIDVirtualAttributeProviderTestCase.java              |    9 
 opendj3-server-dev/src/server/org/opends/server/authorization/dseecompat/UserAttr.java                                                         |    5 
 opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/core/SearchOperationTestCase.java                                      |   65 ++--
 opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/protocols/ldap/LDAPBinaryOptionTestCase.java                           |    9 
 opendj3-server-dev/src/server/org/opends/server/core/SearchOperation.java                                                                      |    5 
 opendj3-server-dev/src/dsml/org/opends/dsml/protocol/DSMLSearchOperation.java                                                                  |   10 
 opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/core/ModifyOperationTestCase.java                                      |    7 
 opendj3-server-dev/src/server/org/opends/server/replication/plugin/PersistentServerState.java                                                  |    5 
 opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/controls/PasswordPolicyControlTestCase.java                            |    4 
 opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/schema/CollationMatchingRuleTest.java                                  |   36 +-
 87 files changed, 396 insertions(+), 389 deletions(-)

diff --git a/opendj3-server-dev/src/dsml/org/opends/dsml/protocol/DSMLSearchOperation.java b/opendj3-server-dev/src/dsml/org/opends/dsml/protocol/DSMLSearchOperation.java
index 4d27fc7..6f3fecc 100644
--- a/opendj3-server-dev/src/dsml/org/opends/dsml/protocol/DSMLSearchOperation.java
+++ b/opendj3-server-dev/src/dsml/org/opends/dsml/protocol/DSMLSearchOperation.java
@@ -48,7 +48,7 @@
 import org.opends.server.protocols.ldap.SearchResultEntryProtocolOp;
 import org.opends.server.tools.LDAPConnection;
 import org.forgerock.opendj.ldap.ByteString;
-import org.opends.server.types.DereferencePolicy;
+import org.forgerock.opendj.ldap.DereferenceAliasesPolicy;
 import org.opends.server.types.LDAPException;
 import org.opends.server.types.RawFilter;
 import org.forgerock.opendj.ldap.SearchScope;
@@ -495,19 +495,19 @@
 
     LDAPFilter filter = createFilter(searchRequest.getFilter());
 
-    DereferencePolicy derefPolicy = DereferencePolicy.NEVER_DEREF_ALIASES;
+    DereferenceAliasesPolicy derefPolicy = DereferenceAliasesPolicy.NEVER;
     String derefStr = searchRequest.getDerefAliases().toLowerCase();
     if (derefStr.equals("derefinsearching"))
     {
-      derefPolicy = DereferencePolicy.DEREF_IN_SEARCHING;
+      derefPolicy = DereferenceAliasesPolicy.IN_SEARCHING;
     }
     else if (derefStr.equals("dereffindingbaseobj"))
     {
-      derefPolicy = DereferencePolicy.DEREF_FINDING_BASE_OBJECT;
+      derefPolicy = DereferenceAliasesPolicy.FINDING_BASE;
     }
     else if (derefStr.equals("derefalways"))
     {
-      derefPolicy = DereferencePolicy.DEREF_ALWAYS;
+      derefPolicy = DereferenceAliasesPolicy.ALWAYS;
     }
 
     SearchScope scope = SearchScope.WHOLE_SUBTREE;
diff --git a/opendj3-server-dev/src/dsml/org/opends/dsml/protocol/DSMLServlet.java b/opendj3-server-dev/src/dsml/org/opends/dsml/protocol/DSMLServlet.java
index 2123211..3336592 100644
--- a/opendj3-server-dev/src/dsml/org/opends/dsml/protocol/DSMLServlet.java
+++ b/opendj3-server-dev/src/dsml/org/opends/dsml/protocol/DSMLServlet.java
@@ -82,7 +82,7 @@
 import org.opends.server.tools.SSLConnectionException;
 import org.opends.server.tools.SSLConnectionFactory;
 import org.forgerock.opendj.ldap.ByteString;
-import org.opends.server.types.DereferencePolicy;
+import org.forgerock.opendj.ldap.DereferenceAliasesPolicy;
 import org.opends.server.types.LDAPException;
 import org.forgerock.opendj.ldap.SearchScope;
 import org.opends.server.util.Base64;
@@ -268,7 +268,7 @@
     {
       SearchRequestProtocolOp protocolOp = new SearchRequestProtocolOp(
           ByteString.wrap(new byte[]{}), SearchScope.BASE_OBJECT,
-          DereferencePolicy.NEVER_DEREF_ALIASES,
+          DereferenceAliasesPolicy.NEVER,
           0, 0,
           true, LDAPFilter.decode("(objectClass=*)"), attributes);
       byte opType;
diff --git a/opendj3-server-dev/src/server/org/opends/server/admin/AdministrationDataSync.java b/opendj3-server-dev/src/server/org/opends/server/admin/AdministrationDataSync.java
index 16eafa2..1610aa0 100644
--- a/opendj3-server-dev/src/server/org/opends/server/admin/AdministrationDataSync.java
+++ b/opendj3-server-dev/src/server/org/opends/server/admin/AdministrationDataSync.java
@@ -42,7 +42,7 @@
 import org.opends.server.types.Attributes;
 import org.forgerock.opendj.ldap.ByteString;
 import org.opends.server.types.DN;
-import org.opends.server.types.DereferencePolicy;
+import org.forgerock.opendj.ldap.DereferenceAliasesPolicy;
 import org.opends.server.types.DirectoryException;
 import org.opends.server.types.Entry;
 import org.opends.server.types.LDAPException;
@@ -308,7 +308,7 @@
     attributes.add(attrName);
     InternalSearchOperation search = internalConnection.processSearch(
         ByteString.valueOf(baseDN), SearchScope.BASE_OBJECT,
-        DereferencePolicy.DEREF_ALWAYS, 0, 0, false, filter, attributes);
+        DereferenceAliasesPolicy.ALWAYS, 0, 0, false, filter, attributes);
 
     if ((search.getResultCode() != ResultCode.SUCCESS))
     {
diff --git a/opendj3-server-dev/src/server/org/opends/server/authorization/dseecompat/AciHandler.java b/opendj3-server-dev/src/server/org/opends/server/authorization/dseecompat/AciHandler.java
index 7a47d96..2e15a62 100644
--- a/opendj3-server-dev/src/server/org/opends/server/authorization/dseecompat/AciHandler.java
+++ b/opendj3-server-dev/src/server/org/opends/server/authorization/dseecompat/AciHandler.java
@@ -32,7 +32,9 @@
 
 import org.forgerock.i18n.LocalizableMessage;
 import org.forgerock.i18n.slf4j.LocalizedLogger;
+import org.forgerock.opendj.ldap.DereferenceAliasesPolicy;
 import org.forgerock.opendj.ldap.ModificationType;
+import org.forgerock.opendj.ldap.ResultCode;
 import org.forgerock.opendj.ldap.SearchScope;
 import org.opends.server.admin.std.server.DseeCompatAccessControlHandlerCfg;
 import org.opends.server.api.AccessControlHandler;
@@ -46,7 +48,6 @@
 import org.opends.server.protocols.internal.InternalSearchOperation;
 import org.opends.server.protocols.ldap.LDAPControl;
 import org.opends.server.types.*;
-import org.forgerock.opendj.ldap.ResultCode;
 import org.opends.server.workflowelement.localbackend.*;
 
 import static org.opends.messages.AccessControlMessages.*;
@@ -1196,7 +1197,7 @@
               conn, InternalClientConnection.nextOperationID(),
               InternalClientConnection.nextMessageID(),
               null, baseDN, SearchScope.WHOLE_SUBTREE,
-              DereferencePolicy.NEVER_DEREF_ALIASES, 0, 0, false,
+              DereferenceAliasesPolicy.NEVER, 0, 0, false,
               SearchFilter.createFilterFromString("aci=*"), requestAttrs, null);
         LocalBackendSearchOperation localSearch =
               new LocalBackendSearchOperation(internalSearch);
diff --git a/opendj3-server-dev/src/server/org/opends/server/authorization/dseecompat/AciListenerManager.java b/opendj3-server-dev/src/server/org/opends/server/authorization/dseecompat/AciListenerManager.java
index fc60f52..b1cd5ba 100644
--- a/opendj3-server-dev/src/server/org/opends/server/authorization/dseecompat/AciListenerManager.java
+++ b/opendj3-server-dev/src/server/org/opends/server/authorization/dseecompat/AciListenerManager.java
@@ -30,6 +30,7 @@
 
 import org.forgerock.i18n.LocalizableMessage;
 import org.forgerock.i18n.slf4j.LocalizedLogger;
+import org.forgerock.opendj.ldap.DereferenceAliasesPolicy;
 import org.forgerock.opendj.ldap.SearchScope;
 import org.opends.server.api.AlertGenerator;
 import org.opends.server.api.Backend;
@@ -461,7 +462,7 @@
               .nextOperationID(), InternalClientConnection
               .nextMessageID(), controls, baseDN,
               SearchScope.WHOLE_SUBTREE,
-              DereferencePolicy.NEVER_DEREF_ALIASES, 0, 0, false,
+              DereferenceAliasesPolicy.NEVER, 0, 0, false,
               aciFilter, attrs, null);
       LocalBackendSearchOperation localInternalSearch =
           new LocalBackendSearchOperation(internalSearch);
diff --git a/opendj3-server-dev/src/server/org/opends/server/authorization/dseecompat/UserAttr.java b/opendj3-server-dev/src/server/org/opends/server/authorization/dseecompat/UserAttr.java
index c5a2bb4..c1ed59f 100644
--- a/opendj3-server-dev/src/server/org/opends/server/authorization/dseecompat/UserAttr.java
+++ b/opendj3-server-dev/src/server/org/opends/server/authorization/dseecompat/UserAttr.java
@@ -31,6 +31,7 @@
 import java.util.List;
 
 import org.forgerock.i18n.LocalizableMessage;
+import org.forgerock.opendj.ldap.DereferenceAliasesPolicy;
 import org.forgerock.opendj.ldap.SearchScope;
 import org.opends.server.core.DirectoryServer;
 import org.opends.server.protocols.internal.InternalClientConnection;
@@ -210,7 +211,7 @@
         InternalSearchOperation op =
                 conn.processSearch(evalCtx.getClientDN(),
                         SearchScope.BASE_OBJECT,
-                        DereferencePolicy.NEVER_DEREF_ALIASES, 0, 0, false,
+                        DereferenceAliasesPolicy.NEVER, 0, 0, false,
                         filter, null);
         LinkedList<SearchResultEntry> result = op.getSearchEntries();
         if (!result.isEmpty()) {
@@ -346,7 +347,7 @@
                         InternalClientConnection.getRootConnection();
                 InternalSearchOperation op = conn.processSearch(pDN,
                         SearchScope.BASE_OBJECT,
-                        DereferencePolicy.NEVER_DEREF_ALIASES, 0, 0, false,
+                        DereferenceAliasesPolicy.NEVER, 0, 0, false,
                         filter, reqAttrs);
                 LinkedList<SearchResultEntry> result =
                         op.getSearchEntries();
diff --git a/opendj3-server-dev/src/server/org/opends/server/core/GroupManager.java b/opendj3-server-dev/src/server/org/opends/server/core/GroupManager.java
index 8af3a8e..2e288f1 100644
--- a/opendj3-server-dev/src/server/org/opends/server/core/GroupManager.java
+++ b/opendj3-server-dev/src/server/org/opends/server/core/GroupManager.java
@@ -33,6 +33,7 @@
 
 import org.forgerock.i18n.LocalizableMessage;
 import org.forgerock.i18n.slf4j.LocalizedLogger;
+import org.forgerock.opendj.ldap.DereferenceAliasesPolicy;
 import org.forgerock.opendj.ldap.SearchScope;
 import org.forgerock.util.Utils;
 import org.opends.server.admin.ClassPropertyDefinition;
@@ -622,7 +623,7 @@
                                          nextMessageID(), requestControls,
                                          baseDN,
                                          SearchScope.WHOLE_SUBTREE,
-                                         DereferencePolicy.NEVER_DEREF_ALIASES,
+                                         DereferenceAliasesPolicy.NEVER,
                                          0, 0, false, filter, null, null);
         LocalBackendSearchOperation localSearch =
           new LocalBackendSearchOperation(internalSearch);
diff --git a/opendj3-server-dev/src/server/org/opends/server/core/SearchOperation.java b/opendj3-server-dev/src/server/org/opends/server/core/SearchOperation.java
index ed7fcb3..babd137 100644
--- a/opendj3-server-dev/src/server/org/opends/server/core/SearchOperation.java
+++ b/opendj3-server-dev/src/server/org/opends/server/core/SearchOperation.java
@@ -30,6 +30,7 @@
 import java.util.Set;
 
 import org.forgerock.opendj.ldap.ByteString;
+import org.forgerock.opendj.ldap.DereferenceAliasesPolicy;
 import org.forgerock.opendj.ldap.SearchScope;
 import org.opends.server.controls.MatchedValuesControl;
 import org.opends.server.types.*;
@@ -98,7 +99,7 @@
    *
    * @return  The alias dereferencing policy for this search operation.
    */
-  public abstract DereferencePolicy getDerefPolicy();
+  public abstract DereferenceAliasesPolicy getDerefPolicy();
 
   /**
    * Specifies the alias dereferencing policy for this search operation.  This
@@ -107,7 +108,7 @@
    * @param  derefPolicy  The alias dereferencing policy for this search
    *                      operation.
    */
-  public abstract void setDerefPolicy(DereferencePolicy derefPolicy);
+  public abstract void setDerefPolicy(DereferenceAliasesPolicy derefPolicy);
 
   /**
    * Retrieves the size limit for this search operation.
diff --git a/opendj3-server-dev/src/server/org/opends/server/core/SearchOperationBasis.java b/opendj3-server-dev/src/server/org/opends/server/core/SearchOperationBasis.java
index 9f08bac..a511cc6 100644
--- a/opendj3-server-dev/src/server/org/opends/server/core/SearchOperationBasis.java
+++ b/opendj3-server-dev/src/server/org/opends/server/core/SearchOperationBasis.java
@@ -31,6 +31,7 @@
 
 import org.forgerock.i18n.slf4j.LocalizedLogger;
 import org.forgerock.opendj.ldap.ByteString;
+import org.forgerock.opendj.ldap.DereferenceAliasesPolicy;
 import org.forgerock.opendj.ldap.SearchScope;
 import org.opends.server.api.AuthenticationPolicyState;
 import org.opends.server.api.ClientConnection;
@@ -108,7 +109,7 @@
   private ByteString rawBaseDN;
 
   /** The dereferencing policy for the search operation. */
-  private DereferencePolicy derefPolicy;
+  private DereferenceAliasesPolicy derefPolicy;
 
   /** The base DN for the search operation. */
   private DN baseDN;
@@ -186,7 +187,7 @@
                          long operationID,
                          int messageID, List<Control> requestControls,
                          ByteString rawBaseDN, SearchScope scope,
-                         DereferencePolicy derefPolicy, int sizeLimit,
+                         DereferenceAliasesPolicy derefPolicy, int sizeLimit,
                          int timeLimit, boolean typesOnly, RawFilter rawFilter,
                          Set<String> attributes)
   {
@@ -251,7 +252,7 @@
                          long operationID,
                          int messageID, List<Control> requestControls,
                          DN baseDN, SearchScope scope,
-                         DereferencePolicy derefPolicy, int sizeLimit,
+                         DereferenceAliasesPolicy derefPolicy, int sizeLimit,
                          int timeLimit, boolean typesOnly, SearchFilter filter,
                          Set<String> attributes)
   {
@@ -400,7 +401,7 @@
    * {@inheritDoc}
    */
   @Override
-  public final DereferencePolicy getDerefPolicy()
+  public final DereferenceAliasesPolicy getDerefPolicy()
   {
     return derefPolicy;
   }
@@ -409,7 +410,7 @@
    * {@inheritDoc}
    */
   @Override
-  public final void setDerefPolicy(DereferencePolicy derefPolicy)
+  public final void setDerefPolicy(DereferenceAliasesPolicy derefPolicy)
   {
     this.derefPolicy = derefPolicy;
   }
diff --git a/opendj3-server-dev/src/server/org/opends/server/core/SearchOperationWrapper.java b/opendj3-server-dev/src/server/org/opends/server/core/SearchOperationWrapper.java
index 9cfcd48..5d52749 100644
--- a/opendj3-server-dev/src/server/org/opends/server/core/SearchOperationWrapper.java
+++ b/opendj3-server-dev/src/server/org/opends/server/core/SearchOperationWrapper.java
@@ -30,6 +30,7 @@
 import java.util.Set;
 
 import org.forgerock.opendj.ldap.ByteString;
+import org.forgerock.opendj.ldap.DereferenceAliasesPolicy;
 import org.forgerock.opendj.ldap.SearchScope;
 import org.opends.server.controls.MatchedValuesControl;
 import org.opends.server.types.*;
@@ -122,7 +123,7 @@
    * {@inheritDoc}
    */
   @Override
-  public DereferencePolicy getDerefPolicy()
+  public DereferenceAliasesPolicy getDerefPolicy()
   {
     return getOperation().getDerefPolicy();
   }
@@ -239,7 +240,7 @@
    * {@inheritDoc}
    */
   @Override
-  public void setDerefPolicy(DereferencePolicy derefPolicy)
+  public void setDerefPolicy(DereferenceAliasesPolicy derefPolicy)
   {
     getOperation().setDerefPolicy(derefPolicy);
   }
diff --git a/opendj3-server-dev/src/server/org/opends/server/core/SubentryManager.java b/opendj3-server-dev/src/server/org/opends/server/core/SubentryManager.java
index 8d04be0..91fbcd9 100644
--- a/opendj3-server-dev/src/server/org/opends/server/core/SubentryManager.java
+++ b/opendj3-server-dev/src/server/org/opends/server/core/SubentryManager.java
@@ -31,6 +31,7 @@
 import java.util.concurrent.locks.ReentrantReadWriteLock;
 
 import org.forgerock.i18n.slf4j.LocalizedLogger;
+import org.forgerock.opendj.ldap.DereferenceAliasesPolicy;
 import org.forgerock.opendj.ldap.SearchScope;
 import org.opends.server.api.ClientConnection;
 import org.opends.server.api.Backend;
@@ -347,7 +348,7 @@
               conn, InternalClientConnection.nextOperationID(),
               InternalClientConnection.nextMessageID(),
               requestControls, baseDN, SearchScope.WHOLE_SUBTREE,
-              DereferencePolicy.NEVER_DEREF_ALIASES, 0, 0, false,
+              DereferenceAliasesPolicy.NEVER, 0, 0, false,
               filter, requestAttrs, null);
       LocalBackendSearchOperation localSearch =
               new LocalBackendSearchOperation(internalSearch);
diff --git a/opendj3-server-dev/src/server/org/opends/server/crypto/CryptoManagerImpl.java b/opendj3-server-dev/src/server/org/opends/server/crypto/CryptoManagerImpl.java
index cd4f9f1..7cf9b44 100644
--- a/opendj3-server-dev/src/server/org/opends/server/crypto/CryptoManagerImpl.java
+++ b/opendj3-server-dev/src/server/org/opends/server/crypto/CryptoManagerImpl.java
@@ -50,7 +50,9 @@
 import org.forgerock.i18n.LocalizableMessage;
 import org.forgerock.i18n.slf4j.LocalizedLogger;
 import org.forgerock.opendj.ldap.ByteString;
+import org.forgerock.opendj.ldap.DereferenceAliasesPolicy;
 import org.forgerock.opendj.ldap.ModificationType;
+import org.forgerock.opendj.ldap.ResultCode;
 import org.forgerock.opendj.ldap.SearchScope;
 import org.forgerock.util.Reject;
 import org.opends.admin.ads.ADSContext;
@@ -77,7 +79,6 @@
 import org.opends.server.tools.LDAPReader;
 import org.opends.server.tools.LDAPWriter;
 import org.opends.server.types.*;
-import org.forgerock.opendj.ldap.ResultCode;
 import org.opends.server.util.Base64;
 import org.opends.server.util.SelectableCertificateKeyManager;
 import org.opends.server.util.ServerConstants;
@@ -519,7 +520,7 @@
           InternalSearchOperation searchOp = icc.processSearch(
                   entryDN,
                   SearchScope.BASE_OBJECT,
-                  DereferencePolicy.NEVER_DEREF_ALIASES,
+                  DereferenceAliasesPolicy.NEVER,
                   /* size limit */ 0, /* time limit */ 0,
                   /* types only */ false,
                   SearchFilter.createFilterFromString(
@@ -651,7 +652,7 @@
     try {
       final InternalSearchOperation searchOp
               = icc.processSearch( entryDN, SearchScope.BASE_OBJECT,
-              DereferencePolicy.NEVER_DEREF_ALIASES,
+              DereferenceAliasesPolicy.NEVER,
               /* size limit */ 0, /* time limit */ 0,
               /* types only */ false,
               SearchFilter.createFilterFromString(
@@ -729,7 +730,7 @@
       InternalSearchOperation searchOp = icc.processSearch(
               instanceKeysDN,
               SearchScope.SINGLE_LEVEL,
-              DereferencePolicy.NEVER_DEREF_ALIASES,
+              DereferenceAliasesPolicy.NEVER,
               /* size limit */ 0, /* time limit */ 0,
               /* types only */ false,
               SearchFilter.createFilterFromString(searchFilter),
diff --git a/opendj3-server-dev/src/server/org/opends/server/crypto/CryptoManagerSync.java b/opendj3-server-dev/src/server/org/opends/server/crypto/CryptoManagerSync.java
index fb7921a..6bc9cf7 100644
--- a/opendj3-server-dev/src/server/org/opends/server/crypto/CryptoManagerSync.java
+++ b/opendj3-server-dev/src/server/org/opends/server/crypto/CryptoManagerSync.java
@@ -28,6 +28,7 @@
 
 import org.forgerock.i18n.LocalizableMessage;
 import org.forgerock.i18n.slf4j.LocalizedLogger;
+import org.forgerock.opendj.ldap.DereferenceAliasesPolicy;
 import org.forgerock.opendj.ldap.SearchScope;
 import org.opends.admin.ads.ADSContext;
 import org.opends.server.api.Backend;
@@ -199,7 +200,7 @@
                                      InternalClientConnection.nextMessageID(),
                                      controls,
                                      adminSuffixDN, SearchScope.WHOLE_SUBTREE,
-                                     DereferencePolicy.NEVER_DEREF_ALIASES,
+                                     DereferenceAliasesPolicy.NEVER,
                                      0, 0,
                                      false, keySearchFilter, attributes,
                                      null);
diff --git a/opendj3-server-dev/src/server/org/opends/server/extensions/DynamicGroupSearchThread.java b/opendj3-server-dev/src/server/org/opends/server/extensions/DynamicGroupSearchThread.java
index ed36361..7c9e93b 100644
--- a/opendj3-server-dev/src/server/org/opends/server/extensions/DynamicGroupSearchThread.java
+++ b/opendj3-server-dev/src/server/org/opends/server/extensions/DynamicGroupSearchThread.java
@@ -37,7 +37,7 @@
 import org.opends.server.protocols.internal.InternalClientConnection;
 import org.opends.server.protocols.internal.InternalSearchListener;
 import org.opends.server.protocols.internal.InternalSearchOperation;
-import org.opends.server.types.DereferencePolicy;
+import org.forgerock.opendj.ldap.DereferenceAliasesPolicy;
 import org.opends.server.types.DirectoryException;
 import org.opends.server.types.DN;
 import org.opends.server.types.LDAPURL;
@@ -126,7 +126,7 @@
     {
       InternalSearchOperation searchOperation =
            conn.processSearch(baseDNs[searchCounter], SearchScope.WHOLE_SUBTREE,
-                              DereferencePolicy.NEVER_DEREF_ALIASES, 0, 0,
+                              DereferenceAliasesPolicy.NEVER, 0, 0,
                               false, searchFilters[searchCounter], attributes,
                               this);
 
diff --git a/opendj3-server-dev/src/server/org/opends/server/extensions/ExactMatchIdentityMapper.java b/opendj3-server-dev/src/server/org/opends/server/extensions/ExactMatchIdentityMapper.java
index 508cc2c..e5a06ec 100644
--- a/opendj3-server-dev/src/server/org/opends/server/extensions/ExactMatchIdentityMapper.java
+++ b/opendj3-server-dev/src/server/org/opends/server/extensions/ExactMatchIdentityMapper.java
@@ -35,6 +35,7 @@
 import java.util.Set;
 
 import org.forgerock.i18n.LocalizableMessage;
+import org.forgerock.opendj.ldap.DereferenceAliasesPolicy;
 import org.forgerock.opendj.ldap.SearchScope;
 import org.opends.server.admin.server.ConfigurationChangeListener;
 import org.opends.server.admin.std.server.ExactMatchIdentityMapperCfg;
@@ -212,7 +213,7 @@
     {
       InternalSearchOperation internalSearch =
            conn.processSearch(baseDN, SearchScope.WHOLE_SUBTREE,
-                              DereferencePolicy.NEVER_DEREF_ALIASES, 1, 10,
+                              DereferenceAliasesPolicy.NEVER, 1, 10,
                               false, filter, requestedAttributes);
 
       switch (internalSearch.getResultCode().asEnum())
diff --git a/opendj3-server-dev/src/server/org/opends/server/extensions/FingerprintCertificateMapper.java b/opendj3-server-dev/src/server/org/opends/server/extensions/FingerprintCertificateMapper.java
index 11d7b57..e1f7a24 100644
--- a/opendj3-server-dev/src/server/org/opends/server/extensions/FingerprintCertificateMapper.java
+++ b/opendj3-server-dev/src/server/org/opends/server/extensions/FingerprintCertificateMapper.java
@@ -35,6 +35,7 @@
 
 import org.forgerock.i18n.LocalizableMessage;
 import org.forgerock.i18n.slf4j.LocalizedLogger;
+import org.forgerock.opendj.ldap.DereferenceAliasesPolicy;
 import org.forgerock.opendj.ldap.SearchScope;
 import org.opends.server.admin.server.ConfigurationChangeListener;
 import org.opends.server.admin.std.server.CertificateMapperCfg;
@@ -238,7 +239,7 @@
     {
       InternalSearchOperation searchOperation =
            conn.processSearch(baseDN, SearchScope.WHOLE_SUBTREE,
-                              DereferencePolicy.NEVER_DEREF_ALIASES, 1, 10,
+                              DereferenceAliasesPolicy.NEVER, 1, 10,
                               false, filter, requestedAttributes);
 
       switch (searchOperation.getResultCode().asEnum())
diff --git a/opendj3-server-dev/src/server/org/opends/server/extensions/LDAPPassThroughAuthenticationPolicyFactory.java b/opendj3-server-dev/src/server/org/opends/server/extensions/LDAPPassThroughAuthenticationPolicyFactory.java
index f54c231..04af01b 100644
--- a/opendj3-server-dev/src/server/org/opends/server/extensions/LDAPPassThroughAuthenticationPolicyFactory.java
+++ b/opendj3-server-dev/src/server/org/opends/server/extensions/LDAPPassThroughAuthenticationPolicyFactory.java
@@ -63,7 +63,7 @@
 import org.opends.server.types.AttributeType;
 import org.opends.server.types.AttributeValue;
 import org.opends.server.types.ConfigChangeResult;
-import org.opends.server.types.DereferencePolicy;
+import org.forgerock.opendj.ldap.DereferenceAliasesPolicy;
 import org.opends.server.types.DN;
 import org.opends.server.types.DirectoryException;
 import org.opends.server.types.Entry;
@@ -952,7 +952,7 @@
         final SearchRequestProtocolOp searchRequest =
           new SearchRequestProtocolOp(
             ByteString.valueOf(baseDN.toString()), scope,
-            DereferencePolicy.DEREF_ALWAYS, 1 /* size limit */,
+            DereferenceAliasesPolicy.ALWAYS, 1 /* size limit */,
             (timeoutMS / 1000), true /* types only */,
             RawFilter.create(filter), NO_ATTRIBUTES);
         sendRequest(searchRequest);
diff --git a/opendj3-server-dev/src/server/org/opends/server/extensions/PasswordPolicyStateExtendedOperation.java b/opendj3-server-dev/src/server/org/opends/server/extensions/PasswordPolicyStateExtendedOperation.java
index eeec3b4..565744c 100644
--- a/opendj3-server-dev/src/server/org/opends/server/extensions/PasswordPolicyStateExtendedOperation.java
+++ b/opendj3-server-dev/src/server/org/opends/server/extensions/PasswordPolicyStateExtendedOperation.java
@@ -38,6 +38,7 @@
 import org.forgerock.opendj.io.ASN1Writer;
 import org.forgerock.opendj.ldap.ByteString;
 import org.forgerock.opendj.ldap.ByteStringBuilder;
+import org.forgerock.opendj.ldap.DereferenceAliasesPolicy;
 import org.forgerock.opendj.ldap.SearchScope;
 import org.opends.server.admin.std.server.PasswordPolicyStateExtendedOperationHandlerCfg;
 import org.opends.server.api.AuthenticationPolicy;
@@ -579,7 +580,7 @@
 
     InternalSearchOperation internalSearch =
          conn.processSearch(targetDN, SearchScope.BASE_OBJECT,
-                            DereferencePolicy.NEVER_DEREF_ALIASES, 1, 0,
+                            DereferenceAliasesPolicy.NEVER, 1, 0,
                             false, userFilter, requestAttributes, null);
     if (internalSearch.getResultCode() != ResultCode.SUCCESS)
     {
diff --git a/opendj3-server-dev/src/server/org/opends/server/extensions/RegularExpressionIdentityMapper.java b/opendj3-server-dev/src/server/org/opends/server/extensions/RegularExpressionIdentityMapper.java
index 148709b..5499d7c 100644
--- a/opendj3-server-dev/src/server/org/opends/server/extensions/RegularExpressionIdentityMapper.java
+++ b/opendj3-server-dev/src/server/org/opends/server/extensions/RegularExpressionIdentityMapper.java
@@ -38,6 +38,7 @@
 import java.util.regex.PatternSyntaxException;
 
 import org.forgerock.i18n.LocalizableMessage;
+import org.forgerock.opendj.ldap.DereferenceAliasesPolicy;
 import org.forgerock.opendj.ldap.SearchScope;
 import org.opends.server.admin.server.ConfigurationChangeListener;
 import org.opends.server.admin.std.server.IdentityMapperCfg;
@@ -234,7 +235,7 @@
     {
       InternalSearchOperation internalSearch =
            conn.processSearch(baseDN, SearchScope.WHOLE_SUBTREE,
-                              DereferencePolicy.NEVER_DEREF_ALIASES, 1, 10,
+                              DereferenceAliasesPolicy.NEVER, 1, 10,
                               false, filter, requestedAttributes);
 
       switch (internalSearch.getResultCode().asEnum())
diff --git a/opendj3-server-dev/src/server/org/opends/server/extensions/SubjectAttributeToUserAttributeCertificateMapper.java b/opendj3-server-dev/src/server/org/opends/server/extensions/SubjectAttributeToUserAttributeCertificateMapper.java
index a4d4e91..930a23f 100644
--- a/opendj3-server-dev/src/server/org/opends/server/extensions/SubjectAttributeToUserAttributeCertificateMapper.java
+++ b/opendj3-server-dev/src/server/org/opends/server/extensions/SubjectAttributeToUserAttributeCertificateMapper.java
@@ -35,6 +35,7 @@
 
 import org.forgerock.i18n.LocalizableMessage;
 import org.forgerock.i18n.slf4j.LocalizedLogger;
+import org.forgerock.opendj.ldap.DereferenceAliasesPolicy;
 import org.forgerock.opendj.ldap.SearchScope;
 import org.opends.server.admin.server.ConfigurationChangeListener;
 import org.opends.server.admin.std.server.CertificateMapperCfg;
@@ -297,7 +298,7 @@
     {
       InternalSearchOperation searchOperation =
            conn.processSearch(baseDN, SearchScope.WHOLE_SUBTREE,
-                              DereferencePolicy.NEVER_DEREF_ALIASES, 1, 10,
+                              DereferenceAliasesPolicy.NEVER, 1, 10,
                               false, filter, requestedAttributes);
 
       switch (searchOperation.getResultCode().asEnum())
diff --git a/opendj3-server-dev/src/server/org/opends/server/extensions/SubjectDNToUserAttributeCertificateMapper.java b/opendj3-server-dev/src/server/org/opends/server/extensions/SubjectDNToUserAttributeCertificateMapper.java
index 93e7060..fbb9f92 100644
--- a/opendj3-server-dev/src/server/org/opends/server/extensions/SubjectDNToUserAttributeCertificateMapper.java
+++ b/opendj3-server-dev/src/server/org/opends/server/extensions/SubjectDNToUserAttributeCertificateMapper.java
@@ -37,6 +37,7 @@
 
 import org.forgerock.i18n.LocalizableMessage;
 import org.forgerock.i18n.slf4j.LocalizedLogger;
+import org.forgerock.opendj.ldap.DereferenceAliasesPolicy;
 import org.forgerock.opendj.ldap.SearchScope;
 import org.opends.server.admin.server.ConfigurationChangeListener;
 import org.opends.server.admin.std.server.CertificateMapperCfg;
@@ -205,7 +206,7 @@
     {
       InternalSearchOperation searchOperation =
            conn.processSearch(baseDN, SearchScope.WHOLE_SUBTREE,
-                              DereferencePolicy.NEVER_DEREF_ALIASES, 1, 10,
+                              DereferenceAliasesPolicy.NEVER, 1, 10,
                               false, filter, requestedAttributes);
       switch (searchOperation.getResultCode().asEnum())
       {
diff --git a/opendj3-server-dev/src/server/org/opends/server/plugins/ReferentialIntegrityPlugin.java b/opendj3-server-dev/src/server/org/opends/server/plugins/ReferentialIntegrityPlugin.java
index acda4a7..fde7397 100644
--- a/opendj3-server-dev/src/server/org/opends/server/plugins/ReferentialIntegrityPlugin.java
+++ b/opendj3-server-dev/src/server/org/opends/server/plugins/ReferentialIntegrityPlugin.java
@@ -46,6 +46,7 @@
 
 import org.forgerock.i18n.LocalizableMessage;
 import org.forgerock.i18n.slf4j.LocalizedLogger;
+import org.forgerock.opendj.ldap.DereferenceAliasesPolicy;
 import org.forgerock.opendj.ldap.ModificationType;
 import org.forgerock.opendj.ldap.SearchScope;
 import org.opends.server.admin.server.ConfigurationChangeListener;
@@ -700,7 +701,7 @@
     InternalClientConnection conn =
          InternalClientConnection.getRootConnection();
     InternalSearchOperation operation = conn.processSearch(baseDN,
-         SearchScope.WHOLE_SUBTREE, DereferencePolicy.NEVER_DEREF_ALIASES, 0, 0,
+         SearchScope.WHOLE_SUBTREE, DereferenceAliasesPolicy.NEVER, 0, 0,
          false, SearchFilter.createORFilter(componentFilters), null);
 
     switch (operation.getResultCode().asEnum())
diff --git a/opendj3-server-dev/src/server/org/opends/server/plugins/UniqueAttributePlugin.java b/opendj3-server-dev/src/server/org/opends/server/plugins/UniqueAttributePlugin.java
index c42a230..715db25 100644
--- a/opendj3-server-dev/src/server/org/opends/server/plugins/UniqueAttributePlugin.java
+++ b/opendj3-server-dev/src/server/org/opends/server/plugins/UniqueAttributePlugin.java
@@ -31,6 +31,7 @@
 
 import org.forgerock.i18n.LocalizableMessage;
 import org.forgerock.i18n.slf4j.LocalizedLogger;
+import org.forgerock.opendj.ldap.DereferenceAliasesPolicy;
 import org.forgerock.opendj.ldap.SearchScope;
 import org.opends.server.admin.server.ConfigurationChangeListener;
 import org.opends.server.admin.std.meta.PluginCfgDefn;
@@ -656,7 +657,7 @@
     {
       InternalSearchOperation searchOperation =
            conn.processSearch(baseDN, SearchScope.WHOLE_SUBTREE,
-                              DereferencePolicy.NEVER_DEREF_ALIASES, 2, 0,
+                              DereferenceAliasesPolicy.NEVER, 2, 0,
                               false, filter, SEARCH_ATTRS);
       for (SearchResultEntry e : searchOperation.getSearchEntries())
       {
diff --git a/opendj3-server-dev/src/server/org/opends/server/protocols/http/SdkConnectionAdapter.java b/opendj3-server-dev/src/server/org/opends/server/protocols/http/SdkConnectionAdapter.java
index acbd758..23446c7 100644
--- a/opendj3-server-dev/src/server/org/opends/server/protocols/http/SdkConnectionAdapter.java
+++ b/opendj3-server-dev/src/server/org/opends/server/protocols/http/SdkConnectionAdapter.java
@@ -438,7 +438,7 @@
     SearchOperationBasis operation =
         new SearchOperationBasis(clientConnection, messageID, messageID,
             to(request.getControls()), valueOf(request.getName()),
-            request.getScope(), to(request.getDereferenceAliasesPolicy()),
+            request.getScope(), request.getDereferenceAliasesPolicy(),
             request.getSizeLimit(), request.getTimeLimit(),
             request.isTypesOnly(), to(request.getFilter()),
             new LinkedHashSet<String>(request.getAttributes()));
diff --git a/opendj3-server-dev/src/server/org/opends/server/protocols/internal/InternalClientConnection.java b/opendj3-server-dev/src/server/org/opends/server/protocols/internal/InternalClientConnection.java
index ef69470..c240dfa 100644
--- a/opendj3-server-dev/src/server/org/opends/server/protocols/internal/InternalClientConnection.java
+++ b/opendj3-server-dev/src/server/org/opends/server/protocols/internal/InternalClientConnection.java
@@ -34,6 +34,7 @@
 import org.forgerock.i18n.LocalizableMessage;
 import org.forgerock.i18n.slf4j.LocalizedLogger;
 import org.forgerock.opendj.ldap.ByteString;
+import org.forgerock.opendj.ldap.DereferenceAliasesPolicy;
 import org.forgerock.opendj.ldap.SearchScope;
 import org.opends.server.api.ClientConnection;
 import org.opends.server.api.ConnectionHandler;
@@ -2070,7 +2071,7 @@
    */
   public InternalSearchOperation
               processSearch(String rawBaseDN, SearchScope scope,
-                            DereferencePolicy derefPolicy,
+                            DereferenceAliasesPolicy derefPolicy,
                             int sizeLimit, int timeLimit,
                             boolean typesOnly, String filterString,
                             Set<String> attributes)
@@ -2112,7 +2113,7 @@
    */
   public InternalSearchOperation
               processSearch(String rawBaseDN, SearchScope scope,
-                            DereferencePolicy derefPolicy,
+                            DereferenceAliasesPolicy derefPolicy,
                             int sizeLimit, int timeLimit,
                             boolean typesOnly, String filterString,
                             Set<String> attributes,
@@ -2157,7 +2158,7 @@
    */
   public InternalSearchOperation
               processSearch(String rawBaseDN, SearchScope scope,
-                            DereferencePolicy derefPolicy,
+                            DereferenceAliasesPolicy derefPolicy,
                             int sizeLimit, int timeLimit,
                             boolean typesOnly, String filterString,
                             Set<String> attributes,
@@ -2205,7 +2206,7 @@
                                       RawFilter filter)
   {
     return processSearch(rawBaseDN, scope,
-                         DereferencePolicy.NEVER_DEREF_ALIASES, 0, 0,
+                         DereferenceAliasesPolicy.NEVER, 0, 0,
                          false, filter, new LinkedHashSet<String>(0));
   }
 
@@ -2234,7 +2235,7 @@
   public InternalSearchOperation
               processSearch(ByteString rawBaseDN,
                             SearchScope scope,
-                            DereferencePolicy derefPolicy,
+                            DereferenceAliasesPolicy derefPolicy,
                             int sizeLimit, int timeLimit,
                             boolean typesOnly, RawFilter filter,
                             Set<String> attributes)
@@ -2271,7 +2272,7 @@
   public InternalSearchOperation
               processSearch(ByteString rawBaseDN,
                             SearchScope scope,
-                            DereferencePolicy derefPolicy,
+                            DereferenceAliasesPolicy derefPolicy,
                             int sizeLimit, int timeLimit,
                             boolean typesOnly, RawFilter filter,
                             Set<String> attributes,
@@ -2311,7 +2312,7 @@
   public InternalSearchOperation
               processSearch(ByteString rawBaseDN,
                             SearchScope scope,
-                            DereferencePolicy derefPolicy,
+                            DereferenceAliasesPolicy derefPolicy,
                             int sizeLimit, int timeLimit,
                             boolean typesOnly, RawFilter filter,
                             Set<String> attributes,
@@ -2352,7 +2353,7 @@
                                       SearchFilter filter)
   {
     return processSearch(baseDN, scope,
-                         DereferencePolicy.NEVER_DEREF_ALIASES, 0, 0,
+                         DereferenceAliasesPolicy.NEVER, 0, 0,
                          false, filter, new LinkedHashSet<String>(0));
   }
 
@@ -2380,7 +2381,7 @@
    */
   public InternalSearchOperation
               processSearch(DN baseDN, SearchScope scope,
-                            DereferencePolicy derefPolicy,
+                            DereferenceAliasesPolicy derefPolicy,
                             int sizeLimit, int timeLimit,
                             boolean typesOnly, SearchFilter filter,
                             Set<String> attributes)
@@ -2416,7 +2417,7 @@
    */
   public InternalSearchOperation
               processSearch(DN baseDN, SearchScope scope,
-                            DereferencePolicy derefPolicy,
+                            DereferenceAliasesPolicy derefPolicy,
                             int sizeLimit, int timeLimit,
                             boolean typesOnly, SearchFilter filter,
                             Set<String> attributes,
@@ -2455,7 +2456,7 @@
    */
   public InternalSearchOperation
               processSearch(DN baseDN, SearchScope scope,
-                            DereferencePolicy derefPolicy,
+                            DereferenceAliasesPolicy derefPolicy,
                             int sizeLimit, int timeLimit,
                             boolean typesOnly, SearchFilter filter,
                             Set<String> attributes,
diff --git a/opendj3-server-dev/src/server/org/opends/server/protocols/internal/InternalSearchOperation.java b/opendj3-server-dev/src/server/org/opends/server/protocols/internal/InternalSearchOperation.java
index 18e034b..7a5939a 100644
--- a/opendj3-server-dev/src/server/org/opends/server/protocols/internal/InternalSearchOperation.java
+++ b/opendj3-server-dev/src/server/org/opends/server/protocols/internal/InternalSearchOperation.java
@@ -31,6 +31,7 @@
 import java.util.Set;
 
 import org.forgerock.opendj.ldap.ByteString;
+import org.forgerock.opendj.ldap.DereferenceAliasesPolicy;
 import org.forgerock.opendj.ldap.SearchScope;
 import org.opends.server.api.ClientConnection;
 import org.opends.server.core.SearchOperationBasis;
@@ -99,7 +100,7 @@
               ClientConnection internalConnection,
               long operationID, int messageID,
               List<Control> requestControls, ByteString rawBaseDN,
-              SearchScope scope, DereferencePolicy derefPolicy,
+              SearchScope scope, DereferenceAliasesPolicy derefPolicy,
               int sizeLimit, int timeLimit, boolean typesOnly,
               RawFilter rawFilter, Set<String> attributes,
               InternalSearchListener searchListener)
@@ -164,7 +165,7 @@
               ClientConnection internalConnection,
               long operationID, int messageID,
               List<Control> requestControls, DN baseDN,
-              SearchScope scope, DereferencePolicy derefPolicy,
+              SearchScope scope, DereferenceAliasesPolicy derefPolicy,
               int sizeLimit, int timeLimit, boolean typesOnly,
               SearchFilter filter, Set<String> attributes,
               InternalSearchListener searchListener)
diff --git a/opendj3-server-dev/src/server/org/opends/server/protocols/jmx/JmxClientConnection.java b/opendj3-server-dev/src/server/org/opends/server/protocols/jmx/JmxClientConnection.java
index da20065..9443d4b 100644
--- a/opendj3-server-dev/src/server/org/opends/server/protocols/jmx/JmxClientConnection.java
+++ b/opendj3-server-dev/src/server/org/opends/server/protocols/jmx/JmxClientConnection.java
@@ -39,6 +39,8 @@
 import org.forgerock.i18n.LocalizableMessageBuilder;
 import org.forgerock.i18n.slf4j.LocalizedLogger;
 import org.forgerock.opendj.ldap.ByteString;
+import org.forgerock.opendj.ldap.DereferenceAliasesPolicy;
+import org.forgerock.opendj.ldap.ResultCode;
 import org.forgerock.opendj.ldap.SearchScope;
 import org.opends.server.api.ClientConnection;
 import org.opends.server.api.ConnectionHandler;
@@ -48,7 +50,6 @@
 import org.opends.server.protocols.internal.InternalSearchOperation;
 import org.opends.server.protocols.ldap.LDAPFilter;
 import org.opends.server.types.*;
-import org.forgerock.opendj.ldap.ResultCode;
 
 import static org.opends.messages.ProtocolMessages.*;
 
@@ -779,7 +780,7 @@
                                       SearchScope scope, LDAPFilter filter)
   {
     return processSearch(rawBaseDN, scope,
-                         DereferencePolicy.NEVER_DEREF_ALIASES, 0, 0, false,
+                         DereferenceAliasesPolicy.NEVER, 0, 0, false,
                          filter, new LinkedHashSet<String>(0));
   }
 
@@ -803,7 +804,7 @@
    */
   public InternalSearchOperation processSearch(ByteString rawBaseDN,
                                       SearchScope scope,
-                                      DereferencePolicy derefPolicy,
+                                      DereferenceAliasesPolicy derefPolicy,
                                       int sizeLimit, int timeLimit,
                                       boolean typesOnly, LDAPFilter filter,
                                       LinkedHashSet<String> attributes)
@@ -848,7 +849,7 @@
    */
   public InternalSearchOperation processSearch(ByteString rawBaseDN,
                                       SearchScope scope,
-                                      DereferencePolicy derefPolicy,
+                                      DereferenceAliasesPolicy derefPolicy,
                                       int sizeLimit, int timeLimit,
                                       boolean typesOnly, LDAPFilter filter,
                                       LinkedHashSet<String> attributes,
diff --git a/opendj3-server-dev/src/server/org/opends/server/protocols/ldap/LDAPReader.java b/opendj3-server-dev/src/server/org/opends/server/protocols/ldap/LDAPReader.java
index 473fd00..f8faf3f 100644
--- a/opendj3-server-dev/src/server/org/opends/server/protocols/ldap/LDAPReader.java
+++ b/opendj3-server-dev/src/server/org/opends/server/protocols/ldap/LDAPReader.java
@@ -26,11 +26,17 @@
  */
 package org.opends.server.protocols.ldap;
 
+import java.io.IOException;
+import java.util.ArrayList;
+import java.util.LinkedHashSet;
+import java.util.LinkedList;
+
 import org.forgerock.i18n.LocalizableMessage;
 import org.forgerock.i18n.slf4j.LocalizedLogger;
 import org.forgerock.opendj.io.ASN1;
 import org.forgerock.opendj.io.ASN1Reader;
 import org.forgerock.opendj.ldap.ByteString;
+import org.forgerock.opendj.ldap.DereferenceAliasesPolicy;
 import org.forgerock.opendj.ldap.SearchScope;
 import org.opends.server.types.*;
 
@@ -38,11 +44,6 @@
 import static org.opends.server.protocols.ldap.LDAPConstants.*;
 import static org.opends.server.protocols.ldap.LDAPResultCode.*;
 
-import java.io.IOException;
-import java.util.ArrayList;
-import java.util.LinkedHashSet;
-import java.util.LinkedList;
-
 /**
  * Utility class used to decode LDAP messages from an ASN1Reader.
  */
@@ -1959,23 +1960,17 @@
     }
 
 
-    DereferencePolicy dereferencePolicy;
+    DereferenceAliasesPolicy dereferencePolicy;
     try
     {
       int derefValue = (int)reader.readInteger();
       switch (derefValue)
       {
         case DEREF_NEVER:
-          dereferencePolicy = DereferencePolicy.NEVER_DEREF_ALIASES;
-          break;
         case DEREF_IN_SEARCHING:
-          dereferencePolicy = DereferencePolicy.DEREF_IN_SEARCHING;
-          break;
         case DEREF_FINDING_BASE:
-          dereferencePolicy = DereferencePolicy.DEREF_FINDING_BASE_OBJECT;
-          break;
         case DEREF_ALWAYS:
-          dereferencePolicy = DereferencePolicy.DEREF_ALWAYS;
+          dereferencePolicy = DereferenceAliasesPolicy.valueOf(derefValue);
           break;
         default:
           LocalizableMessage message =
diff --git a/opendj3-server-dev/src/server/org/opends/server/protocols/ldap/SearchRequestProtocolOp.java b/opendj3-server-dev/src/server/org/opends/server/protocols/ldap/SearchRequestProtocolOp.java
index 0ca7bc6..dcd8194 100644
--- a/opendj3-server-dev/src/server/org/opends/server/protocols/ldap/SearchRequestProtocolOp.java
+++ b/opendj3-server-dev/src/server/org/opends/server/protocols/ldap/SearchRequestProtocolOp.java
@@ -31,10 +31,9 @@
 import java.util.LinkedHashSet;
 import java.util.Set;
 
-import org.forgerock.i18n.slf4j.LocalizedLogger;
 import org.forgerock.opendj.io.ASN1Writer;
 import org.forgerock.opendj.ldap.ByteString;
-import org.opends.server.types.DereferencePolicy;
+import org.forgerock.opendj.ldap.DereferenceAliasesPolicy;
 import org.opends.server.types.RawFilter;
 import org.forgerock.opendj.ldap.SearchScope;
 
@@ -48,13 +47,12 @@
 public class SearchRequestProtocolOp
        extends ProtocolOp
 {
-  private static final LocalizedLogger logger = LocalizedLogger.getLoggerForThisClass();
 
   /** The typesOnly flag for this search request. */
   private boolean typesOnly;
 
   /** The alias dereferencing policy for this search request. */
-  private DereferencePolicy dereferencePolicy;
+  private DereferenceAliasesPolicy dereferencePolicy;
 
   /** The base DN for this search request. */
   private ByteString baseDN;
@@ -91,7 +89,7 @@
    *                            request.
    */
   public SearchRequestProtocolOp(ByteString baseDN, SearchScope scope,
-                                 DereferencePolicy dereferencePolicy,
+                                 DereferenceAliasesPolicy dereferencePolicy,
                                  int sizeLimit, int timeLimit,
                                  boolean typesOnly, RawFilter filter,
                                  Set<String> attributes)
@@ -143,7 +141,7 @@
    *
    * @return  The alias dereferencing policy for this search request.
    */
-  public DereferencePolicy getDereferencePolicy()
+  public DereferenceAliasesPolicy getDereferencePolicy()
   {
     return dereferencePolicy;
   }
diff --git a/opendj3-server-dev/src/server/org/opends/server/replication/plugin/LDAPReplicationDomain.java b/opendj3-server-dev/src/server/org/opends/server/replication/plugin/LDAPReplicationDomain.java
index 67ee81d..3b70e8d 100644
--- a/opendj3-server-dev/src/server/org/opends/server/replication/plugin/LDAPReplicationDomain.java
+++ b/opendj3-server-dev/src/server/org/opends/server/replication/plugin/LDAPReplicationDomain.java
@@ -41,7 +41,9 @@
 import org.forgerock.i18n.slf4j.LocalizedLogger;
 import org.forgerock.opendj.ldap.ByteString;
 import org.forgerock.opendj.ldap.DecodeException;
+import org.forgerock.opendj.ldap.DereferenceAliasesPolicy;
 import org.forgerock.opendj.ldap.ModificationType;
+import org.forgerock.opendj.ldap.ResultCode;
 import org.forgerock.opendj.ldap.SearchScope;
 import org.opends.server.admin.server.ConfigurationChangeListener;
 import org.opends.server.admin.std.meta.ReplicationDomainCfgDefn.IsolationPolicy;
@@ -68,19 +70,18 @@
 import org.opends.server.tasks.PurgeConflictsHistoricalTask;
 import org.opends.server.tasks.TaskUtils;
 import org.opends.server.types.*;
-import org.forgerock.opendj.ldap.ResultCode;
 import org.opends.server.types.operation.*;
 import org.opends.server.util.LDIFReader;
 import org.opends.server.util.TimeThread;
 import org.opends.server.workflowelement.externalchangelog.ECLWorkflowElement;
 import org.opends.server.workflowelement.localbackend.LocalBackendModifyOperation;
 
+import static org.forgerock.opendj.ldap.ResultCode.*;
 import static org.opends.messages.ReplicationMessages.*;
 import static org.opends.messages.ToolMessages.*;
 import static org.opends.server.replication.plugin.EntryHistorical.*;
 import static org.opends.server.replication.protocol.OperationContext.*;
 import static org.opends.server.replication.service.ReplicationMonitor.*;
-import static org.forgerock.opendj.ldap.ResultCode.*;
 import static org.opends.server.util.ServerConstants.*;
 import static org.opends.server.util.StaticUtils.*;
 
@@ -656,7 +657,7 @@
     attributes.add(REPLICATION_FRACTIONAL_INCLUDE);
     InternalSearchOperation search = conn.processSearch(asn1BaseDn,
       SearchScope.BASE_OBJECT,
-      DereferencePolicy.DEREF_ALWAYS, 0, 0, false,
+      DereferenceAliasesPolicy.ALWAYS, 0, 0, false,
       filter, attributes);
     if (search.getResultCode() != ResultCode.SUCCESS
         && search.getResultCode() != ResultCode.NO_SUCH_OBJECT)
@@ -2129,7 +2130,7 @@
      InternalSearchOperation searchOp =  conn.processSearch(
        ByteString.valueOf(getBaseDNString()),
        SearchScope.WHOLE_SUBTREE,
-       DereferencePolicy.NEVER_DEREF_ALIASES,
+       DereferenceAliasesPolicy.NEVER,
        0, 0, false, filter,
        USER_AND_REPL_OPERATIONAL_ATTRS, null);
 
@@ -2548,7 +2549,7 @@
       Set<String> attrs = new LinkedHashSet<String>(1);
       attrs.add(ENTRYUUID_ATTRIBUTE_NAME);
       InternalSearchOperation search = conn.processSearch(dn,
-            SearchScope.BASE_OBJECT, DereferencePolicy.NEVER_DEREF_ALIASES,
+            SearchScope.BASE_OBJECT, DereferenceAliasesPolicy.NEVER,
             0, 0, false,
             SearchFilter.createFilterFromString("(objectclass=*)"),
             attrs);
@@ -3004,7 +3005,7 @@
 
       InternalSearchOperation op =
           conn.processSearch(entryDN, SearchScope.SINGLE_LEVEL,
-              DereferencePolicy.NEVER_DEREF_ALIASES, 0, 0, false,
+              DereferenceAliasesPolicy.NEVER, 0, 0, false,
               SearchFilter.createFilterFromString("(objectClass=*)"),
               attrs);
 
@@ -3393,7 +3394,7 @@
     final String filter = "(objectclass=*)";
     InternalSearchOperation search = conn.processSearch(getBaseDNString(),
         SearchScope.BASE_OBJECT,
-        DereferencePolicy.DEREF_ALWAYS, 0, 0, false,
+        DereferenceAliasesPolicy.ALWAYS, 0, 0, false,
         filter,attributes);
     if (search.getResultCode() == ResultCode.NO_SUCH_OBJECT)
     {
@@ -3401,7 +3402,7 @@
       // in the config entry.
       search = conn.processSearch(config.dn().toString(),
           SearchScope.BASE_OBJECT,
-          DereferencePolicy.DEREF_ALWAYS, 0, 0, false,
+          DereferenceAliasesPolicy.ALWAYS, 0, 0, false,
           filter,attributes);
     }
 
@@ -4344,7 +4345,7 @@
     return conn.processSearch(
       ByteString.valueOf(baseDN.toString()),
       SearchScope.WHOLE_SUBTREE,
-      DereferencePolicy.NEVER_DEREF_ALIASES,
+      DereferenceAliasesPolicy.NEVER,
       0, 0, false, filter,
       USER_AND_REPL_OPERATIONAL_ATTRS,
       resultListener);
@@ -5116,7 +5117,7 @@
      InternalSearchOperation searchOp = conn.processSearch(
          ByteString.valueOf(getBaseDNString()),
          SearchScope.WHOLE_SUBTREE,
-         DereferencePolicy.NEVER_DEREF_ALIASES,
+         DereferenceAliasesPolicy.NEVER,
          0, 0, false, filter,
          USER_AND_REPL_OPERATIONAL_ATTRS, null);
 
diff --git a/opendj3-server-dev/src/server/org/opends/server/replication/plugin/PersistentServerState.java b/opendj3-server-dev/src/server/org/opends/server/replication/plugin/PersistentServerState.java
index 76d8120..0bfa2b6 100644
--- a/opendj3-server-dev/src/server/org/opends/server/replication/plugin/PersistentServerState.java
+++ b/opendj3-server-dev/src/server/org/opends/server/replication/plugin/PersistentServerState.java
@@ -33,6 +33,7 @@
 
 import org.forgerock.i18n.slf4j.LocalizedLogger;
 import org.forgerock.opendj.ldap.ByteString;
+import org.forgerock.opendj.ldap.DereferenceAliasesPolicy;
 import org.forgerock.opendj.ldap.ModificationType;
 import org.forgerock.opendj.ldap.SearchScope;
 import org.opends.server.core.DirectoryServer;
@@ -190,7 +191,7 @@
       attributes.add(REPLICATION_STATE);
       InternalSearchOperation search = conn.processSearch(baseDn,
           SearchScope.BASE_OBJECT,
-          DereferencePolicy.NEVER_DEREF_ALIASES,
+          DereferenceAliasesPolicy.NEVER,
           0, 0, false, filter, attributes);
       if (((search.getResultCode() != ResultCode.SUCCESS)) &&
           ((search.getResultCode() != ResultCode.NO_SUCH_OBJECT)))
@@ -239,7 +240,7 @@
       InternalSearchOperation op =
           conn.processSearch(DN.valueOf("cn=config"),
           SearchScope.SUBORDINATES,
-          DereferencePolicy.NEVER_DEREF_ALIASES,
+          DereferenceAliasesPolicy.NEVER,
           1, 0, false, filter, attributes);
 
       if (op.getResultCode() == ResultCode.SUCCESS)
diff --git a/opendj3-server-dev/src/server/org/opends/server/replication/server/ReplicationBackend.java b/opendj3-server-dev/src/server/org/opends/server/replication/server/ReplicationBackend.java
index a2f035a..b70cf26 100644
--- a/opendj3-server-dev/src/server/org/opends/server/replication/server/ReplicationBackend.java
+++ b/opendj3-server-dev/src/server/org/opends/server/replication/server/ReplicationBackend.java
@@ -36,6 +36,7 @@
 import org.forgerock.i18n.slf4j.LocalizedLogger;
 import org.forgerock.opendj.ldap.ByteString;
 import org.forgerock.opendj.ldap.ConditionResult;
+import org.forgerock.opendj.ldap.DereferenceAliasesPolicy;
 import org.forgerock.opendj.ldap.SearchScope;
 import org.forgerock.util.Reject;
 import org.opends.server.admin.Configuration;
@@ -316,7 +317,7 @@
               InternalClientConnection.nextOperationID(),
               InternalClientConnection.nextMessageID(),
               null, entryDN, SearchScope.BASE_OBJECT,
-              DereferencePolicy.NEVER_DEREF_ALIASES, 0, 0, false,
+              DereferenceAliasesPolicy.NEVER, 0, 0, false,
               filter, null, null);
       search(searchOp);
       List<SearchResultEntry> resultEntries = searchOp.getSearchEntries();
diff --git a/opendj3-server-dev/src/server/org/opends/server/tools/LDAPSearchOptions.java b/opendj3-server-dev/src/server/org/opends/server/tools/LDAPSearchOptions.java
index 7fde8e5..a88e133 100644
--- a/opendj3-server-dev/src/server/org/opends/server/tools/LDAPSearchOptions.java
+++ b/opendj3-server-dev/src/server/org/opends/server/tools/LDAPSearchOptions.java
@@ -28,11 +28,11 @@
 
 import java.io.PrintStream;
 
-import org.opends.server.types.DereferencePolicy;
+import org.forgerock.opendj.ldap.DereferenceAliasesPolicy;
 import org.forgerock.opendj.ldap.SearchScope;
 
 import static org.opends.messages.ToolMessages.*;
-import static org.opends.server.types.DereferencePolicy.*;
+import static org.forgerock.opendj.ldap.DereferenceAliasesPolicy.*;
 import static org.forgerock.opendj.ldap.SearchScope.*;
 
 
@@ -44,7 +44,7 @@
 public class LDAPSearchOptions extends LDAPToolOptions
 {
 
-  private DereferencePolicy dereferencePolicy =  NEVER_DEREF_ALIASES;
+  private DereferenceAliasesPolicy dereferencePolicy =  NEVER;
   private SearchScope searchScope = WHOLE_SUBTREE;
   private int sizeLimit = 0;
   private int timeLimit = 0;
@@ -165,19 +165,19 @@
   {
       if(policy == null)
       {
-        dereferencePolicy = NEVER_DEREF_ALIASES;
+        dereferencePolicy = NEVER;
       } else if(policy.equals("never"))
       {
-        dereferencePolicy = NEVER_DEREF_ALIASES;
+        dereferencePolicy = NEVER;
       } else if(policy.equals("always"))
       {
-        dereferencePolicy = DEREF_ALWAYS;
+        dereferencePolicy = ALWAYS;
       } else if (policy.equals("search"))
       {
-        dereferencePolicy = DEREF_IN_SEARCHING;
+        dereferencePolicy = IN_SEARCHING;
       } else if (policy.equals("find"))
       {
-        dereferencePolicy = DEREF_FINDING_BASE_OBJECT;
+        dereferencePolicy = FINDING_BASE;
       } else
       {
         err.println("Invalid deref alias specified:" + policy);
@@ -191,7 +191,7 @@
    *
    * @return  The alias dereference policy.
    */
-  public DereferencePolicy getDereferencePolicy()
+  public DereferenceAliasesPolicy getDereferencePolicy()
   {
     return dereferencePolicy;
   }
diff --git a/opendj3-server-dev/src/server/org/opends/server/tools/tasks/TaskClient.java b/opendj3-server-dev/src/server/org/opends/server/tools/tasks/TaskClient.java
index 809219c..c951be9 100644
--- a/opendj3-server-dev/src/server/org/opends/server/tools/tasks/TaskClient.java
+++ b/opendj3-server-dev/src/server/org/opends/server/tools/tasks/TaskClient.java
@@ -65,7 +65,7 @@
 import org.opends.server.tools.LDAPWriter;
 import org.forgerock.opendj.ldap.ByteString;
 import org.opends.server.types.Control;
-import org.opends.server.types.DereferencePolicy;
+import org.forgerock.opendj.ldap.DereferenceAliasesPolicy;
 import org.opends.server.types.Entry;
 import org.opends.server.types.LDAPException;
 import org.forgerock.opendj.ldap.ModificationType;
@@ -365,7 +365,7 @@
     writeSearch(new SearchRequestProtocolOp(
         ByteString.valueOf(ConfigConstants.DN_TASK_ROOT),
             SearchScope.WHOLE_SUBTREE,
-            DereferencePolicy.NEVER_DEREF_ALIASES,
+            DereferenceAliasesPolicy.NEVER,
             Integer.MAX_VALUE,
             Integer.MAX_VALUE,
             false,
@@ -417,7 +417,7 @@
     writeSearch(new SearchRequestProtocolOp(
         ByteString.valueOf(ConfigConstants.DN_TASK_ROOT),
             SearchScope.WHOLE_SUBTREE,
-            DereferencePolicy.NEVER_DEREF_ALIASES,
+            DereferenceAliasesPolicy.NEVER,
             Integer.MAX_VALUE,
             Integer.MAX_VALUE,
             false,
diff --git a/opendj3-server-dev/src/server/org/opends/server/types/operation/PostOperationSearchOperation.java b/opendj3-server-dev/src/server/org/opends/server/types/operation/PostOperationSearchOperation.java
index 3842503..a1cffcb 100644
--- a/opendj3-server-dev/src/server/org/opends/server/types/operation/PostOperationSearchOperation.java
+++ b/opendj3-server-dev/src/server/org/opends/server/types/operation/PostOperationSearchOperation.java
@@ -31,7 +31,7 @@
 import java.util.Set;
 
 import org.forgerock.opendj.ldap.ByteString;
-import org.opends.server.types.DereferencePolicy;
+import org.forgerock.opendj.ldap.DereferenceAliasesPolicy;
 import org.opends.server.types.DN;
 import org.opends.server.types.RawFilter;
 import org.forgerock.opendj.ldap.SearchScope;
@@ -90,7 +90,7 @@
    * @return  The alias dereferencing policy for this search
    *          operation.
    */
-  public DereferencePolicy getDerefPolicy();
+  public DereferenceAliasesPolicy getDerefPolicy();
 
 
 
diff --git a/opendj3-server-dev/src/server/org/opends/server/types/operation/PostResponseSearchOperation.java b/opendj3-server-dev/src/server/org/opends/server/types/operation/PostResponseSearchOperation.java
index 2b85d05..d4cde42 100644
--- a/opendj3-server-dev/src/server/org/opends/server/types/operation/PostResponseSearchOperation.java
+++ b/opendj3-server-dev/src/server/org/opends/server/types/operation/PostResponseSearchOperation.java
@@ -31,7 +31,7 @@
 import org.forgerock.opendj.ldap.ByteString;
 import org.forgerock.opendj.ldap.SearchScope;
 import org.opends.server.types.DN;
-import org.opends.server.types.DereferencePolicy;
+import org.forgerock.opendj.ldap.DereferenceAliasesPolicy;
 import org.opends.server.types.RawFilter;
 import org.opends.server.types.SearchFilter;
 
@@ -86,7 +86,7 @@
    * @return  The alias dereferencing policy for this search
    *          operation.
    */
-  public DereferencePolicy getDerefPolicy();
+  public DereferenceAliasesPolicy getDerefPolicy();
 
 
 
diff --git a/opendj3-server-dev/src/server/org/opends/server/types/operation/PreOperationSearchOperation.java b/opendj3-server-dev/src/server/org/opends/server/types/operation/PreOperationSearchOperation.java
index 234ec89..1b17f0b 100644
--- a/opendj3-server-dev/src/server/org/opends/server/types/operation/PreOperationSearchOperation.java
+++ b/opendj3-server-dev/src/server/org/opends/server/types/operation/PreOperationSearchOperation.java
@@ -31,7 +31,7 @@
 
 import org.forgerock.opendj.ldap.ByteString;
 import org.opends.server.types.Control;
-import org.opends.server.types.DereferencePolicy;
+import org.forgerock.opendj.ldap.DereferenceAliasesPolicy;
 import org.opends.server.types.DN;
 import org.opends.server.types.Entry;
 import org.opends.server.types.RawFilter;
@@ -90,7 +90,7 @@
    * @return  The alias dereferencing policy for this search
    *          operation.
    */
-  public DereferencePolicy getDerefPolicy();
+  public DereferenceAliasesPolicy getDerefPolicy();
 
 
 
diff --git a/opendj3-server-dev/src/server/org/opends/server/types/operation/PreParseSearchOperation.java b/opendj3-server-dev/src/server/org/opends/server/types/operation/PreParseSearchOperation.java
index 75bdea1..4c5c56d 100644
--- a/opendj3-server-dev/src/server/org/opends/server/types/operation/PreParseSearchOperation.java
+++ b/opendj3-server-dev/src/server/org/opends/server/types/operation/PreParseSearchOperation.java
@@ -30,6 +30,7 @@
 import java.util.Set;
 
 import org.forgerock.opendj.ldap.ByteString;
+import org.forgerock.opendj.ldap.DereferenceAliasesPolicy;
 import org.forgerock.opendj.ldap.SearchScope;
 import org.opends.server.types.*;
 
@@ -94,7 +95,7 @@
    * @return  The alias dereferencing policy for this search
    *          operation.
    */
-  public DereferencePolicy getDerefPolicy();
+  public DereferenceAliasesPolicy getDerefPolicy();
 
 
 
@@ -105,7 +106,7 @@
    * @param  derefPolicy  The alias dereferencing policy for this
    *                      search operation.
    */
-  public void setDerefPolicy(DereferencePolicy derefPolicy);
+  public void setDerefPolicy(DereferenceAliasesPolicy derefPolicy);
 
 
 
diff --git a/opendj3-server-dev/src/server/org/opends/server/types/operation/SearchEntrySearchOperation.java b/opendj3-server-dev/src/server/org/opends/server/types/operation/SearchEntrySearchOperation.java
index f6d63ad..88d3904 100644
--- a/opendj3-server-dev/src/server/org/opends/server/types/operation/SearchEntrySearchOperation.java
+++ b/opendj3-server-dev/src/server/org/opends/server/types/operation/SearchEntrySearchOperation.java
@@ -31,7 +31,7 @@
 import org.forgerock.opendj.ldap.ByteString;
 import org.forgerock.opendj.ldap.SearchScope;
 import org.opends.server.types.DN;
-import org.opends.server.types.DereferencePolicy;
+import org.forgerock.opendj.ldap.DereferenceAliasesPolicy;
 import org.opends.server.types.RawFilter;
 import org.opends.server.types.SearchFilter;
 
@@ -86,7 +86,7 @@
    * @return  The alias dereferencing policy for this search
    *          operation.
    */
-  public DereferencePolicy getDerefPolicy();
+  public DereferenceAliasesPolicy getDerefPolicy();
 
 
 
diff --git a/opendj3-server-dev/src/server/org/opends/server/types/operation/SearchReferenceSearchOperation.java b/opendj3-server-dev/src/server/org/opends/server/types/operation/SearchReferenceSearchOperation.java
index b3e849c..ec8454a 100644
--- a/opendj3-server-dev/src/server/org/opends/server/types/operation/SearchReferenceSearchOperation.java
+++ b/opendj3-server-dev/src/server/org/opends/server/types/operation/SearchReferenceSearchOperation.java
@@ -31,7 +31,7 @@
 import org.forgerock.opendj.ldap.ByteString;
 import org.forgerock.opendj.ldap.SearchScope;
 import org.opends.server.types.DN;
-import org.opends.server.types.DereferencePolicy;
+import org.forgerock.opendj.ldap.DereferenceAliasesPolicy;
 import org.opends.server.types.RawFilter;
 import org.opends.server.types.SearchFilter;
 
@@ -86,7 +86,7 @@
    * @return  The alias dereferencing policy for this search
    *          operation.
    */
-  public DereferencePolicy getDerefPolicy();
+  public DereferenceAliasesPolicy getDerefPolicy();
 
 
 
diff --git a/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/backends/jeb/TestBackendImpl.java b/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/backends/jeb/TestBackendImpl.java
index 2609b80..7f33026 100644
--- a/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/backends/jeb/TestBackendImpl.java
+++ b/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/backends/jeb/TestBackendImpl.java
@@ -29,6 +29,7 @@
 import java.util.*;
 
 import org.forgerock.opendj.ldap.ConditionResult;
+import org.forgerock.opendj.ldap.DereferenceAliasesPolicy;
 import org.forgerock.opendj.ldap.ModificationType;
 import org.forgerock.opendj.ldap.SearchScope;
 import org.opends.server.TestCaseUtils;
@@ -648,7 +649,7 @@
     InternalSearchOperation search =
         conn.processSearch(DN.valueOf("dc=test,dc=com"),
             SearchScope.WHOLE_SUBTREE,
-            DereferencePolicy.NEVER_DEREF_ALIASES,
+            DereferenceAliasesPolicy.NEVER,
             0,
             0,
             false,
@@ -662,7 +663,7 @@
 
     search = conn.processSearch(DN.valueOf("dc=test,dc=com"),
         SearchScope.WHOLE_SUBTREE,
-        DereferencePolicy.NEVER_DEREF_ALIASES,
+        DereferenceAliasesPolicy.NEVER,
         0,
         0,
         false,
@@ -683,7 +684,7 @@
 
     search = conn.processSearch(DN.valueOf("dc=test,dc=com"),
         SearchScope.WHOLE_SUBTREE,
-        DereferencePolicy.NEVER_DEREF_ALIASES,
+        DereferenceAliasesPolicy.NEVER,
         0,
         0,
         false,
@@ -703,7 +704,7 @@
 
     search = conn.processSearch(DN.valueOf("dc=test,dc=com"),
         SearchScope.WHOLE_SUBTREE,
-        DereferencePolicy.NEVER_DEREF_ALIASES,
+        DereferenceAliasesPolicy.NEVER,
         0,
         0,
         false,
@@ -722,7 +723,7 @@
 
     search = conn.processSearch(DN.valueOf("dc=test,dc=com"),
         SearchScope.WHOLE_SUBTREE,
-        DereferencePolicy.NEVER_DEREF_ALIASES,
+        DereferenceAliasesPolicy.NEVER,
         0,
         0,
         false,
@@ -741,7 +742,7 @@
 
     search = conn.processSearch(DN.valueOf("dc=test,dc=com"),
         SearchScope.WHOLE_SUBTREE,
-        DereferencePolicy.NEVER_DEREF_ALIASES,
+        DereferenceAliasesPolicy.NEVER,
         0,
         0,
         false,
@@ -1298,7 +1299,7 @@
     InternalSearchOperation search =
         conn.processSearch(DN.valueOf("dc=test,dc=com"),
                            SearchScope.SUBORDINATES,
-                           DereferencePolicy.NEVER_DEREF_ALIASES,
+                           DereferenceAliasesPolicy.NEVER,
                            0,
                            0,
                            false,
@@ -1476,7 +1477,7 @@
     InternalSearchOperation search =
         conn.processSearch(DN.valueOf("dc=test,dc=com"),
             SearchScope.SUBORDINATES,
-            DereferencePolicy.NEVER_DEREF_ALIASES,
+            DereferenceAliasesPolicy.NEVER,
             0,
             0,
             false,
diff --git a/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/backends/jeb/TestVLVIndex.java b/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/backends/jeb/TestVLVIndex.java
index 548291d..c6e54c9 100644
--- a/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/backends/jeb/TestVLVIndex.java
+++ b/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/backends/jeb/TestVLVIndex.java
@@ -31,6 +31,7 @@
 import java.util.TreeSet;
 
 import org.forgerock.opendj.ldap.ByteString;
+import org.forgerock.opendj.ldap.DereferenceAliasesPolicy;
 import org.forgerock.opendj.ldap.SearchScope;
 import org.opends.server.DirectoryServerTestCase;
 import org.opends.server.TestCaseUtils;
@@ -52,6 +53,7 @@
 import static org.opends.server.util.ServerConstants.*;
 import static org.testng.Assert.*;
 
+@SuppressWarnings("javadoc")
 public class TestVLVIndex extends DirectoryServerTestCase {
   private SortOrder sortOrder;
 
@@ -379,7 +381,7 @@
         new InternalSearchOperation(conn, InternalClientConnection.nextOperationID(),
                                     InternalClientConnection.nextMessageID(), requestControls,
                                     DN.valueOf("dc=vlvtest,dc=com"), SearchScope.WHOLE_SUBTREE,
-                                    DereferencePolicy.NEVER_DEREF_ALIASES, 0, 0, false,
+                                    DereferenceAliasesPolicy.NEVER, 0, 0, false,
                                     SearchFilter.createFilterFromString("(objectClass=*)"),
                                     null, null);
 
@@ -467,7 +469,7 @@
         new InternalSearchOperation(conn, InternalClientConnection.nextOperationID(),
                                     InternalClientConnection.nextMessageID(), requestControls,
                                     DN.valueOf("dc=vlvtest,dc=com"), SearchScope.WHOLE_SUBTREE,
-                                    DereferencePolicy.NEVER_DEREF_ALIASES, 0, 0, false,
+                                    DereferenceAliasesPolicy.NEVER, 0, 0, false,
                                     SearchFilter.createFilterFromString("(objectClass=*)"),
                                     null, null);
 
@@ -555,7 +557,7 @@
         new InternalSearchOperation(conn, InternalClientConnection.nextOperationID(),
                                     InternalClientConnection.nextMessageID(), requestControls,
                                     DN.valueOf("dc=vlvtest,dc=com"), SearchScope.WHOLE_SUBTREE,
-                                    DereferencePolicy.NEVER_DEREF_ALIASES, 0, 0, false,
+                                    DereferenceAliasesPolicy.NEVER, 0, 0, false,
                                     SearchFilter.createFilterFromString("(objectClass=*)"),
                                     null, null);
 
@@ -642,7 +644,7 @@
         new InternalSearchOperation(conn, InternalClientConnection.nextOperationID(),
                                     InternalClientConnection.nextMessageID(), requestControls,
                                     DN.valueOf("dc=vlvtest,dc=com"), SearchScope.WHOLE_SUBTREE,
-                                    DereferencePolicy.NEVER_DEREF_ALIASES, 0, 0, false,
+                                    DereferenceAliasesPolicy.NEVER, 0, 0, false,
                                     SearchFilter.createFilterFromString("(objectClass=*)"),
                                     null, null);
 
@@ -696,7 +698,7 @@
         new InternalSearchOperation(conn, InternalClientConnection.nextOperationID(),
                                     InternalClientConnection.nextMessageID(), requestControls,
                                     DN.valueOf("dc=vlvtest,dc=com"), SearchScope.WHOLE_SUBTREE,
-                                    DereferencePolicy.NEVER_DEREF_ALIASES, 0, 0, false,
+                                    DereferenceAliasesPolicy.NEVER, 0, 0, false,
                                     SearchFilter.createFilterFromString("(objectClass=*)"),
                                     null, null);
 
@@ -749,7 +751,7 @@
         new InternalSearchOperation(conn, InternalClientConnection.nextOperationID(),
                                     InternalClientConnection.nextMessageID(), requestControls,
                                     DN.valueOf("dc=vlvtest,dc=com"), SearchScope.WHOLE_SUBTREE,
-                                    DereferencePolicy.NEVER_DEREF_ALIASES, 0, 0, false,
+                                    DereferenceAliasesPolicy.NEVER, 0, 0, false,
                                     SearchFilter.createFilterFromString("(objectClass=*)"),
                                     null, null);
 
@@ -817,7 +819,7 @@
         new InternalSearchOperation(conn, InternalClientConnection.nextOperationID(),
                                     InternalClientConnection.nextMessageID(), requestControls,
                                     DN.valueOf("dc=vlvtest,dc=com"), SearchScope.WHOLE_SUBTREE,
-                                    DereferencePolicy.NEVER_DEREF_ALIASES, 0, 0, false,
+                                    DereferenceAliasesPolicy.NEVER, 0, 0, false,
                                     SearchFilter.createFilterFromString("(objectClass=*)"),
                                     null, null);
 
@@ -905,7 +907,7 @@
         new InternalSearchOperation(conn, InternalClientConnection.nextOperationID(),
                                     InternalClientConnection.nextMessageID(), requestControls,
                                     DN.valueOf("dc=vlvtest,dc=com"), SearchScope.WHOLE_SUBTREE,
-                                    DereferencePolicy.NEVER_DEREF_ALIASES, 0, 0, false,
+                                    DereferenceAliasesPolicy.NEVER, 0, 0, false,
                                     SearchFilter.createFilterFromString("(objectClass=*)"),
                                     null, null);
 
@@ -994,7 +996,7 @@
         new InternalSearchOperation(conn, InternalClientConnection.nextOperationID(),
                                     InternalClientConnection.nextMessageID(), requestControls,
                                     DN.valueOf("dc=vlvtest,dc=com"), SearchScope.WHOLE_SUBTREE,
-                                    DereferencePolicy.NEVER_DEREF_ALIASES, 0, 0, false,
+                                    DereferenceAliasesPolicy.NEVER, 0, 0, false,
                                     SearchFilter.createFilterFromString("(objectClass=*)"),
                                     null, null);
 
@@ -1083,7 +1085,7 @@
         new InternalSearchOperation(conn, InternalClientConnection.nextOperationID(),
                                     InternalClientConnection.nextMessageID(), requestControls,
                                     DN.valueOf("dc=vlvtest,dc=com"), SearchScope.WHOLE_SUBTREE,
-                                    DereferencePolicy.NEVER_DEREF_ALIASES, 0, 0, false,
+                                    DereferenceAliasesPolicy.NEVER, 0, 0, false,
                                     SearchFilter.createFilterFromString("(objectClass=*)"),
                                     null, null);
 
@@ -1172,7 +1174,7 @@
         new InternalSearchOperation(conn, InternalClientConnection.nextOperationID(),
                                     InternalClientConnection.nextMessageID(), requestControls,
                                     DN.valueOf("dc=vlvtest,dc=com"), SearchScope.WHOLE_SUBTREE,
-                                    DereferencePolicy.NEVER_DEREF_ALIASES, 0, 0, false,
+                                    DereferenceAliasesPolicy.NEVER, 0, 0, false,
                                     SearchFilter.createFilterFromString("(objectClass=*)"),
                                     null, null);
 
@@ -1261,7 +1263,7 @@
         new InternalSearchOperation(conn, InternalClientConnection.nextOperationID(),
                                     InternalClientConnection.nextMessageID(), requestControls,
                                     DN.valueOf("dc=vlvtest,dc=com"), SearchScope.WHOLE_SUBTREE,
-                                    DereferencePolicy.NEVER_DEREF_ALIASES, 0, 0, false,
+                                    DereferenceAliasesPolicy.NEVER, 0, 0, false,
                                     SearchFilter.createFilterFromString("(objectClass=*)"),
                                     null, null);
 
diff --git a/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/controls/PasswordPolicyControlTestCase.java b/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/controls/PasswordPolicyControlTestCase.java
index 9090851..f5cbbb4 100644
--- a/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/controls/PasswordPolicyControlTestCase.java
+++ b/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/controls/PasswordPolicyControlTestCase.java
@@ -37,7 +37,7 @@
 import org.opends.server.TestCaseUtils;
 import org.opends.server.protocols.ldap.*;
 import org.opends.server.types.Control;
-import org.opends.server.types.DereferencePolicy;
+import org.forgerock.opendj.ldap.DereferenceAliasesPolicy;
 import org.opends.server.types.RawAttribute;
 import org.opends.server.types.RawModification;
 import org.opends.server.util.StaticUtils;
@@ -1580,7 +1580,7 @@
       SearchRequestProtocolOp searchRequest =
            new SearchRequestProtocolOp(ByteString.valueOf("o=test"),
                                        SearchScope.BASE_OBJECT,
-                                       DereferencePolicy.NEVER_DEREF_ALIASES, 0,
+                                       DereferenceAliasesPolicy.NEVER, 0,
                                        0, false,
                                        LDAPFilter.decode("(objectClass=*)"),
                                        new LinkedHashSet<String>());
diff --git a/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/controls/PersistentSearchControlTest.java b/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/controls/PersistentSearchControlTest.java
index 69d8c40..ea2ffde 100644
--- a/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/controls/PersistentSearchControlTest.java
+++ b/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/controls/PersistentSearchControlTest.java
@@ -33,6 +33,7 @@
 import org.forgerock.opendj.io.ASN1Writer;
 import org.forgerock.opendj.ldap.ByteString;
 import org.forgerock.opendj.ldap.ByteStringBuilder;
+import org.forgerock.opendj.ldap.DereferenceAliasesPolicy;
 import org.forgerock.opendj.ldap.ModificationType;
 import org.forgerock.opendj.ldap.SearchScope;
 import org.opends.server.TestCaseUtils;
@@ -556,7 +557,7 @@
       controls.add(persSearchControl);
     final InternalSearchOperation search =
         conn.processSearch("o=test", SearchScope.BASE_OBJECT,
-            DereferencePolicy.NEVER_DEREF_ALIASES, 0, // Size limit
+            DereferenceAliasesPolicy.NEVER, 0, // Size limit
             0, // Time limit
             true, // Types only
             "(objectClass=*)", attributes, controls, null);
diff --git a/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/controls/ServerSideSortControlTestCase.java b/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/controls/ServerSideSortControlTestCase.java
index 72e8261..f7893cc 100644
--- a/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/controls/ServerSideSortControlTestCase.java
+++ b/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/controls/ServerSideSortControlTestCase.java
@@ -44,7 +44,7 @@
 import org.opends.server.types.AttributeType;
 import org.opends.server.types.Control;
 import org.opends.server.types.DN;
-import org.opends.server.types.DereferencePolicy;
+import org.forgerock.opendj.ldap.DereferenceAliasesPolicy;
 import org.opends.server.types.Entry;
 import org.forgerock.opendj.ldap.ResultCode;
 import org.opends.server.types.SearchFilter;
@@ -321,7 +321,7 @@
          new InternalSearchOperation(conn, InternalClientConnection.nextOperationID(),
                   InternalClientConnection.nextMessageID(), requestControls,
                   DN.valueOf("dc=example,dc=com"), SearchScope.WHOLE_SUBTREE,
-                  DereferencePolicy.NEVER_DEREF_ALIASES, 0, 0, false,
+                  DereferenceAliasesPolicy.NEVER, 0, 0, false,
                   SearchFilter.createFilterFromString("(objectClass=person)"),
                   null, null);
 
@@ -392,7 +392,7 @@
          new InternalSearchOperation(conn, InternalClientConnection.nextOperationID(),
                   InternalClientConnection.nextMessageID(), requestControls,
                   DN.valueOf("dc=example,dc=com"), SearchScope.WHOLE_SUBTREE,
-                  DereferencePolicy.NEVER_DEREF_ALIASES, 0, 0, false,
+                  DereferenceAliasesPolicy.NEVER, 0, 0, false,
                   SearchFilter.createFilterFromString("(objectClass=person)"),
                   null, null);
 
@@ -461,7 +461,7 @@
          new InternalSearchOperation(conn, InternalClientConnection.nextOperationID(),
                   InternalClientConnection.nextMessageID(), requestControls,
                   DN.valueOf("dc=example,dc=com"), SearchScope.WHOLE_SUBTREE,
-                  DereferencePolicy.NEVER_DEREF_ALIASES, 0, 0, false,
+                  DereferenceAliasesPolicy.NEVER, 0, 0, false,
                   SearchFilter.createFilterFromString("(objectClass=person)"),
                   null, null);
 
@@ -532,7 +532,7 @@
          new InternalSearchOperation(conn, InternalClientConnection.nextOperationID(),
                   InternalClientConnection.nextMessageID(), requestControls,
                   DN.valueOf("dc=example,dc=com"), SearchScope.WHOLE_SUBTREE,
-                  DereferencePolicy.NEVER_DEREF_ALIASES, 0, 0, false,
+                  DereferenceAliasesPolicy.NEVER, 0, 0, false,
                   SearchFilter.createFilterFromString("(objectClass=person)"),
                   null, null);
 
@@ -601,7 +601,7 @@
          new InternalSearchOperation(conn, InternalClientConnection.nextOperationID(),
                   InternalClientConnection.nextMessageID(), requestControls,
                   DN.valueOf("dc=example,dc=com"), SearchScope.WHOLE_SUBTREE,
-                  DereferencePolicy.NEVER_DEREF_ALIASES, 0, 0, false,
+                  DereferenceAliasesPolicy.NEVER, 0, 0, false,
                   SearchFilter.createFilterFromString("(objectClass=person)"),
                   null, null);
 
@@ -670,7 +670,7 @@
          new InternalSearchOperation(conn, InternalClientConnection.nextOperationID(),
                   InternalClientConnection.nextMessageID(), requestControls,
                   DN.valueOf("dc=example,dc=com"), SearchScope.WHOLE_SUBTREE,
-                  DereferencePolicy.NEVER_DEREF_ALIASES, 0, 0, false,
+                  DereferenceAliasesPolicy.NEVER, 0, 0, false,
                   SearchFilter.createFilterFromString("(objectClass=person)"),
                   null, null);
 
@@ -739,7 +739,7 @@
          new InternalSearchOperation(conn, InternalClientConnection.nextOperationID(),
                   InternalClientConnection.nextMessageID(), requestControls,
                   DN.valueOf("dc=example,dc=com"), SearchScope.WHOLE_SUBTREE,
-                  DereferencePolicy.NEVER_DEREF_ALIASES, 0, 0, false,
+                  DereferenceAliasesPolicy.NEVER, 0, 0, false,
                   SearchFilter.createFilterFromString("(objectClass=person)"),
                   null, null);
 
@@ -772,7 +772,7 @@
          new InternalSearchOperation(conn, InternalClientConnection.nextOperationID(),
                   InternalClientConnection.nextMessageID(), requestControls,
                   DN.valueOf("dc=example,dc=com"), SearchScope.WHOLE_SUBTREE,
-                  DereferencePolicy.NEVER_DEREF_ALIASES, 0, 0, false,
+                  DereferenceAliasesPolicy.NEVER, 0, 0, false,
                   SearchFilter.createFilterFromString("(objectClass=person)"),
                   null, null);
 
@@ -803,7 +803,7 @@
          new InternalSearchOperation(conn, InternalClientConnection.nextOperationID(),
                   InternalClientConnection.nextMessageID(), requestControls,
                   DN.valueOf("dc=example,dc=com"), SearchScope.WHOLE_SUBTREE,
-                  DereferencePolicy.NEVER_DEREF_ALIASES, 0, 0, false,
+                  DereferenceAliasesPolicy.NEVER, 0, 0, false,
                   SearchFilter.createFilterFromString("(objectClass=person)"),
                   null, null);
 
diff --git a/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/controls/VLVControlTestCase.java b/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/controls/VLVControlTestCase.java
index f3283fb..b2a60c5 100644
--- a/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/controls/VLVControlTestCase.java
+++ b/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/controls/VLVControlTestCase.java
@@ -34,6 +34,7 @@
 import org.forgerock.opendj.io.ASN1Writer;
 import org.forgerock.opendj.ldap.ByteString;
 import org.forgerock.opendj.ldap.ByteStringBuilder;
+import org.forgerock.opendj.ldap.DereferenceAliasesPolicy;
 import org.forgerock.opendj.ldap.SearchScope;
 import org.opends.server.TestCaseUtils;
 import org.opends.server.core.DirectoryServer;
@@ -63,31 +64,31 @@
   private AttributeType snType;
 
   // The DN for "Aaccf Johnson"
-  DN aaccfJohnsonDN;
+  private DN aaccfJohnsonDN;
 
   // The DN for "Aaron Zimmerman"
-  DN aaronZimmermanDN;
+  private DN aaronZimmermanDN;
 
   // The DN for "Albert Smith"
-  DN albertSmithDN;
+  private DN albertSmithDN;
 
   // The DN for "Albert Zimmerman"
-  DN albertZimmermanDN;
+  private DN albertZimmermanDN;
 
   // The DN for "lowercase mcgee"
-  DN lowercaseMcGeeDN;
+  private DN lowercaseMcGeeDN;
 
   // The DN for "Mararet Jones"
-  DN margaretJonesDN;
+  private DN margaretJonesDN;
 
   // The DN for "Mary Jones"
-  DN maryJonesDN;
+  private DN maryJonesDN;
 
   // The DN for "Sam Zweck"
-  DN samZweckDN;
+  private DN samZweckDN;
 
   // The DN for "Zorro"
-  DN zorroDN;
+  private DN zorroDN;
 
 
 
@@ -507,7 +508,7 @@
          new InternalSearchOperation(conn, InternalClientConnection.nextOperationID(),
                   InternalClientConnection.nextMessageID(), requestControls,
                   DN.valueOf("dc=example,dc=com"), SearchScope.WHOLE_SUBTREE,
-                  DereferencePolicy.NEVER_DEREF_ALIASES, 0, 0, false,
+                  DereferenceAliasesPolicy.NEVER, 0, 0, false,
                   SearchFilter.createFilterFromString("(objectClass=person)"),
                   null, null);
 
@@ -600,7 +601,7 @@
          new InternalSearchOperation(conn, InternalClientConnection.nextOperationID(),
                   InternalClientConnection.nextMessageID(), requestControls,
                   DN.valueOf("dc=example,dc=com"), SearchScope.WHOLE_SUBTREE,
-                  DereferencePolicy.NEVER_DEREF_ALIASES, 0, 0, false,
+                  DereferenceAliasesPolicy.NEVER, 0, 0, false,
                   SearchFilter.createFilterFromString("(objectClass=person)"),
                   null, null);
 
@@ -693,7 +694,7 @@
          new InternalSearchOperation(conn, InternalClientConnection.nextOperationID(),
                   InternalClientConnection.nextMessageID(), requestControls,
                   DN.valueOf("dc=example,dc=com"), SearchScope.WHOLE_SUBTREE,
-                  DereferencePolicy.NEVER_DEREF_ALIASES, 0, 0, false,
+                  DereferenceAliasesPolicy.NEVER, 0, 0, false,
                   SearchFilter.createFilterFromString("(objectClass=person)"),
                   null, null);
 
@@ -785,7 +786,7 @@
          new InternalSearchOperation(conn, InternalClientConnection.nextOperationID(),
                   InternalClientConnection.nextMessageID(), requestControls,
                   DN.valueOf("dc=example,dc=com"), SearchScope.WHOLE_SUBTREE,
-                  DereferencePolicy.NEVER_DEREF_ALIASES, 0, 0, false,
+                  DereferenceAliasesPolicy.NEVER, 0, 0, false,
                   SearchFilter.createFilterFromString("(objectClass=person)"),
                   null, null);
 
@@ -843,7 +844,7 @@
          new InternalSearchOperation(conn, InternalClientConnection.nextOperationID(),
                   InternalClientConnection.nextMessageID(), requestControls,
                   DN.valueOf("dc=example,dc=com"), SearchScope.WHOLE_SUBTREE,
-                  DereferencePolicy.NEVER_DEREF_ALIASES, 0, 0, false,
+                  DereferenceAliasesPolicy.NEVER, 0, 0, false,
                   SearchFilter.createFilterFromString("(objectClass=person)"),
                   null, null);
 
@@ -900,7 +901,7 @@
          new InternalSearchOperation(conn, InternalClientConnection.nextOperationID(),
                   InternalClientConnection.nextMessageID(), requestControls,
                   DN.valueOf("dc=example,dc=com"), SearchScope.WHOLE_SUBTREE,
-                  DereferencePolicy.NEVER_DEREF_ALIASES, 0, 0, false,
+                  DereferenceAliasesPolicy.NEVER, 0, 0, false,
                   SearchFilter.createFilterFromString("(objectClass=person)"),
                   null, null);
 
@@ -972,7 +973,7 @@
          new InternalSearchOperation(conn, InternalClientConnection.nextOperationID(),
                   InternalClientConnection.nextMessageID(), requestControls,
                   DN.valueOf("dc=example,dc=com"), SearchScope.WHOLE_SUBTREE,
-                  DereferencePolicy.NEVER_DEREF_ALIASES, 0, 0, false,
+                  DereferenceAliasesPolicy.NEVER, 0, 0, false,
                   SearchFilter.createFilterFromString("(objectClass=person)"),
                   null, null);
 
@@ -1064,7 +1065,7 @@
          new InternalSearchOperation(conn, InternalClientConnection.nextOperationID(),
                   InternalClientConnection.nextMessageID(), requestControls,
                   DN.valueOf("dc=example,dc=com"), SearchScope.WHOLE_SUBTREE,
-                  DereferencePolicy.NEVER_DEREF_ALIASES, 0, 0, false,
+                  DereferenceAliasesPolicy.NEVER, 0, 0, false,
                   SearchFilter.createFilterFromString("(objectClass=person)"),
                   null, null);
 
@@ -1158,7 +1159,7 @@
          new InternalSearchOperation(conn, InternalClientConnection.nextOperationID(),
                   InternalClientConnection.nextMessageID(), requestControls,
                   DN.valueOf("dc=example,dc=com"), SearchScope.WHOLE_SUBTREE,
-                  DereferencePolicy.NEVER_DEREF_ALIASES, 0, 0, false,
+                  DereferenceAliasesPolicy.NEVER, 0, 0, false,
                   SearchFilter.createFilterFromString("(objectClass=person)"),
                   null, null);
 
@@ -1252,7 +1253,7 @@
          new InternalSearchOperation(conn, InternalClientConnection.nextOperationID(),
                   InternalClientConnection.nextMessageID(), requestControls,
                   DN.valueOf("dc=example,dc=com"), SearchScope.WHOLE_SUBTREE,
-                  DereferencePolicy.NEVER_DEREF_ALIASES, 0, 0, false,
+                  DereferenceAliasesPolicy.NEVER, 0, 0, false,
                   SearchFilter.createFilterFromString("(objectClass=person)"),
                   null, null);
 
@@ -1346,7 +1347,7 @@
          new InternalSearchOperation(conn, InternalClientConnection.nextOperationID(),
                   InternalClientConnection.nextMessageID(), requestControls,
                   DN.valueOf("dc=example,dc=com"), SearchScope.WHOLE_SUBTREE,
-                  DereferencePolicy.NEVER_DEREF_ALIASES, 0, 0, false,
+                  DereferenceAliasesPolicy.NEVER, 0, 0, false,
                   SearchFilter.createFilterFromString("(objectClass=person)"),
                   null, null);
 
@@ -1440,7 +1441,7 @@
          new InternalSearchOperation(conn, InternalClientConnection.nextOperationID(),
                   InternalClientConnection.nextMessageID(), requestControls,
                   DN.valueOf("dc=example,dc=com"), SearchScope.WHOLE_SUBTREE,
-                  DereferencePolicy.NEVER_DEREF_ALIASES, 0, 0, false,
+                  DereferenceAliasesPolicy.NEVER, 0, 0, false,
                   SearchFilter.createFilterFromString("(objectClass=person)"),
                   null, null);
 
diff --git a/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/core/AbandonOperationTestCase.java b/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/core/AbandonOperationTestCase.java
index a0934b0..a42c9bb 100644
--- a/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/core/AbandonOperationTestCase.java
+++ b/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/core/AbandonOperationTestCase.java
@@ -32,6 +32,7 @@
 
 import org.forgerock.i18n.LocalizableMessage;
 import org.forgerock.opendj.ldap.ByteString;
+import org.forgerock.opendj.ldap.DereferenceAliasesPolicy;
 import org.forgerock.opendj.ldap.ModificationType;
 import org.forgerock.opendj.ldap.SearchScope;
 import org.opends.server.TestCaseUtils;
@@ -722,7 +723,7 @@
     SearchRequestProtocolOp searchRequest =
          new SearchRequestProtocolOp(ByteString.valueOf("o=test"),
                                      SearchScope.BASE_OBJECT,
-                                     DereferencePolicy.NEVER_DEREF_ALIASES, 0,
+                                     DereferenceAliasesPolicy.NEVER, 0,
                                      0, false,
                                      LDAPFilter.decode("(match=false)"),
                                      new LinkedHashSet<String>());
diff --git a/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/core/GroupManagerTestCase.java b/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/core/GroupManagerTestCase.java
index c444396..303ef5d 100644
--- a/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/core/GroupManagerTestCase.java
+++ b/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/core/GroupManagerTestCase.java
@@ -49,7 +49,7 @@
 import org.opends.server.tools.LDAPModify;
 import org.opends.server.types.Attribute;
 import org.opends.server.types.Attributes;
-import org.opends.server.types.DereferencePolicy;
+import org.forgerock.opendj.ldap.DereferenceAliasesPolicy;
 import org.opends.server.types.DirectoryException;
 import org.opends.server.types.DN;
 import org.opends.server.types.Entry;
@@ -1418,7 +1418,7 @@
          new InternalSearchOperation(conn0, InternalClientConnection.nextOperationID(),
                   InternalClientConnection.nextMessageID(), null, DN.rootDN(),
                   SearchScope.BASE_OBJECT,
-                  DereferencePolicy.NEVER_DEREF_ALIASES, 0, 0, false,
+                  DereferenceAliasesPolicy.NEVER, 0, 0, false,
                   SearchFilter.createFilterFromString("(objectClass=*)"), null,
                   null);
 
@@ -1444,7 +1444,7 @@
          new InternalSearchOperation(conn1, InternalClientConnection.nextOperationID(),
                   InternalClientConnection.nextMessageID(), null, DN.rootDN(),
                   SearchScope.BASE_OBJECT,
-                  DereferencePolicy.NEVER_DEREF_ALIASES, 0, 0,  false,
+                  DereferenceAliasesPolicy.NEVER, 0, 0,  false,
                   SearchFilter.createFilterFromString("(objectClass=*)"), null,
                   null);
 
@@ -1474,7 +1474,7 @@
          new InternalSearchOperation(conn2, InternalClientConnection.nextOperationID(),
                   InternalClientConnection.nextMessageID(), null, DN.rootDN(),
                   SearchScope.BASE_OBJECT,
-                  DereferencePolicy.NEVER_DEREF_ALIASES, 0, 0,  false,
+                  DereferenceAliasesPolicy.NEVER, 0, 0,  false,
                   SearchFilter.createFilterFromString("(objectClass=*)"), null,
                   null);
 
@@ -1504,7 +1504,7 @@
          new InternalSearchOperation(conn3, InternalClientConnection.nextOperationID(),
                   InternalClientConnection.nextMessageID(), null, DN.rootDN(),
                   SearchScope.BASE_OBJECT,
-                  DereferencePolicy.NEVER_DEREF_ALIASES, 0, 0,  false,
+                  DereferenceAliasesPolicy.NEVER, 0, 0,  false,
                   SearchFilter.createFilterFromString("(objectClass=*)"), null,
                   null);
 
@@ -2309,14 +2309,6 @@
     // group operations correctly.
     DN userDN = DN.valueOf("uid=test1,ou=people,dc=example,dc=com");
     InternalClientConnection conn = new InternalClientConnection(userDN);
-    InternalSearchOperation searchOperation =
-         new InternalSearchOperation(conn, InternalClientConnection.nextOperationID(),
-                  InternalClientConnection.nextMessageID(), null, DN.rootDN(),
-                  SearchScope.BASE_OBJECT,
-                  DereferencePolicy.NEVER_DEREF_ALIASES, 0, 0, false,
-                  SearchFilter.createFilterFromString("(objectClass=*)"), null,
-                  null);
-
     assertTrue(conn.isMemberOf(group1, null));
     assertTrue(conn.isMemberOf(group2, null));
     assertTrue(conn.isMemberOf(group3, null));
@@ -2335,14 +2327,6 @@
 
     InternalClientConnection conn1 =
             new InternalClientConnection(userDN);
-    searchOperation =
-         new InternalSearchOperation(conn1, InternalClientConnection.nextOperationID(),
-                  InternalClientConnection.nextMessageID(), null, DN.rootDN(),
-                  SearchScope.BASE_OBJECT,
-                  DereferencePolicy.NEVER_DEREF_ALIASES, 0, 0, false,
-                  SearchFilter.createFilterFromString("(objectClass=*)"), null,
-                  null);
-
     group1 = groupManager.getGroupInstance(
             DN.valueOf("cn=group1,ou=moregroups,dc=example,dc=com"));
     assertNotNull(group1);
@@ -2385,14 +2369,6 @@
     // group operations correctly.
     DN userDN = DN.valueOf("uid=test1,ou=people,dc=example,dc=com");
     InternalClientConnection conn = new InternalClientConnection(userDN);
-    InternalSearchOperation searchOperation =
-         new InternalSearchOperation(conn, InternalClientConnection.nextOperationID(),
-                  InternalClientConnection.nextMessageID(), null, DN.rootDN(),
-                  SearchScope.BASE_OBJECT,
-                  DereferencePolicy.NEVER_DEREF_ALIASES, 0, 0, false,
-                  SearchFilter.createFilterFromString("(objectClass=*)"), null,
-                  null);
-
     assertTrue(conn.isMemberOf(group1, null));
     assertTrue(conn.isMemberOf(group2, null));
     assertTrue(conn.isMemberOf(group3, null));
@@ -2415,14 +2391,6 @@
 
     InternalClientConnection conn1 =
             new InternalClientConnection(userDN);
-    searchOperation =
-         new InternalSearchOperation(conn1, InternalClientConnection.nextOperationID(),
-                  InternalClientConnection.nextMessageID(), null, DN.rootDN(),
-                  SearchScope.BASE_OBJECT,
-                  DereferencePolicy.NEVER_DEREF_ALIASES, 0, 0, false,
-                  SearchFilter.createFilterFromString("(objectClass=*)"), null,
-                  null);
-
     group1 = groupManager.getGroupInstance(
             DN.valueOf("cn=group1,ou=moregroups,dc=example,dc=com"));
     assertNotNull(group1);
diff --git a/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/core/ModifyOperationTestCase.java b/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/core/ModifyOperationTestCase.java
index 358616d..4795fd3 100644
--- a/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/core/ModifyOperationTestCase.java
+++ b/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/core/ModifyOperationTestCase.java
@@ -34,6 +34,7 @@
 
 import org.forgerock.i18n.LocalizableMessage;
 import org.forgerock.opendj.ldap.ByteString;
+import org.forgerock.opendj.ldap.DereferenceAliasesPolicy;
 import org.forgerock.opendj.ldap.ModificationType;
 import org.forgerock.opendj.ldap.SearchScope;
 import org.opends.server.TestCaseUtils;
@@ -1435,7 +1436,7 @@
               new ArrayList<Control>(),
               ByteString.valueOf("uid=test.user," + baseDN),
               SearchScope.WHOLE_SUBTREE,
-              DereferencePolicy.NEVER_DEREF_ALIASES,
+              DereferenceAliasesPolicy.NEVER,
               Integer.MAX_VALUE,
               Integer.MAX_VALUE,
               false,
@@ -1487,7 +1488,7 @@
               new ArrayList<Control>(),
               ByteString.valueOf(baseDN),
               SearchScope.WHOLE_SUBTREE,
-              DereferencePolicy.NEVER_DEREF_ALIASES,
+              DereferenceAliasesPolicy.NEVER,
               Integer.MAX_VALUE,
               Integer.MAX_VALUE,
               false,
@@ -1542,7 +1543,7 @@
               new ArrayList<Control>(),
               ByteString.valueOf(baseDN),
               SearchScope.WHOLE_SUBTREE,
-              DereferencePolicy.NEVER_DEREF_ALIASES,
+              DereferenceAliasesPolicy.NEVER,
               Integer.MAX_VALUE,
               Integer.MAX_VALUE,
               false,
diff --git a/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/core/SearchOperationTestCase.java b/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/core/SearchOperationTestCase.java
index 67b876c..a834b22c 100644
--- a/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/core/SearchOperationTestCase.java
+++ b/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/core/SearchOperationTestCase.java
@@ -32,6 +32,7 @@
 
 import org.forgerock.opendj.ldap.ByteString;
 import org.forgerock.opendj.ldap.DecodeException;
+import org.forgerock.opendj.ldap.DereferenceAliasesPolicy;
 import org.forgerock.opendj.ldap.SearchScope;
 import org.opends.server.TestCaseUtils;
 import org.opends.server.controls.MatchedValuesControl;
@@ -232,7 +233,7 @@
                              new ArrayList<Control>(),
                              ByteString.valueOf(BASE),
                              SearchScope.WHOLE_SUBTREE,
-                             DereferencePolicy.NEVER_DEREF_ALIASES,
+                             DereferenceAliasesPolicy.NEVER,
                              -1,
                              -1,
                              false,
@@ -388,7 +389,7 @@
               new ArrayList<Control>(),
               ByteString.valueOf(BASE),
               SearchScope.WHOLE_SUBTREE,
-              DereferencePolicy.NEVER_DEREF_ALIASES,
+              DereferenceAliasesPolicy.NEVER,
               Integer.MAX_VALUE,
               Integer.MAX_VALUE,
               false,
@@ -418,7 +419,7 @@
               new ArrayList<Control>(),
               ByteString.valueOf(BASE),
               SearchScope.WHOLE_SUBTREE,
-              DereferencePolicy.NEVER_DEREF_ALIASES,
+              DereferenceAliasesPolicy.NEVER,
               Integer.MAX_VALUE,
               Integer.MAX_VALUE,
               false,
@@ -451,7 +452,7 @@
               new ArrayList<Control>(),
               ByteString.valueOf(BASE),
               SearchScope.WHOLE_SUBTREE,
-              DereferencePolicy.NEVER_DEREF_ALIASES,
+              DereferenceAliasesPolicy.NEVER,
               Integer.MAX_VALUE,
               Integer.MAX_VALUE,
               true,
@@ -483,7 +484,7 @@
               new ArrayList<Control>(),
               ByteString.valueOf(BASE),
               SearchScope.WHOLE_SUBTREE,
-              DereferencePolicy.NEVER_DEREF_ALIASES,
+              DereferenceAliasesPolicy.NEVER,
               Integer.MAX_VALUE,
               Integer.MAX_VALUE,
               false,
@@ -515,7 +516,7 @@
               new ArrayList<Control>(),
               ByteString.valueOf(BASE),
               SearchScope.WHOLE_SUBTREE,
-              DereferencePolicy.NEVER_DEREF_ALIASES,
+              DereferenceAliasesPolicy.NEVER,
               Integer.MAX_VALUE,
               Integer.MAX_VALUE,
               false,
@@ -550,7 +551,7 @@
               new ArrayList<Control>(),
               ByteString.valueOf(BASE),
               SearchScope.WHOLE_SUBTREE,
-              DereferencePolicy.NEVER_DEREF_ALIASES,
+              DereferenceAliasesPolicy.NEVER,
               Integer.MAX_VALUE,
               Integer.MAX_VALUE,
               false,
@@ -586,7 +587,7 @@
               new ArrayList<Control>(),
               ByteString.valueOf(BASE),
               SearchScope.WHOLE_SUBTREE,
-              DereferencePolicy.NEVER_DEREF_ALIASES,
+              DereferenceAliasesPolicy.NEVER,
               Integer.MAX_VALUE,
               Integer.MAX_VALUE,
               false,
@@ -607,7 +608,7 @@
          new SearchRequestProtocolOp(
               ByteString.valueOf(BASE),
               SearchScope.WHOLE_SUBTREE,
-              DereferencePolicy.NEVER_DEREF_ALIASES,
+              DereferenceAliasesPolicy.NEVER,
               Integer.MAX_VALUE,
               Integer.MAX_VALUE,
               false,
@@ -627,7 +628,7 @@
          new SearchRequestProtocolOp(
               ByteString.valueOf(BASE),
               SearchScope.WHOLE_SUBTREE,
-              DereferencePolicy.NEVER_DEREF_ALIASES,
+              DereferenceAliasesPolicy.NEVER,
               Integer.MAX_VALUE,
               Integer.MAX_VALUE,
               false,
@@ -646,7 +647,7 @@
          new SearchRequestProtocolOp(
               ByteString.valueOf(BASE),
               SearchScope.WHOLE_SUBTREE,
-              DereferencePolicy.NEVER_DEREF_ALIASES,
+              DereferenceAliasesPolicy.NEVER,
               Integer.MAX_VALUE,
               Integer.MAX_VALUE,
               true,
@@ -671,7 +672,7 @@
          new SearchRequestProtocolOp(
               ByteString.valueOf(BASE),
               SearchScope.WHOLE_SUBTREE,
-              DereferencePolicy.NEVER_DEREF_ALIASES,
+              DereferenceAliasesPolicy.NEVER,
               Integer.MAX_VALUE,
               Integer.MAX_VALUE,
               true,
@@ -696,7 +697,7 @@
          new SearchRequestProtocolOp(
               ByteString.valueOf(BASE),
               SearchScope.WHOLE_SUBTREE,
-              DereferencePolicy.NEVER_DEREF_ALIASES,
+              DereferenceAliasesPolicy.NEVER,
               Integer.MAX_VALUE,
               Integer.MAX_VALUE,
               false,
@@ -721,7 +722,7 @@
          new SearchRequestProtocolOp(
               ByteString.valueOf(BASE),
               SearchScope.WHOLE_SUBTREE,
-              DereferencePolicy.NEVER_DEREF_ALIASES,
+              DereferenceAliasesPolicy.NEVER,
               Integer.MAX_VALUE,
               Integer.MAX_VALUE,
               true,
@@ -746,7 +747,7 @@
          new SearchRequestProtocolOp(
               ByteString.valueOf(BASE),
               SearchScope.WHOLE_SUBTREE,
-              DereferencePolicy.NEVER_DEREF_ALIASES,
+              DereferenceAliasesPolicy.NEVER,
               Integer.MAX_VALUE,
               Integer.MAX_VALUE,
               false,
@@ -768,7 +769,7 @@
          new SearchRequestProtocolOp(
               ByteString.valueOf(BASE),
               SearchScope.WHOLE_SUBTREE,
-              DereferencePolicy.NEVER_DEREF_ALIASES,
+              DereferenceAliasesPolicy.NEVER,
               Integer.MAX_VALUE,
               Integer.MAX_VALUE,
               false,
@@ -791,7 +792,7 @@
          new SearchRequestProtocolOp(
               ByteString.valueOf(BASE),
               SearchScope.WHOLE_SUBTREE,
-              DereferencePolicy.NEVER_DEREF_ALIASES,
+              DereferenceAliasesPolicy.NEVER,
               Integer.MAX_VALUE,
               Integer.MAX_VALUE,
               true,
@@ -817,7 +818,7 @@
          new SearchRequestProtocolOp(
               ByteString.valueOf(BASE),
               SearchScope.WHOLE_SUBTREE,
-              DereferencePolicy.NEVER_DEREF_ALIASES,
+              DereferenceAliasesPolicy.NEVER,
               Integer.MAX_VALUE,
               Integer.MAX_VALUE,
               false,
@@ -848,7 +849,7 @@
          new SearchRequestProtocolOp(
               ByteString.valueOf(BASE),
               SearchScope.WHOLE_SUBTREE,
-              DereferencePolicy.NEVER_DEREF_ALIASES,
+              DereferenceAliasesPolicy.NEVER,
               Integer.MAX_VALUE,
               Integer.MAX_VALUE,
               false,
@@ -885,7 +886,7 @@
               new ArrayList<Control>(),
               ByteString.valueOf(BASE),
               SearchScope.WHOLE_SUBTREE,
-              DereferencePolicy.NEVER_DEREF_ALIASES,
+              DereferenceAliasesPolicy.NEVER,
               Integer.MAX_VALUE,
               Integer.MAX_VALUE,
               false,
@@ -933,7 +934,7 @@
               new ArrayList<Control>(),
               ByteString.valueOf(BASE),
               SearchScope.SINGLE_LEVEL,
-              DereferencePolicy.NEVER_DEREF_ALIASES,
+              DereferenceAliasesPolicy.NEVER,
               Integer.MAX_VALUE,
               Integer.MAX_VALUE,
               false,
@@ -971,7 +972,7 @@
               new ArrayList<Control>(),
               ByteString.valueOf(BASE),
               SearchScope.WHOLE_SUBTREE,
-              DereferencePolicy.NEVER_DEREF_ALIASES,
+              DereferenceAliasesPolicy.NEVER,
               Integer.MAX_VALUE,
               Integer.MAX_VALUE,
               false,
@@ -1001,7 +1002,7 @@
               Collections.singletonList((Control)new SubentriesControl(true, true)),
               ByteString.valueOf(BASE),
               SearchScope.WHOLE_SUBTREE,
-              DereferencePolicy.NEVER_DEREF_ALIASES,
+              DereferenceAliasesPolicy.NEVER,
               Integer.MAX_VALUE,
               Integer.MAX_VALUE,
               false,
@@ -1028,7 +1029,7 @@
         InternalClientConnection.nextMessageID(),
         Collections.singletonList((Control) new LDAPControl(
             OID_LDUP_SUBENTRIES, true)), ByteString.valueOf(BASE),
-        SearchScope.WHOLE_SUBTREE, DereferencePolicy.NEVER_DEREF_ALIASES,
+        SearchScope.WHOLE_SUBTREE, DereferenceAliasesPolicy.NEVER,
         Integer.MAX_VALUE, Integer.MAX_VALUE, false,
         LDAPFilter.decode("(objectclass=*)"), null, null);
 
@@ -1055,7 +1056,7 @@
               new ArrayList<Control>(),
               ByteString.valueOf(BASE),
               SearchScope.WHOLE_SUBTREE,
-              DereferencePolicy.NEVER_DEREF_ALIASES,
+              DereferenceAliasesPolicy.NEVER,
               Integer.MAX_VALUE,
               Integer.MAX_VALUE,
               false,
@@ -1076,7 +1077,7 @@
               new ArrayList<Control>(),
               ByteString.valueOf(BASE),
               SearchScope.WHOLE_SUBTREE,
-              DereferencePolicy.NEVER_DEREF_ALIASES,
+              DereferenceAliasesPolicy.NEVER,
               Integer.MAX_VALUE,
               Integer.MAX_VALUE,
               false,
@@ -1106,7 +1107,7 @@
               new ArrayList<Control>(),
               ByteString.valueOf(BASE),
               SearchScope.WHOLE_SUBTREE,
-              DereferencePolicy.NEVER_DEREF_ALIASES,
+              DereferenceAliasesPolicy.NEVER,
               Integer.MAX_VALUE,
               Integer.MAX_VALUE,
               false,
@@ -1137,7 +1138,7 @@
               new ArrayList<Control>(),
               ByteString.valueOf("ou=nonexistent,o=test"),
               SearchScope.WHOLE_SUBTREE,
-              DereferencePolicy.NEVER_DEREF_ALIASES,
+              DereferenceAliasesPolicy.NEVER,
               Integer.MAX_VALUE,
               Integer.MAX_VALUE,
               false,
@@ -1288,7 +1289,7 @@
 
     InternalSearchOperation search =
         conn.processSearch(userDNString, SearchScope.BASE_OBJECT,
-            DereferencePolicy.NEVER_DEREF_ALIASES, 0, // Size limit
+            DereferenceAliasesPolicy.NEVER, 0, // Size limit
             0, // Time limit
             typesOnly, // Types only
             "(objectClass=*)", attributes, controls, null);
@@ -1490,7 +1491,7 @@
 
     InternalSearchOperation search =
       conn.processSearch(userDNString, SearchScope.BASE_OBJECT,
-          DereferencePolicy.NEVER_DEREF_ALIASES, 0, // Size limit
+          DereferenceAliasesPolicy.NEVER, 0, // Size limit
           0, // Time limit
           false, // Types only
           "(objectClass=*)", attributes);
@@ -1561,7 +1562,7 @@
       new SearchRequestProtocolOp(
           ByteString.valueOf(userDNString),
           SearchScope.BASE_OBJECT,
-          DereferencePolicy.NEVER_DEREF_ALIASES,
+          DereferenceAliasesPolicy.NEVER,
           Integer.MAX_VALUE,
           Integer.MAX_VALUE,
           false,
@@ -1637,7 +1638,7 @@
               new ArrayList<Control>(),
               ByteString.valueOf("dc=example,dc=com"),
               SearchScope.SINGLE_LEVEL,
-              DereferencePolicy.NEVER_DEREF_ALIASES,
+              DereferenceAliasesPolicy.NEVER,
               Integer.MAX_VALUE,
               Integer.MAX_VALUE,
               false,
diff --git a/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/core/SubentryManagerTestCase.java b/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/core/SubentryManagerTestCase.java
index 98225f8..bfdc858 100644
--- a/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/core/SubentryManagerTestCase.java
+++ b/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/core/SubentryManagerTestCase.java
@@ -32,6 +32,7 @@
 import java.util.List;
 
 import org.forgerock.opendj.ldap.ByteString;
+import org.forgerock.opendj.ldap.DereferenceAliasesPolicy;
 import org.forgerock.opendj.ldap.ModificationType;
 import org.forgerock.opendj.ldap.SearchScope;
 import org.opends.server.TestCaseUtils;
@@ -53,6 +54,7 @@
 import static org.opends.server.util.ServerConstants.*;
 import static org.testng.Assert.*;
 
+@SuppressWarnings("javadoc")
 public class SubentryManagerTestCase extends CoreTestCase
 {
   private static final String SUFFIX = "dc=example,dc=com";
@@ -432,7 +434,7 @@
               new ArrayList<Control>(),
               ByteString.valueOf(testEntry.getName().toString()),
               SearchScope.BASE_OBJECT,
-              DereferencePolicy.NEVER_DEREF_ALIASES,
+              DereferenceAliasesPolicy.NEVER,
               Integer.MAX_VALUE,
               Integer.MAX_VALUE,
               false,
diff --git a/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/core/WorkflowConfigurationTest.java b/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/core/WorkflowConfigurationTest.java
index 9a00c06..6454441 100644
--- a/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/core/WorkflowConfigurationTest.java
+++ b/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/core/WorkflowConfigurationTest.java
@@ -29,6 +29,7 @@
 import java.util.ArrayList;
 
 import org.forgerock.opendj.ldap.ByteString;
+import org.forgerock.opendj.ldap.DereferenceAliasesPolicy;
 import org.forgerock.opendj.ldap.ModificationType;
 import org.forgerock.opendj.ldap.SearchScope;
 import org.opends.server.TestCaseUtils;
@@ -227,7 +228,7 @@
        new ArrayList<Control>(),
        ByteString.valueOf(baseDN),
        scope,
-       DereferencePolicy.NEVER_DEREF_ALIASES,
+       DereferenceAliasesPolicy.NEVER,
        Integer.MAX_VALUE,
        Integer.MAX_VALUE,
        false,
diff --git a/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/crypto/CryptoManagerTestCase.java b/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/crypto/CryptoManagerTestCase.java
index 2d5736d..fad7beb 100644
--- a/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/crypto/CryptoManagerTestCase.java
+++ b/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/crypto/CryptoManagerTestCase.java
@@ -44,6 +44,7 @@
 import javax.naming.ldap.LdapName;
 
 import org.forgerock.i18n.LocalizableMessage;
+import org.forgerock.opendj.ldap.DereferenceAliasesPolicy;
 import org.forgerock.opendj.ldap.SearchScope;
 import org.opends.admin.ads.ADSContext;
 import org.opends.admin.ads.util.ConnectionUtils;
@@ -390,7 +391,7 @@
     InternalSearchOperation searchOp = icc.processSearch(
             baseDN,
             SearchScope.SINGLE_LEVEL,
-            DereferencePolicy.NEVER_DEREF_ALIASES,
+            DereferenceAliasesPolicy.NEVER,
             /* size limit */ 0, /* time limit */ 0,
             /* types only */ false,
             SearchFilter.createFilterFromString(searchFilter),
diff --git a/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/crypto/GetSymmetricKeyExtendedOperationTestCase.java b/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/crypto/GetSymmetricKeyExtendedOperationTestCase.java
index 900771e..1993170 100644
--- a/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/crypto/GetSymmetricKeyExtendedOperationTestCase.java
+++ b/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/crypto/GetSymmetricKeyExtendedOperationTestCase.java
@@ -29,6 +29,7 @@
 import java.util.LinkedHashSet;
 
 import org.forgerock.opendj.ldap.ByteString;
+import org.forgerock.opendj.ldap.DereferenceAliasesPolicy;
 import org.forgerock.opendj.ldap.SearchScope;
 import org.opends.admin.ads.ADSContext;
 import org.opends.server.TestCaseUtils;
@@ -113,7 +114,7 @@
     InternalSearchOperation searchOp = icc.processSearch(
             baseDN,
             SearchScope.SINGLE_LEVEL,
-            DereferencePolicy.NEVER_DEREF_ALIASES,
+            DereferenceAliasesPolicy.NEVER,
             /* size limit */ 0, /* time limit */ 0,
             /* types only */ false,
             SearchFilter.createFilterFromString(searchFilter),
diff --git a/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/CancelExtendedOperationTestCase.java b/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/CancelExtendedOperationTestCase.java
index 2a36ae2..6e435f9 100644
--- a/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/CancelExtendedOperationTestCase.java
+++ b/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/CancelExtendedOperationTestCase.java
@@ -66,7 +66,7 @@
 import org.opends.server.protocols.ldap.SearchResultDoneProtocolOp;
 import org.forgerock.opendj.ldap.ByteString;
 import org.forgerock.opendj.ldap.ByteStringBuilder;
-import org.opends.server.types.DereferencePolicy;
+import org.forgerock.opendj.ldap.DereferenceAliasesPolicy;
 import org.opends.server.types.Entry;
 import org.forgerock.opendj.ldap.ModificationType;
 import org.opends.server.types.RawAttribute;
@@ -663,7 +663,7 @@
     SearchRequestProtocolOp searchRequest =
          new SearchRequestProtocolOp(ByteString.valueOf("o=test"),
                                      SearchScope.BASE_OBJECT,
-                                     DereferencePolicy.NEVER_DEREF_ALIASES, 0,
+                                     DereferenceAliasesPolicy.NEVER, 0,
                                      0, false,
                                      LDAPFilter.decode("(match=false)"),
                                      new LinkedHashSet<String>());
diff --git a/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/EntityTagVirtualAttributeProviderTestCase.java b/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/EntityTagVirtualAttributeProviderTestCase.java
index 29bb922..fc2fbff 100644
--- a/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/EntityTagVirtualAttributeProviderTestCase.java
+++ b/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/EntityTagVirtualAttributeProviderTestCase.java
@@ -64,7 +64,7 @@
 import org.opends.server.types.AttributeValues;
 import org.opends.server.types.Control;
 import org.opends.server.types.DN;
-import org.opends.server.types.DereferencePolicy;
+import org.forgerock.opendj.ldap.DereferenceAliasesPolicy;
 import org.opends.server.types.DirectoryException;
 import org.opends.server.types.Entry;
 import org.forgerock.opendj.ldap.ModificationType;
@@ -891,7 +891,7 @@
     attrList.add("*");
     attrList.add(ETAG);
     InternalSearchOperation searchOperation = conn.processSearch(userDN,
-        SearchScope.BASE_OBJECT, DereferencePolicy.NEVER_DEREF_ALIASES, 0, 0,
+        SearchScope.BASE_OBJECT, DereferenceAliasesPolicy.NEVER, 0, 0,
         false, "(objectClass=*)", attrList);
     assertEquals(searchOperation.getResultCode(), ResultCode.SUCCESS);
     assertEquals(searchOperation.getSearchEntries().size(), 1);
diff --git a/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/EntryDNVirtualAttributeProviderTestCase.java b/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/EntryDNVirtualAttributeProviderTestCase.java
index 0485a3c..f575039 100644
--- a/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/EntryDNVirtualAttributeProviderTestCase.java
+++ b/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/EntryDNVirtualAttributeProviderTestCase.java
@@ -34,6 +34,7 @@
 
 import org.forgerock.opendj.ldap.ByteString;
 import org.forgerock.opendj.ldap.ConditionResult;
+import org.forgerock.opendj.ldap.DereferenceAliasesPolicy;
 import org.forgerock.opendj.ldap.SearchScope;
 import org.opends.server.TestCaseUtils;
 import org.opends.server.admin.std.meta.VirtualAttributeCfgDefn;
@@ -271,7 +272,7 @@
          InternalClientConnection.getRootConnection();
     InternalSearchOperation searchOperation =
          conn.processSearch(entryDN, SearchScope.BASE_OBJECT,
-                            DereferencePolicy.NEVER_DEREF_ALIASES, 0, 0, false,
+                            DereferenceAliasesPolicy.NEVER, 0, 0, false,
                             filter, attrList);
     assertEquals(searchOperation.getSearchEntries().size(), 1);
 
@@ -304,7 +305,7 @@
          InternalClientConnection.getRootConnection();
     InternalSearchOperation searchOperation =
          conn.processSearch(entryDN, SearchScope.BASE_OBJECT,
-                            DereferencePolicy.NEVER_DEREF_ALIASES, 0, 0, false,
+                            DereferenceAliasesPolicy.NEVER, 0, 0, false,
                             filter, attrList);
     assertEquals(searchOperation.getSearchEntries().size(), 0);
   }
@@ -339,7 +340,7 @@
          new InternalSearchOperation(conn, InternalClientConnection.nextOperationID(),
                                      InternalClientConnection.nextMessageID(), requestControls,
                                      entryDN, SearchScope.BASE_OBJECT,
-                                     DereferencePolicy.NEVER_DEREF_ALIASES, 0,
+                                     DereferenceAliasesPolicy.NEVER, 0,
                                      0, false, filter, attrList, null);
     searchOperation.run();
     assertEquals(searchOperation.getSearchEntries().size(), 1);
@@ -379,7 +380,7 @@
          new InternalSearchOperation(conn, InternalClientConnection.nextOperationID(),
                                      InternalClientConnection.nextMessageID(), requestControls,
                                      entryDN, SearchScope.BASE_OBJECT,
-                                     DereferencePolicy.NEVER_DEREF_ALIASES, 0,
+                                     DereferenceAliasesPolicy.NEVER, 0,
                                      0, false, filter, attrList, null);
     searchOperation.run();
     assertEquals(searchOperation.getSearchEntries().size(), 1);
@@ -933,7 +934,7 @@
                                      InternalClientConnection.nextMessageID(), null,
                                      DN.valueOf("o=test"),
                                      SearchScope.WHOLE_SUBTREE,
-                                     DereferencePolicy.NEVER_DEREF_ALIASES, 0,
+                                     DereferenceAliasesPolicy.NEVER, 0,
                                      0, false, filter, null, null);
     // This attribute is searchable for either pre-indexed or not
     assertEquals(provider.isSearchable(rule, searchOperation, false),
@@ -986,7 +987,7 @@
                                      InternalClientConnection.nextMessageID(), null,
                                      DN.valueOf("o=test"),
                                      SearchScope.WHOLE_SUBTREE,
-                                     DereferencePolicy.NEVER_DEREF_ALIASES, 0,
+                                     DereferenceAliasesPolicy.NEVER, 0,
                                      0, false, filter, null, null);
     LocalBackendSearchOperation localSearch =
       new LocalBackendSearchOperation(searchOperation);
diff --git a/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/EntryUUIDVirtualAttributeProviderTestCase.java b/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/EntryUUIDVirtualAttributeProviderTestCase.java
index 9205859..205928b 100644
--- a/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/EntryUUIDVirtualAttributeProviderTestCase.java
+++ b/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/EntryUUIDVirtualAttributeProviderTestCase.java
@@ -33,6 +33,7 @@
 import java.util.Set;
 import java.util.UUID;
 
+import org.forgerock.opendj.ldap.DereferenceAliasesPolicy;
 import org.forgerock.opendj.ldap.SearchScope;
 import org.opends.server.TestCaseUtils;
 import org.opends.server.admin.std.meta.VirtualAttributeCfgDefn;
@@ -316,7 +317,7 @@
          InternalClientConnection.getRootConnection();
     InternalSearchOperation searchOperation =
          conn.processSearch(entryDN, SearchScope.BASE_OBJECT,
-                            DereferencePolicy.NEVER_DEREF_ALIASES, 0, 0, false,
+                            DereferenceAliasesPolicy.NEVER, 0, 0, false,
                             filter, attrList);
     assertEquals(searchOperation.getSearchEntries().size(), 1);
 
@@ -349,7 +350,7 @@
          InternalClientConnection.getRootConnection();
     InternalSearchOperation searchOperation =
          conn.processSearch(entryDN, SearchScope.BASE_OBJECT,
-                            DereferencePolicy.NEVER_DEREF_ALIASES, 0, 0, false,
+                            DereferenceAliasesPolicy.NEVER, 0, 0, false,
                             filter, attrList);
     assertEquals(searchOperation.getSearchEntries().size(), 0);
   }
@@ -383,7 +384,7 @@
          new InternalSearchOperation(conn, InternalClientConnection.nextOperationID(),
                                      InternalClientConnection.nextMessageID(), requestControls,
                                      entryDN, SearchScope.BASE_OBJECT,
-                                     DereferencePolicy.NEVER_DEREF_ALIASES, 0,
+                                     DereferenceAliasesPolicy.NEVER, 0,
                                      0, false, filter, attrList, null);
     searchOperation.run();
     assertEquals(searchOperation.getSearchEntries().size(), 1);
@@ -423,7 +424,7 @@
          new InternalSearchOperation(conn, InternalClientConnection.nextOperationID(),
                                      InternalClientConnection.nextMessageID(), requestControls,
                                      entryDN, SearchScope.BASE_OBJECT,
-                                     DereferencePolicy.NEVER_DEREF_ALIASES, 0,
+                                     DereferenceAliasesPolicy.NEVER, 0,
                                      0, false, filter, attrList, null);
     searchOperation.run();
     assertEquals(searchOperation.getSearchEntries().size(), 1);
diff --git a/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/ExtensionTestUtils.java b/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/ExtensionTestUtils.java
index 9350bad..785c49a 100644
--- a/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/ExtensionTestUtils.java
+++ b/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/ExtensionTestUtils.java
@@ -30,7 +30,7 @@
 import org.opends.server.schema.SchemaConstants;
 import org.opends.server.types.AttributeType;
 import org.opends.server.types.DN;
-import org.opends.server.types.DereferencePolicy;
+import org.forgerock.opendj.ldap.DereferenceAliasesPolicy;
 import org.opends.server.types.Entry;
 import org.opends.server.types.SearchFilter;
 import org.forgerock.opendj.ldap.SearchScope;
@@ -75,7 +75,7 @@
         InternalClientConnection.getRootConnection();
     InternalSearchOperation searchOperation =
         conn.processSearch(entryDN, SearchScope.BASE_OBJECT,
-            DereferencePolicy.NEVER_DEREF_ALIASES, 0, 0, false, filter,
+            DereferenceAliasesPolicy.NEVER, 0, 0, false, filter,
             attrList);
     assertEquals(searchOperation.getSearchEntries().size(), 1);
 
@@ -96,7 +96,7 @@
         InternalClientConnection.getRootConnection();
     InternalSearchOperation searchOperation =
         conn.processSearch(entryDN, SearchScope.BASE_OBJECT,
-            DereferencePolicy.NEVER_DEREF_ALIASES, 0, 0, false, filter,
+            DereferenceAliasesPolicy.NEVER, 0, 0, false, filter,
             attrList);
     assertEquals(searchOperation.getSearchEntries().size(), 1);
 
@@ -117,7 +117,7 @@
         InternalClientConnection.getRootConnection();
     InternalSearchOperation searchOperation =
         conn.processSearch(entryDN, SearchScope.BASE_OBJECT,
-            DereferencePolicy.NEVER_DEREF_ALIASES, 0, 0, false, filter,
+            DereferenceAliasesPolicy.NEVER, 0, 0, false, filter,
             attrList);
     assertEquals(searchOperation.getSearchEntries().size(), 1);
 
@@ -138,7 +138,7 @@
         InternalClientConnection.getRootConnection();
     InternalSearchOperation searchOperation =
         conn.processSearch(entryDN, SearchScope.BASE_OBJECT,
-            DereferencePolicy.NEVER_DEREF_ALIASES, 0, 0, false, filter,
+            DereferenceAliasesPolicy.NEVER, 0, 0, false, filter,
             attrList);
     assertEquals(searchOperation.getSearchEntries().size(), 1);
 
@@ -159,7 +159,7 @@
         InternalClientConnection.getRootConnection();
     InternalSearchOperation searchOperation =
         conn.processSearch(entryDN, SearchScope.BASE_OBJECT,
-            DereferencePolicy.NEVER_DEREF_ALIASES, 0, 0, false, filter,
+            DereferenceAliasesPolicy.NEVER, 0, 0, false, filter,
             attrList);
     assertEquals(searchOperation.getSearchEntries().size(), 1);
 
diff --git a/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/GoverningStructureRuleVirtualAttributeProviderTestCase.java b/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/GoverningStructureRuleVirtualAttributeProviderTestCase.java
index 1c5e5c4..4055aef 100644
--- a/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/GoverningStructureRuleVirtualAttributeProviderTestCase.java
+++ b/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/GoverningStructureRuleVirtualAttributeProviderTestCase.java
@@ -49,7 +49,7 @@
 import org.opends.server.types.AttributeValues;
 import org.opends.server.types.Control;
 import org.opends.server.types.DN;
-import org.opends.server.types.DereferencePolicy;
+import org.forgerock.opendj.ldap.DereferenceAliasesPolicy;
 import org.opends.server.types.Entry;
 import org.opends.server.types.SearchFilter;
 import org.forgerock.opendj.ldap.SearchScope;
@@ -335,7 +335,7 @@
          InternalClientConnection.getRootConnection();
     InternalSearchOperation searchOperation =
          conn.processSearch(entryDN, SearchScope.BASE_OBJECT,
-                            DereferencePolicy.NEVER_DEREF_ALIASES, 0, 0, false,
+                            DereferenceAliasesPolicy.NEVER, 0, 0, false,
                             filter, attrList);
     assertEquals(searchOperation.getSearchEntries().size(), 1);
 
@@ -368,7 +368,7 @@
          InternalClientConnection.getRootConnection();
     InternalSearchOperation searchOperation =
          conn.processSearch(entryDN, SearchScope.BASE_OBJECT,
-                            DereferencePolicy.NEVER_DEREF_ALIASES, 0, 0, false,
+                            DereferenceAliasesPolicy.NEVER, 0, 0, false,
                             filter, attrList);
     assertEquals(searchOperation.getSearchEntries().size(), 0);
   }
@@ -404,7 +404,7 @@
             .nextOperationID(), InternalClientConnection
             .nextMessageID(), requestControls, entryDN,
             SearchScope.BASE_OBJECT,
-            DereferencePolicy.NEVER_DEREF_ALIASES, 0, 0, false, filter,
+            DereferenceAliasesPolicy.NEVER, 0, 0, false, filter,
             attrList, null);
     searchOperation.run();
     assertEquals(searchOperation.getSearchEntries().size(), 1);
@@ -445,7 +445,7 @@
             .nextOperationID(), InternalClientConnection
             .nextMessageID(), requestControls, entryDN,
             SearchScope.BASE_OBJECT,
-            DereferencePolicy.NEVER_DEREF_ALIASES, 0, 0, false, filter,
+            DereferenceAliasesPolicy.NEVER, 0, 0, false, filter,
             attrList, null);
     searchOperation.run();
     assertEquals(searchOperation.getSearchEntries().size(), 1);
diff --git a/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/HasSubordinatesVirtualAttributeProviderTestCase.java b/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/HasSubordinatesVirtualAttributeProviderTestCase.java
index 979f098..a85beff 100644
--- a/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/HasSubordinatesVirtualAttributeProviderTestCase.java
+++ b/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/HasSubordinatesVirtualAttributeProviderTestCase.java
@@ -31,6 +31,7 @@
 import java.util.List;
 
 import org.forgerock.opendj.ldap.ByteString;
+import org.forgerock.opendj.ldap.DereferenceAliasesPolicy;
 import org.forgerock.opendj.ldap.SearchScope;
 import org.opends.server.DirectoryServerTestCase;
 import org.opends.server.TestCaseUtils;
@@ -47,8 +48,9 @@
 import static org.opends.server.util.StaticUtils.*;
 import static org.testng.Assert.*;
 
+@SuppressWarnings("javadoc")
 public class HasSubordinatesVirtualAttributeProviderTestCase extends DirectoryServerTestCase {
-      // The attribute type for the hasSubordinates attribute.
+  // The attribute type for the hasSubordinates attribute.
   private AttributeType hasSubordinatesType;
 
   private List<Entry> entries;
@@ -361,7 +363,7 @@
          InternalClientConnection.getRootConnection();
     InternalSearchOperation searchOperation =
          conn.processSearch(entryDN, SearchScope.BASE_OBJECT,
-                            DereferencePolicy.NEVER_DEREF_ALIASES, 0, 0, false,
+                            DereferenceAliasesPolicy.NEVER, 0, 0, false,
                             filter, attrList);
     assertEquals(searchOperation.getSearchEntries().size(), 1);
 
@@ -394,7 +396,7 @@
          InternalClientConnection.getRootConnection();
     InternalSearchOperation searchOperation =
          conn.processSearch(entryDN, SearchScope.BASE_OBJECT,
-                            DereferencePolicy.NEVER_DEREF_ALIASES, 0, 0, false,
+                            DereferenceAliasesPolicy.NEVER, 0, 0, false,
                             filter, attrList);
     assertEquals(searchOperation.getSearchEntries().size(), 0);
   }
@@ -428,7 +430,7 @@
          new InternalSearchOperation(conn, InternalClientConnection.nextOperationID(),
                                      InternalClientConnection.nextMessageID(), requestControls,
                                      entryDN, SearchScope.BASE_OBJECT,
-                                     DereferencePolicy.NEVER_DEREF_ALIASES, 0,
+                                     DereferenceAliasesPolicy.NEVER, 0,
                                      0, false, filter, attrList, null);
     searchOperation.run();
     assertEquals(searchOperation.getSearchEntries().size(), 1);
@@ -468,7 +470,7 @@
          new InternalSearchOperation(conn, InternalClientConnection.nextOperationID(),
                                      InternalClientConnection.nextMessageID(), requestControls,
                                      entryDN, SearchScope.BASE_OBJECT,
-                                     DereferencePolicy.NEVER_DEREF_ALIASES, 0,
+                                     DereferenceAliasesPolicy.NEVER, 0,
                                      0, false, filter, attrList, null);
     searchOperation.run();
     assertEquals(searchOperation.getSearchEntries().size(), 1);
diff --git a/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/IsMemberOfVirtualAttributeProviderTestCase.java b/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/IsMemberOfVirtualAttributeProviderTestCase.java
index b3eef60..f1c6228 100644
--- a/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/IsMemberOfVirtualAttributeProviderTestCase.java
+++ b/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/IsMemberOfVirtualAttributeProviderTestCase.java
@@ -44,7 +44,7 @@
 import org.opends.server.types.AttributeValues;
 import org.opends.server.types.Control;
 import org.opends.server.types.DN;
-import org.opends.server.types.DereferencePolicy;
+import org.forgerock.opendj.ldap.DereferenceAliasesPolicy;
 import org.opends.server.types.Entry;
 import org.forgerock.opendj.ldap.ResultCode;
 import org.opends.server.types.SearchFilter;
@@ -1115,7 +1115,7 @@
                                      null,
                                      DN.valueOf("o=test"),
                                      SearchScope.WHOLE_SUBTREE,
-                                     DereferencePolicy.NEVER_DEREF_ALIASES, 0,
+                                     DereferenceAliasesPolicy.NEVER, 0,
                                      0, false, filter, null, null);
 
     assertEquals(provider.isSearchable(rule,
@@ -1247,7 +1247,7 @@
                                      null,
                                      DN.valueOf("o=test"),
                                      SearchScope.WHOLE_SUBTREE,
-                                     DereferencePolicy.NEVER_DEREF_ALIASES, 0,
+                                     DereferenceAliasesPolicy.NEVER, 0,
                                      0, false, filter, null, null);
     provider.processSearch(rule, new LocalBackendSearchOperation(searchOperation));
 
@@ -1340,7 +1340,7 @@
               new ArrayList<Control>(),
               ByteString.valueOf("dc=example,dc=com"),
               SearchScope.WHOLE_SUBTREE,
-              DereferencePolicy.NEVER_DEREF_ALIASES,
+              DereferenceAliasesPolicy.NEVER,
               Integer.MAX_VALUE,
               Integer.MAX_VALUE,
               false,
diff --git a/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/LDAPPassThroughAuthenticationPolicyTestCase.java b/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/LDAPPassThroughAuthenticationPolicyTestCase.java
index c6012de..88d80d6 100644
--- a/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/LDAPPassThroughAuthenticationPolicyTestCase.java
+++ b/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/LDAPPassThroughAuthenticationPolicyTestCase.java
@@ -37,6 +37,7 @@
 import org.forgerock.opendj.io.ASN1Writer;
 import org.forgerock.opendj.ldap.ByteString;
 import org.forgerock.opendj.ldap.ByteStringBuilder;
+import org.forgerock.opendj.ldap.DereferenceAliasesPolicy;
 import org.forgerock.opendj.ldap.ResultCode;
 import org.forgerock.opendj.ldap.SearchScope;
 import org.opends.server.TestCaseUtils;
@@ -4426,7 +4427,7 @@
   {
     final int timeout = (int) (cfg.getConnectionTimeout() / 1000);
     return new SearchRequestProtocolOp(ByteString.valueOf(dn),
-        SearchScope.WHOLE_SUBTREE, DereferencePolicy.DEREF_ALWAYS, 1, timeout,
+        SearchScope.WHOLE_SUBTREE, DereferenceAliasesPolicy.ALWAYS, 1, timeout,
         true, RawFilter.create(filter),
         LDAPPassThroughAuthenticationPolicyFactory.NO_ATTRIBUTES);
   }
diff --git a/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/NumSubordinatesVirtualAttributeProviderTestCase.java b/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/NumSubordinatesVirtualAttributeProviderTestCase.java
index c5c0662..d7db950 100644
--- a/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/NumSubordinatesVirtualAttributeProviderTestCase.java
+++ b/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/NumSubordinatesVirtualAttributeProviderTestCase.java
@@ -31,6 +31,7 @@
 import java.util.List;
 
 import org.forgerock.opendj.ldap.ByteString;
+import org.forgerock.opendj.ldap.DereferenceAliasesPolicy;
 import org.forgerock.opendj.ldap.SearchScope;
 import org.opends.server.DirectoryServerTestCase;
 import org.opends.server.TestCaseUtils;
@@ -364,7 +365,7 @@
          InternalClientConnection.getRootConnection();
     InternalSearchOperation searchOperation =
          conn.processSearch(entryDN, SearchScope.BASE_OBJECT,
-                            DereferencePolicy.NEVER_DEREF_ALIASES, 0, 0, false,
+                            DereferenceAliasesPolicy.NEVER, 0, 0, false,
                             filter, attrList);
     assertEquals(searchOperation.getSearchEntries().size(), 1);
 
@@ -397,7 +398,7 @@
          InternalClientConnection.getRootConnection();
     InternalSearchOperation searchOperation =
          conn.processSearch(entryDN, SearchScope.BASE_OBJECT,
-                            DereferencePolicy.NEVER_DEREF_ALIASES, 0, 0, false,
+                            DereferenceAliasesPolicy.NEVER, 0, 0, false,
                             filter, attrList);
     assertEquals(searchOperation.getSearchEntries().size(), 0);
   }
@@ -431,7 +432,7 @@
          new InternalSearchOperation(conn, InternalClientConnection.nextOperationID(),
                                      InternalClientConnection.nextMessageID(), requestControls,
                                      entryDN, SearchScope.BASE_OBJECT,
-                                     DereferencePolicy.NEVER_DEREF_ALIASES, 0,
+                                     DereferenceAliasesPolicy.NEVER, 0,
                                      0, false, filter, attrList, null);
     searchOperation.run();
     assertEquals(searchOperation.getSearchEntries().size(), 1);
@@ -471,7 +472,7 @@
          new InternalSearchOperation(conn, InternalClientConnection.nextOperationID(),
                                      InternalClientConnection.nextMessageID(), requestControls,
                                      entryDN, SearchScope.BASE_OBJECT,
-                                     DereferencePolicy.NEVER_DEREF_ALIASES, 0,
+                                     DereferenceAliasesPolicy.NEVER, 0,
                                      0, false, filter, attrList, null);
     searchOperation.run();
     assertEquals(searchOperation.getSearchEntries().size(), 1);
@@ -504,7 +505,7 @@
          InternalClientConnection.getRootConnection();
     InternalSearchOperation searchOperation =
          conn.processSearch(entryDN, SearchScope.BASE_OBJECT,
-                            DereferencePolicy.NEVER_DEREF_ALIASES, 0, 0, false,
+                            DereferenceAliasesPolicy.NEVER, 0, 0, false,
                             filter, attrList);
     assertEquals(searchOperation.getSearchEntries().size(), 1);
 
@@ -536,7 +537,7 @@
          InternalClientConnection.getRootConnection();
     InternalSearchOperation searchOperation =
          conn.processSearch(entryDN, SearchScope.BASE_OBJECT,
-                            DereferencePolicy.NEVER_DEREF_ALIASES, 0, 0, false,
+                            DereferenceAliasesPolicy.NEVER, 0, 0, false,
                             filter, attrList);
     assertEquals(searchOperation.getSearchEntries().size(), 1);
 
diff --git a/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/PasswordExpirationTimeVirtualAttributeProviderTestCase.java b/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/PasswordExpirationTimeVirtualAttributeProviderTestCase.java
index b4a6060..e2e5fb7 100644
--- a/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/PasswordExpirationTimeVirtualAttributeProviderTestCase.java
+++ b/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/PasswordExpirationTimeVirtualAttributeProviderTestCase.java
@@ -32,6 +32,7 @@
 import java.util.List;
 
 import org.forgerock.i18n.LocalizableMessage;
+import org.forgerock.opendj.ldap.DereferenceAliasesPolicy;
 import org.forgerock.opendj.ldap.SearchScope;
 import org.opends.server.TestCaseUtils;
 import org.opends.server.protocols.internal.InternalClientConnection;
@@ -214,7 +215,7 @@
     InternalSearchOperation search =
       conn.processSearch(notExpired.getName().toString(),
                          SearchScope.BASE_OBJECT,
-                         DereferencePolicy.DEREF_ALWAYS,
+                         DereferenceAliasesPolicy.ALWAYS,
                          0,
                          0,
                          false,
diff --git a/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/StructuralObjectClassVirtualAttributeProviderTestCase.java b/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/StructuralObjectClassVirtualAttributeProviderTestCase.java
index 2cfa679..99bdd0b 100644
--- a/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/StructuralObjectClassVirtualAttributeProviderTestCase.java
+++ b/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/StructuralObjectClassVirtualAttributeProviderTestCase.java
@@ -49,7 +49,7 @@
 import org.opends.server.types.AttributeValues;
 import org.opends.server.types.Control;
 import org.opends.server.types.DN;
-import org.opends.server.types.DereferencePolicy;
+import org.forgerock.opendj.ldap.DereferenceAliasesPolicy;
 import org.opends.server.types.Entry;
 import org.opends.server.types.SearchFilter;
 import org.forgerock.opendj.ldap.SearchScope;
@@ -303,7 +303,7 @@
          InternalClientConnection.getRootConnection();
     InternalSearchOperation searchOperation =
          conn.processSearch(entryDN, SearchScope.BASE_OBJECT,
-                            DereferencePolicy.NEVER_DEREF_ALIASES, 0, 0, false,
+                            DereferenceAliasesPolicy.NEVER, 0, 0, false,
                             filter, attrList);
     assertEquals(searchOperation.getSearchEntries().size(), 1);
 
@@ -336,7 +336,7 @@
          InternalClientConnection.getRootConnection();
     InternalSearchOperation searchOperation =
          conn.processSearch(entryDN, SearchScope.BASE_OBJECT,
-                            DereferencePolicy.NEVER_DEREF_ALIASES, 0, 0, false,
+                            DereferenceAliasesPolicy.NEVER, 0, 0, false,
                             filter, attrList);
     assertEquals(searchOperation.getSearchEntries().size(), 0);
   }
@@ -372,7 +372,7 @@
             .nextOperationID(), InternalClientConnection
             .nextMessageID(), requestControls, entryDN,
             SearchScope.BASE_OBJECT,
-            DereferencePolicy.NEVER_DEREF_ALIASES, 0, 0, false, filter,
+            DereferenceAliasesPolicy.NEVER, 0, 0, false, filter,
             attrList, null);
     searchOperation.run();
     assertEquals(searchOperation.getSearchEntries().size(), 1);
@@ -413,7 +413,7 @@
             .nextOperationID(), InternalClientConnection
             .nextMessageID(), requestControls, entryDN,
             SearchScope.BASE_OBJECT,
-            DereferencePolicy.NEVER_DEREF_ALIASES, 0, 0, false, filter,
+            DereferenceAliasesPolicy.NEVER, 0, 0, false, filter,
             attrList, null);
     searchOperation.run();
     assertEquals(searchOperation.getSearchEntries().size(), 1);
diff --git a/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/SubschemaSubentryVirtualAttributeProviderTestCase.java b/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/SubschemaSubentryVirtualAttributeProviderTestCase.java
index 06d9225..2261bfd 100644
--- a/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/SubschemaSubentryVirtualAttributeProviderTestCase.java
+++ b/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/SubschemaSubentryVirtualAttributeProviderTestCase.java
@@ -49,7 +49,7 @@
 import org.opends.server.types.AttributeValues;
 import org.opends.server.types.Control;
 import org.opends.server.types.DN;
-import org.opends.server.types.DereferencePolicy;
+import org.forgerock.opendj.ldap.DereferenceAliasesPolicy;
 import org.opends.server.types.Entry;
 import org.opends.server.types.SearchFilter;
 import org.forgerock.opendj.ldap.SearchScope;
@@ -281,7 +281,7 @@
          InternalClientConnection.getRootConnection();
     InternalSearchOperation searchOperation =
          conn.processSearch(entryDN, SearchScope.BASE_OBJECT,
-                            DereferencePolicy.NEVER_DEREF_ALIASES, 0, 0, false,
+                            DereferenceAliasesPolicy.NEVER, 0, 0, false,
                             filter, attrList);
     assertEquals(searchOperation.getSearchEntries().size(), 1);
 
@@ -314,7 +314,7 @@
          InternalClientConnection.getRootConnection();
     InternalSearchOperation searchOperation =
          conn.processSearch(entryDN, SearchScope.BASE_OBJECT,
-                            DereferencePolicy.NEVER_DEREF_ALIASES, 0, 0, false,
+                            DereferenceAliasesPolicy.NEVER, 0, 0, false,
                             filter, attrList);
     assertEquals(searchOperation.getSearchEntries().size(), 0);
   }
@@ -350,7 +350,7 @@
             .nextOperationID(), InternalClientConnection
             .nextMessageID(), requestControls, entryDN,
             SearchScope.BASE_OBJECT,
-            DereferencePolicy.NEVER_DEREF_ALIASES, 0, 0, false, filter,
+            DereferenceAliasesPolicy.NEVER, 0, 0, false, filter,
             attrList, null);
     searchOperation.run();
     assertEquals(searchOperation.getSearchEntries().size(), 1);
@@ -391,7 +391,7 @@
             .nextOperationID(), InternalClientConnection
             .nextMessageID(), requestControls, entryDN,
             SearchScope.BASE_OBJECT,
-            DereferencePolicy.NEVER_DEREF_ALIASES, 0, 0, false, filter,
+            DereferenceAliasesPolicy.NEVER, 0, 0, false, filter,
             attrList, null);
     searchOperation.run();
     assertEquals(searchOperation.getSearchEntries().size(), 1);
diff --git a/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/TraditionalWorkQueueTestCase.java b/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/TraditionalWorkQueueTestCase.java
index edd5750..43d8052 100644
--- a/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/TraditionalWorkQueueTestCase.java
+++ b/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/TraditionalWorkQueueTestCase.java
@@ -46,7 +46,7 @@
 import org.opends.server.types.Attributes;
 import org.opends.server.types.Control;
 import org.opends.server.types.DN;
-import org.opends.server.types.DereferencePolicy;
+import org.forgerock.opendj.ldap.DereferenceAliasesPolicy;
 import org.opends.server.types.Modification;
 import org.forgerock.opendj.ldap.ModificationType;
 import org.forgerock.opendj.ldap.ResultCode;
@@ -204,7 +204,7 @@
                                      InternalClientConnection.nextMessageID(),requestControls,
                                      DN.valueOf("o=test"),
                                      SearchScope.BASE_OBJECT,
-                                     DereferencePolicy.NEVER_DEREF_ALIASES, 0,
+                                     DereferenceAliasesPolicy.NEVER, 0,
                                      0, false, filter, attrs, null);
     DirectoryServer.getWorkQueue().submitOperation(searchOperation);
 
@@ -241,7 +241,7 @@
                                      InternalClientConnection.nextMessageID(), requestControls,
                                      DN.valueOf("o=test"),
                                      SearchScope.BASE_OBJECT,
-                                     DereferencePolicy.NEVER_DEREF_ALIASES, 0,
+                                     DereferenceAliasesPolicy.NEVER, 0,
                                      0, false, filter, attrs, null);
     DirectoryServer.getWorkQueue().submitOperation(searchOperation);
 
diff --git a/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/UserDefinedVirtualAttributeProviderTestCase.java b/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/UserDefinedVirtualAttributeProviderTestCase.java
index 7b408e0..e89a077 100644
--- a/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/UserDefinedVirtualAttributeProviderTestCase.java
+++ b/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/UserDefinedVirtualAttributeProviderTestCase.java
@@ -29,6 +29,8 @@
 import java.util.LinkedHashSet;
 import java.util.List;
 
+import org.forgerock.opendj.ldap.DereferenceAliasesPolicy;
+import org.forgerock.opendj.ldap.ResultCode;
 import org.forgerock.opendj.ldap.SearchScope;
 import org.opends.server.TestCaseUtils;
 import org.opends.server.core.DeleteOperation;
@@ -37,7 +39,6 @@
 import org.opends.server.protocols.internal.InternalSearchOperation;
 import org.opends.server.tools.LDAPModify;
 import org.opends.server.types.*;
-import org.forgerock.opendj.ldap.ResultCode;
 import org.testng.annotations.BeforeClass;
 import org.testng.annotations.Test;
 
@@ -118,7 +119,7 @@
               .nextOperationID(), InternalClientConnection
               .nextMessageID(), null, DN.valueOf(ruleDN),
               SearchScope.BASE_OBJECT,
-              DereferencePolicy.NEVER_DEREF_ALIASES, 0, 0, false,
+              DereferenceAliasesPolicy.NEVER, 0, 0, false,
               SearchFilter.createFilterFromString("(objectClass=*)"),
               null, null);
 
@@ -186,7 +187,7 @@
               .nextOperationID(), InternalClientConnection
               .nextMessageID(), null, DN.valueOf(ruleDN),
               SearchScope.BASE_OBJECT,
-              DereferencePolicy.NEVER_DEREF_ALIASES, 0, 0, false,
+              DereferenceAliasesPolicy.NEVER, 0, 0, false,
               SearchFilter.createFilterFromString("(objectClass=*)"),
               null, null);
 
@@ -644,7 +645,7 @@
       InternalSearchOperation searchOperation =
           conn.processSearch(DN.valueOf(userDN),
               SearchScope.BASE_OBJECT,
-              DereferencePolicy.NEVER_DEREF_ALIASES, 0, 0, false,
+              DereferenceAliasesPolicy.NEVER, 0, 0, false,
               SearchFilter.createFilterFromString("(objectClass=*)"),
               attributes);
 
diff --git a/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/VirtualStaticGroupTestCase.java b/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/VirtualStaticGroupTestCase.java
index c199874..04a7b84 100644
--- a/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/VirtualStaticGroupTestCase.java
+++ b/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/VirtualStaticGroupTestCase.java
@@ -32,6 +32,7 @@
 import java.util.Set;
 
 import org.forgerock.opendj.ldap.ConditionResult;
+import org.forgerock.opendj.ldap.DereferenceAliasesPolicy;
 import org.forgerock.opendj.ldap.ModificationType;
 import org.forgerock.opendj.ldap.SearchScope;
 import org.opends.server.TestCaseUtils;
@@ -663,9 +664,8 @@
          new InternalSearchOperation(conn, InternalClientConnection.nextOperationID(),
                   InternalClientConnection.nextMessageID(), null, DN.valueOf("o=test"),
                   SearchScope.WHOLE_SUBTREE,
-                  DereferencePolicy.NEVER_DEREF_ALIASES, 0, 0, false,
-                  SearchFilter.createFilterFromString(
-                       "(member=" + u1.toString() + ")"),
+                  DereferenceAliasesPolicy.NEVER, 0, 0, false,
+                  SearchFilter.createFilterFromString("(member=" + u1 + ")"),
                   null, null);
     assertFalse(provider.isSearchable(rule, searchOperation, false));
     assertFalse(provider.isSearchable(rule, searchOperation, true));
@@ -738,9 +738,8 @@
          new InternalSearchOperation(conn, InternalClientConnection.nextOperationID(),
                   InternalClientConnection.nextMessageID(), null, DN.valueOf("o=test"),
                   SearchScope.WHOLE_SUBTREE,
-                  DereferencePolicy.NEVER_DEREF_ALIASES, 0, 0, false,
-                  SearchFilter.createFilterFromString(
-                       "(member=" + u1.toString() + ")"),
+                  DereferenceAliasesPolicy.NEVER, 0, 0, false,
+                  SearchFilter.createFilterFromString("(member=" + u1 + ")"),
                   null, null);
     assertFalse(provider.isSearchable(rule, searchOperation, false));
     assertFalse(provider.isSearchable(rule, searchOperation, false));
diff --git a/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/plugins/LDAPADListPluginTestCase.java b/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/plugins/LDAPADListPluginTestCase.java
index e467078..84c76e6 100644
--- a/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/plugins/LDAPADListPluginTestCase.java
+++ b/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/plugins/LDAPADListPluginTestCase.java
@@ -48,7 +48,7 @@
 import org.opends.server.protocols.internal.InternalSearchOperation;
 import org.opends.server.types.Attribute;
 import org.opends.server.types.AttributeValue;
-import org.opends.server.types.DereferencePolicy;
+import org.forgerock.opendj.ldap.DereferenceAliasesPolicy;
 import org.opends.server.types.DN;
 import org.opends.server.types.Entry;
 import org.forgerock.opendj.ldap.ResultCode;
@@ -250,7 +250,7 @@
          InternalClientConnection.getRootConnection();
     InternalSearchOperation searchOperation =
          conn.processSearch(DN.valueOf("o=test"), SearchScope.BASE_OBJECT,
-              DereferencePolicy.NEVER_DEREF_ALIASES, 0, 0, false,
+              DereferenceAliasesPolicy.NEVER, 0, 0, false,
               SearchFilter.createFilterFromString("(objectClass=*)"), attrList);
     assertEquals(searchOperation.getResultCode(), ResultCode.SUCCESS);
     assertFalse(searchOperation.getSearchEntries().isEmpty());
@@ -280,7 +280,7 @@
          InternalClientConnection.getRootConnection();
     InternalSearchOperation searchOperation =
          conn.processSearch(DN.valueOf("o=test"), SearchScope.BASE_OBJECT,
-              DereferencePolicy.NEVER_DEREF_ALIASES, 0, 0, false,
+              DereferenceAliasesPolicy.NEVER, 0, 0, false,
               SearchFilter.createFilterFromString("(objectClass=*)"), attrList);
     assertEquals(searchOperation.getResultCode(), ResultCode.SUCCESS);
     assertFalse(searchOperation.getSearchEntries().isEmpty());
@@ -310,7 +310,7 @@
          InternalClientConnection.getRootConnection();
     InternalSearchOperation searchOperation =
          conn.processSearch(DN.valueOf("o=test"), SearchScope.BASE_OBJECT,
-              DereferencePolicy.NEVER_DEREF_ALIASES, 0, 0, false,
+              DereferenceAliasesPolicy.NEVER, 0, 0, false,
               SearchFilter.createFilterFromString("(objectClass=*)"), attrList);
     assertEquals(searchOperation.getResultCode(), ResultCode.SUCCESS);
     assertFalse(searchOperation.getSearchEntries().isEmpty());
@@ -340,7 +340,7 @@
          InternalClientConnection.getRootConnection();
     InternalSearchOperation searchOperation =
          conn.processSearch(DN.valueOf("o=test"), SearchScope.BASE_OBJECT,
-              DereferencePolicy.NEVER_DEREF_ALIASES, 0, 0, false,
+              DereferenceAliasesPolicy.NEVER, 0, 0, false,
               SearchFilter.createFilterFromString("(objectClass=*)"), attrList);
     assertEquals(searchOperation.getResultCode(), ResultCode.SUCCESS);
     assertFalse(searchOperation.getSearchEntries().isEmpty());
diff --git a/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/plugins/ReferentialIntegrityPluginTestCase.java b/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/plugins/ReferentialIntegrityPluginTestCase.java
index 3e66e0a..8f6eb4c 100644
--- a/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/plugins/ReferentialIntegrityPluginTestCase.java
+++ b/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/plugins/ReferentialIntegrityPluginTestCase.java
@@ -32,6 +32,7 @@
 import java.util.LinkedList;
 import java.util.List;
 
+import org.forgerock.opendj.ldap.DereferenceAliasesPolicy;
 import org.forgerock.opendj.ldap.ModificationType;
 import org.forgerock.opendj.ldap.SearchScope;
 import org.opends.server.TestCaseUtils;
@@ -1180,7 +1181,7 @@
             InternalClientConnection.getRootConnection();
     InternalSearchOperation operation = conn.processSearch(DN.valueOf(entryDN),
             SearchScope.BASE_OBJECT,
-            DereferencePolicy.NEVER_DEREF_ALIASES, 0, 0, false,
+            DereferenceAliasesPolicy.NEVER, 0, 0, false,
             SearchFilter.createFilterFromString(filterStr),
             null);
     for (SearchResultEntry entry : operation.getSearchEntries()) {
diff --git a/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/protocols/internal/InternalClientConnectionTestCase.java b/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/protocols/internal/InternalClientConnectionTestCase.java
index f1db9c3..c8c3c76 100644
--- a/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/protocols/internal/InternalClientConnectionTestCase.java
+++ b/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/protocols/internal/InternalClientConnectionTestCase.java
@@ -31,6 +31,7 @@
 
 import org.forgerock.i18n.LocalizableMessage;
 import org.forgerock.opendj.ldap.ByteString;
+import org.forgerock.opendj.ldap.DereferenceAliasesPolicy;
 import org.forgerock.opendj.ldap.ModificationType;
 import org.forgerock.opendj.ldap.SearchScope;
 import org.opends.server.TestCaseUtils;
@@ -827,7 +828,7 @@
          InternalClientConnection.getRootConnection();
     InternalSearchOperation searchOperation =
          conn.processSearch(ByteString.valueOf(""), SearchScope.BASE_OBJECT,
-                            DereferencePolicy.NEVER_DEREF_ALIASES, 0, 0, false,
+                            DereferenceAliasesPolicy.NEVER, 0, 0, false,
                             LDAPFilter.decode("(objectClass=*)"),
                             new LinkedHashSet<String>());
     assertEquals(searchOperation.getResultCode(), ResultCode.SUCCESS);
@@ -855,7 +856,7 @@
          InternalClientConnection.getRootConnection();
     InternalSearchOperation searchOperation =
          conn.processSearch(ByteString.valueOf(""), SearchScope.BASE_OBJECT,
-                            DereferencePolicy.NEVER_DEREF_ALIASES, 0, 0, false,
+                            DereferenceAliasesPolicy.NEVER, 0, 0, false,
                             LDAPFilter.decode("(objectClass=*)"),
                             new LinkedHashSet<String>(), searchListener);
     assertEquals(searchOperation.getResultCode(), ResultCode.SUCCESS);
@@ -901,7 +902,7 @@
          InternalClientConnection.getRootConnection();
     InternalSearchOperation searchOperation =
          conn.processSearch(DN.rootDN(), SearchScope.BASE_OBJECT,
-              DereferencePolicy.NEVER_DEREF_ALIASES, 0, 0, false,
+              DereferenceAliasesPolicy.NEVER, 0, 0, false,
               SearchFilter.createFilterFromString("(objectClass=*)"),
               new LinkedHashSet<String>());
     assertEquals(searchOperation.getResultCode(), ResultCode.SUCCESS);
@@ -929,7 +930,7 @@
          InternalClientConnection.getRootConnection();
     InternalSearchOperation searchOperation =
          conn.processSearch(DN.rootDN(), SearchScope.BASE_OBJECT,
-              DereferencePolicy.NEVER_DEREF_ALIASES, 0, 0, false,
+              DereferenceAliasesPolicy.NEVER, 0, 0, false,
               SearchFilter.createFilterFromString("(objectClass=*)"),
               new LinkedHashSet<String>(), searchListener);
     assertEquals(searchOperation.getResultCode(), ResultCode.SUCCESS);
diff --git a/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/protocols/internal/InternalLDAPSocketTestCase.java b/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/protocols/internal/InternalLDAPSocketTestCase.java
index 5b84654..b1e72c9 100644
--- a/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/protocols/internal/InternalLDAPSocketTestCase.java
+++ b/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/protocols/internal/InternalLDAPSocketTestCase.java
@@ -50,7 +50,7 @@
 import org.opends.server.tools.LDAPReader;
 import org.opends.server.tools.LDAPWriter;
 import org.opends.server.types.DN;
-import org.opends.server.types.DereferencePolicy;
+import org.forgerock.opendj.ldap.DereferenceAliasesPolicy;
 import org.opends.server.types.RawAttribute;
 import org.opends.server.types.RawModification;
 import org.testng.annotations.BeforeClass;
@@ -600,7 +600,7 @@
     SearchRequestProtocolOp searchRequest =
          new SearchRequestProtocolOp(ByteString.valueOf("o=test"),
                                      SearchScope.BASE_OBJECT,
-                                     DereferencePolicy.NEVER_DEREF_ALIASES,
+                                     DereferenceAliasesPolicy.NEVER,
                                      0, 0, false,
                                      LDAPFilter.decode("(objectClass=*)"),
                                      new LinkedHashSet<String>());
diff --git a/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/protocols/internal/InternalSearchOperationTestCase.java b/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/protocols/internal/InternalSearchOperationTestCase.java
index 883cc61..9be5674 100644
--- a/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/protocols/internal/InternalSearchOperationTestCase.java
+++ b/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/protocols/internal/InternalSearchOperationTestCase.java
@@ -30,6 +30,7 @@
 import java.util.LinkedHashSet;
 
 import org.forgerock.opendj.ldap.ByteString;
+import org.forgerock.opendj.ldap.DereferenceAliasesPolicy;
 import org.forgerock.opendj.ldap.SearchScope;
 import org.opends.server.TestCaseUtils;
 import org.opends.server.protocols.ldap.LDAPFilter;
@@ -76,7 +77,7 @@
     new InternalSearchOperation(conn, InternalClientConnection.nextOperationID(),
                                 InternalClientConnection.nextMessageID(), new ArrayList<Control>(),
                                 ByteString.empty(), SearchScope.BASE_OBJECT,
-                                DereferencePolicy.NEVER_DEREF_ALIASES, 0, 0,
+                                DereferenceAliasesPolicy.NEVER, 0, 0,
                                 false, LDAPFilter.decode("(objectClass=*)"),
                                 new LinkedHashSet<String>(), null);
   }
@@ -98,7 +99,7 @@
     new InternalSearchOperation(conn, InternalClientConnection.nextOperationID(),
                                 InternalClientConnection.nextMessageID(), new ArrayList<Control>(),
                                 ByteString.empty(), SearchScope.BASE_OBJECT,
-                                DereferencePolicy.NEVER_DEREF_ALIASES, 0, 0,
+                                DereferenceAliasesPolicy.NEVER, 0, 0,
                                 false, LDAPFilter.decode("(objectClass=*)"),
                                 new LinkedHashSet<String>(),
                                 new TestInternalSearchListener());
@@ -124,7 +125,7 @@
     new InternalSearchOperation(conn, InternalClientConnection.nextOperationID(),
                                 InternalClientConnection.nextMessageID(), new ArrayList<Control>(),
                                 DN.rootDN(), SearchScope.BASE_OBJECT,
-                                DereferencePolicy.NEVER_DEREF_ALIASES, 0, 0,
+                                DereferenceAliasesPolicy.NEVER, 0, 0,
                                 false, searchFilter,
                                 new LinkedHashSet<String>(), null);
   }
@@ -149,7 +150,7 @@
     new InternalSearchOperation(conn, InternalClientConnection.nextOperationID(),
                                 InternalClientConnection.nextMessageID(), new ArrayList<Control>(),
                                 DN.rootDN(), SearchScope.BASE_OBJECT,
-                                DereferencePolicy.NEVER_DEREF_ALIASES, 0, 0,
+                                DereferenceAliasesPolicy.NEVER, 0, 0,
                                 false, searchFilter,
                                 new LinkedHashSet<String>(),
                                 new TestInternalSearchListener());
@@ -196,7 +197,7 @@
                                      new ArrayList<Control>(),
                                      ByteString.empty(),
                                      SearchScope.BASE_OBJECT,
-                                     DereferencePolicy.NEVER_DEREF_ALIASES, 0,
+                                     DereferenceAliasesPolicy.NEVER, 0,
                                      0, false,
                                      LDAPFilter.decode("(objectClass=*)"),
                                      new LinkedHashSet<String>(), null);
@@ -226,7 +227,7 @@
                                      new ArrayList<Control>(),
                                      ByteString.empty(),
                                      SearchScope.BASE_OBJECT,
-                                     DereferencePolicy.NEVER_DEREF_ALIASES, 0,
+                                     DereferenceAliasesPolicy.NEVER, 0,
                                      0, false,
                                      LDAPFilter.decode("(objectClass=*)"),
                                      new LinkedHashSet<String>(),
@@ -257,7 +258,7 @@
                                      new ArrayList<Control>(),
                                      ByteString.empty(),
                                      SearchScope.BASE_OBJECT,
-                                     DereferencePolicy.NEVER_DEREF_ALIASES, 0,
+                                     DereferenceAliasesPolicy.NEVER, 0,
                                      0, false,
                                      LDAPFilter.decode("(objectClass=*)"),
                                      new LinkedHashSet<String>(), null);
@@ -286,7 +287,7 @@
                                      new ArrayList<Control>(),
                                      ByteString.empty(),
                                      SearchScope.BASE_OBJECT,
-                                     DereferencePolicy.NEVER_DEREF_ALIASES, 0,
+                                     DereferenceAliasesPolicy.NEVER, 0,
                                      0, false,
                                      LDAPFilter.decode("(objectClass=*)"),
                                      new LinkedHashSet<String>(),
diff --git a/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/protocols/jmx/JmxPrivilegeTestCase.java b/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/protocols/jmx/JmxPrivilegeTestCase.java
index 0373fea..8b1a6b8 100644
--- a/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/protocols/jmx/JmxPrivilegeTestCase.java
+++ b/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/protocols/jmx/JmxPrivilegeTestCase.java
@@ -35,6 +35,7 @@
 
 import org.forgerock.i18n.LocalizableMessage;
 import org.forgerock.opendj.ldap.ByteString;
+import org.forgerock.opendj.ldap.DereferenceAliasesPolicy;
 import org.forgerock.opendj.ldap.ModificationType;
 import org.forgerock.opendj.ldap.SearchScope;
 import org.opends.server.TestCaseUtils;
@@ -1254,7 +1255,7 @@
          new InternalSearchOperation(conn, conn.nextOperationID(),
                   conn.nextMessageID(), controls, targetDN,
                   SearchScope.BASE_OBJECT,
-                  DereferencePolicy.NEVER_DEREF_ALIASES, 0, 0, false,
+                  DereferenceAliasesPolicy.NEVER, 0, 0, false,
                   SearchFilter.createFilterFromString("(objectClass=*)"), null,
                   null);
     searchOperation.run();
@@ -1461,7 +1462,7 @@
          new InternalSearchOperation(conn, conn.nextOperationID(),
                   conn.nextMessageID(), controls, targetDN,
                   SearchScope.BASE_OBJECT,
-                  DereferencePolicy.NEVER_DEREF_ALIASES, 0, 0, false,
+                  DereferenceAliasesPolicy.NEVER, 0, 0, false,
                   SearchFilter.createFilterFromString("(objectClass=*)"), null,
                   null);
     searchOperation.run();
diff --git a/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/protocols/ldap/LDAPBinaryOptionTestCase.java b/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/protocols/ldap/LDAPBinaryOptionTestCase.java
index 4882e73..c4239e4 100644
--- a/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/protocols/ldap/LDAPBinaryOptionTestCase.java
+++ b/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/protocols/ldap/LDAPBinaryOptionTestCase.java
@@ -35,6 +35,7 @@
 import java.util.List;
 
 import org.forgerock.opendj.ldap.ByteString;
+import org.forgerock.opendj.ldap.DereferenceAliasesPolicy;
 import org.forgerock.opendj.ldap.SearchScope;
 import org.opends.server.TestCaseUtils;
 import org.opends.server.api.Backend;
@@ -205,7 +206,7 @@
               new ArrayList<Control>(),
               ByteString.valueOf("o=test"),
               SearchScope.WHOLE_SUBTREE,
-              DereferencePolicy.NEVER_DEREF_ALIASES,
+              DereferenceAliasesPolicy.NEVER,
               Integer.MAX_VALUE,
               Integer.MAX_VALUE,
               false,
@@ -247,7 +248,7 @@
               new ArrayList<Control>(),
               ByteString.valueOf("o=test"),
               SearchScope.WHOLE_SUBTREE,
-              DereferencePolicy.NEVER_DEREF_ALIASES,
+              DereferenceAliasesPolicy.NEVER,
               Integer.MAX_VALUE,
               Integer.MAX_VALUE,
               false,
@@ -318,7 +319,7 @@
       SearchRequestProtocolOp searchRequest =
          new SearchRequestProtocolOp(ByteString.valueOf("o=test"),
                                      SearchScope.WHOLE_SUBTREE,
-                                     DereferencePolicy.NEVER_DEREF_ALIASES, 0,
+                                     DereferenceAliasesPolicy.NEVER, 0,
                                      0, false,
                                      LDAPFilter.decode("(uid=user.7)"),
                                      attrs);
@@ -327,7 +328,7 @@
 
       SearchResultEntryProtocolOp searchResultEntry = null;
       SearchResultDoneProtocolOp searchResultDone = null;
-      while (searchResultDone == null && message != null)
+      while (searchResultDone == null)
       {
         message = r.readMessage();
         switch (message.getProtocolOpType())
diff --git a/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/protocols/ldap/LDAPv2TestCase.java b/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/protocols/ldap/LDAPv2TestCase.java
index 11cc446..aee5049 100644
--- a/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/protocols/ldap/LDAPv2TestCase.java
+++ b/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/protocols/ldap/LDAPv2TestCase.java
@@ -35,7 +35,7 @@
 import org.opends.server.TestCaseUtils;
 import org.opends.server.tools.LDAPWriter;
 import org.opends.server.types.Control;
-import org.opends.server.types.DereferencePolicy;
+import org.forgerock.opendj.ldap.DereferenceAliasesPolicy;
 import org.opends.server.types.RawAttribute;
 import org.opends.server.types.RawModification;
 import org.opends.server.util.StaticUtils;
@@ -481,7 +481,7 @@
       SearchRequestProtocolOp searchRequest =
            new SearchRequestProtocolOp(ByteString.empty(),
                     SearchScope.BASE_OBJECT,
-                    DereferencePolicy.NEVER_DEREF_ALIASES, 0, 0, false,
+                    DereferenceAliasesPolicy.NEVER, 0, 0, false,
                     LDAPFilter.decode("(objectClass=*)"), null);
       ArrayList<Control> controls = new ArrayList<Control>(1);
       controls.add(new LDAPControl(OID_MANAGE_DSAIT_CONTROL, true));
diff --git a/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/protocols/ldap/TestSearchProtocolOp.java b/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/protocols/ldap/TestSearchProtocolOp.java
index cda0ddb..68b3528 100644
--- a/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/protocols/ldap/TestSearchProtocolOp.java
+++ b/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/protocols/ldap/TestSearchProtocolOp.java
@@ -35,7 +35,7 @@
 import org.forgerock.opendj.ldap.ByteString;
 import org.forgerock.opendj.ldap.ByteStringBuilder;
 import org.forgerock.opendj.ldap.SearchScope;
-import org.opends.server.types.DereferencePolicy;
+import org.forgerock.opendj.ldap.DereferenceAliasesPolicy;
 import org.opends.server.types.LDAPException;
 import org.testng.annotations.Test;
 
@@ -45,12 +45,13 @@
 /**
  * Test class for LDAP Search protocol operation classes.
  */
+@SuppressWarnings("javadoc")
 public class TestSearchProtocolOp extends LdapTestCase
 {
   private ByteString baseDN = ByteString.valueOf("dc=example,dc=COM");
   private SearchScope scope = SearchScope.WHOLE_SUBTREE;
-  private DereferencePolicy dereferencePolicy =
-      DereferencePolicy.DEREF_IN_SEARCHING;
+  private DereferenceAliasesPolicy dereferencePolicy =
+      DereferenceAliasesPolicy.IN_SEARCHING;
   private int sizeLimit = Integer.MAX_VALUE;
   private int timeLimit = Integer.MAX_VALUE;
   private boolean typesOnly = true;
diff --git a/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/replication/server/ExternalChangeLogTest.java b/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/replication/server/ExternalChangeLogTest.java
index 905a609..e3b6d67 100644
--- a/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/replication/server/ExternalChangeLogTest.java
+++ b/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/replication/server/ExternalChangeLogTest.java
@@ -36,6 +36,7 @@
 import org.assertj.core.api.Assertions;
 import org.forgerock.i18n.slf4j.LocalizedLogger;
 import org.forgerock.opendj.ldap.ByteString;
+import org.forgerock.opendj.ldap.DereferenceAliasesPolicy;
 import org.forgerock.opendj.ldap.ModificationType;
 import org.forgerock.opendj.ldap.SearchScope;
 import org.opends.server.TestCaseUtils;
@@ -889,7 +890,7 @@
       op = connection.processSearch(
           "cn=changelog",
           SearchScope.WHOLE_SUBTREE,
-          DereferencePolicy.NEVER_DEREF_ALIASES,
+          DereferenceAliasesPolicy.NEVER,
           0, // Size limit
           0, // Time limit
           false, // Types only
@@ -1509,7 +1510,7 @@
     return new SearchRequestProtocolOp(
         ByteString.valueOf("cn=changelog"),
         SearchScope.WHOLE_SUBTREE,
-        DereferencePolicy.NEVER_DEREF_ALIASES,
+        DereferenceAliasesPolicy.NEVER,
         Integer.MAX_VALUE,
         Integer.MAX_VALUE,
         false,
@@ -2496,7 +2497,7 @@
     InternalSearchOperation searchOp = connection.processSearch(
             TEST_ROOT_DN_STRING,
             SearchScope.BASE_OBJECT,
-            DereferencePolicy.NEVER_DEREF_ALIASES,
+            DereferenceAliasesPolicy.NEVER,
             0, // Size limit
             0, // Time limit
             false, // Types only
@@ -2569,7 +2570,7 @@
     final InternalSearchOperation searchOp = connection.processSearch(
         "",
         SearchScope.BASE_OBJECT,
-        DereferencePolicy.NEVER_DEREF_ALIASES,
+        DereferenceAliasesPolicy.NEVER,
         0, // Size limit
         0, // Time limit
         false, // Types only
diff --git a/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/replication/server/ReplicationServerTest.java b/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/replication/server/ReplicationServerTest.java
index ae77b18..7d4498e 100644
--- a/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/replication/server/ReplicationServerTest.java
+++ b/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/replication/server/ReplicationServerTest.java
@@ -35,6 +35,7 @@
 
 import org.assertj.core.api.Assertions;
 import org.forgerock.i18n.slf4j.LocalizedLogger;
+import org.forgerock.opendj.ldap.DereferenceAliasesPolicy;
 import org.forgerock.opendj.ldap.ModificationType;
 import org.opends.server.TestCaseUtils;
 import org.opends.server.api.SynchronizationProvider;
@@ -1313,7 +1314,7 @@
        //Test the group membership control causes search to be skipped.
        InternalSearchOperation internalSearch =
           connection.processSearch(baseDN, WHOLE_SUBTREE,
-              DereferencePolicy.NEVER_DEREF_ALIASES, 0, 0, false, filter, null,
+              DereferenceAliasesPolicy.NEVER, 0, 0, false, filter, null,
               requestControls, null);
        assertEquals(internalSearch.getResultCode(), ResultCode.SUCCESS);
        assertTrue(internalSearch.getSearchEntries().isEmpty());
@@ -1373,7 +1374,7 @@
        debugInfo("Query / 1 attrib");
 
       op = connection.processSearch("dc=replicationChanges",
-             WHOLE_SUBTREE, DereferencePolicy.NEVER_DEREF_ALIASES, 0, 0, false,
+             WHOLE_SUBTREE, DereferenceAliasesPolicy.NEVER, 0, 0, false,
               "(changetype=moddn)", singleton("newrdn"));
        assertEquals(op.getResultCode(), ResultCode.SUCCESS);
        assertEquals(op.getSearchEntries().size(), 1);
@@ -1390,7 +1391,7 @@
        debugInfo("Query / All attribs");
 
       op = connection.processSearch("dc=replicationChanges",
-             WHOLE_SUBTREE, DereferencePolicy.NEVER_DEREF_ALIASES, 0, 0, false,
+             WHOLE_SUBTREE, DereferenceAliasesPolicy.NEVER, 0, 0, false,
               "(changetype=*)", singleton("*"));
        assertEquals(op.getResultCode(), ResultCode.SUCCESS);
        assertEquals(op.getSearchEntries().size(), 5);
diff --git a/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/schema/AttributeTypeSyntaxTest.java b/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/schema/AttributeTypeSyntaxTest.java
index 86a1def..37d0e66 100644
--- a/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/schema/AttributeTypeSyntaxTest.java
+++ b/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/schema/AttributeTypeSyntaxTest.java
@@ -40,7 +40,7 @@
 import org.opends.server.protocols.internal.InternalSearchOperation;
 import org.opends.server.protocols.ldap.LDAPFilter;
 import org.opends.server.types.Control;
-import org.opends.server.types.DereferencePolicy;
+import org.forgerock.opendj.ldap.DereferenceAliasesPolicy;
 import org.forgerock.opendj.ldap.ResultCode;
 import org.forgerock.opendj.ldap.SearchScope;
 
@@ -233,7 +233,7 @@
             new ArrayList<Control>(),
             ByteString.valueOf("cn=gvrightstest,o=test"),
             SearchScope.WHOLE_SUBTREE,
-            DereferencePolicy.NEVER_DEREF_ALIASES,
+            DereferenceAliasesPolicy.NEVER,
             Integer.MAX_VALUE,
             Integer.MAX_VALUE,
             false,
diff --git a/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/schema/CollationMatchingRuleTest.java b/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/schema/CollationMatchingRuleTest.java
index 95c3c5d..a1915eb 100644
--- a/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/schema/CollationMatchingRuleTest.java
+++ b/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/schema/CollationMatchingRuleTest.java
@@ -24,8 +24,6 @@
  *      Copyright 2008-2009 Sun Microsystems, Inc.
  *      Portions Copyright 2014 ForgeRock AS
  */
-
-
 package org.opends.server.schema;
 
 import java.util.ArrayList;
@@ -43,7 +41,7 @@
 import org.forgerock.opendj.ldap.ByteString;
 import org.opends.server.types.Control;
 import org.opends.server.types.DN;
-import org.opends.server.types.DereferencePolicy;
+import org.forgerock.opendj.ldap.DereferenceAliasesPolicy;
 import org.opends.server.types.Entry;
 import org.forgerock.opendj.ldap.ResultCode;
 import org.opends.server.types.SearchFilter;
@@ -52,7 +50,6 @@
 import org.testng.annotations.BeforeClass;
 import org.testng.annotations.Test;
 
-
 /**
  * This Test Class tests various collation matching rules.
  */
@@ -131,7 +128,7 @@
               null,
               ByteString.valueOf("uid=user,o=test"),
               SearchScope.WHOLE_SUBTREE,
-              DereferencePolicy.NEVER_DEREF_ALIASES,
+              DereferenceAliasesPolicy.NEVER,
               Integer.MAX_VALUE,
               Integer.MAX_VALUE,
               false,
@@ -168,7 +165,7 @@
               null,
               ByteString.valueOf("uid=user,o=test"),
               SearchScope.WHOLE_SUBTREE,
-              DereferencePolicy.NEVER_DEREF_ALIASES,
+              DereferenceAliasesPolicy.NEVER,
               Integer.MAX_VALUE,
               Integer.MAX_VALUE,
               false,
@@ -204,12 +201,11 @@
               null,
               ByteString.valueOf("uid=user,o=test"),
               SearchScope.WHOLE_SUBTREE,
-              DereferencePolicy.NEVER_DEREF_ALIASES,
+              DereferenceAliasesPolicy.NEVER,
               Integer.MAX_VALUE,
               Integer.MAX_VALUE,
               false,
-              LDAPFilter.
-              decode("departmentnumber:1.3.6.1.4.1.42.2.27.9.4.49.1.1:=abc120"),
+              LDAPFilter.decode("departmentnumber:1.3.6.1.4.1.42.2.27.9.4.49.1.1:=abc120"),
               null, null);
 
     searchOperation.run();
@@ -242,12 +238,11 @@
               null,
               ByteString.valueOf("uid=user,o=test"),
               SearchScope.WHOLE_SUBTREE,
-              DereferencePolicy.NEVER_DEREF_ALIASES,
+              DereferenceAliasesPolicy.NEVER,
               Integer.MAX_VALUE,
               Integer.MAX_VALUE,
               false,
-              LDAPFilter.
-              decode("carLicense:fr.2:=ebe2"),
+              LDAPFilter.decode("carLicense:fr.2:=ebe2"),
               null, null);
 
     searchOperation.run();
@@ -280,12 +275,11 @@
               null,
               ByteString.valueOf("uid=user,o=test"),
               SearchScope.WHOLE_SUBTREE,
-              DereferencePolicy.NEVER_DEREF_ALIASES,
+              DereferenceAliasesPolicy.NEVER,
               Integer.MAX_VALUE,
               Integer.MAX_VALUE,
               false,
-              LDAPFilter.
-              decode("carLicense:fr.5:=ebe1"),
+              LDAPFilter.decode("carLicense:fr.5:=ebe1"),
               null, null);
 
     searchOperation.run();
@@ -318,12 +312,11 @@
               null,
               ByteString.valueOf("uid=user,o=test"),
               SearchScope.WHOLE_SUBTREE,
-              DereferencePolicy.NEVER_DEREF_ALIASES,
+              DereferenceAliasesPolicy.NEVER,
               Integer.MAX_VALUE,
               Integer.MAX_VALUE,
               false,
-              LDAPFilter.
-              decode("departmentnumber:es.4:=abc111"),
+              LDAPFilter.decode("departmentnumber:es.4:=abc111"),
               null, null);
 
     searchOperation.run();
@@ -359,12 +352,11 @@
               null,
               ByteString.valueOf("uid=user,o=test"),
               SearchScope.WHOLE_SUBTREE,
-              DereferencePolicy.NEVER_DEREF_ALIASES,
+              DereferenceAliasesPolicy.NEVER,
               Integer.MAX_VALUE,
               Integer.MAX_VALUE,
               false,
-              LDAPFilter.
-              decode("sn:en.6:=*u*bec"),
+              LDAPFilter.decode("sn:en.6:=*u*bec"),
               null, null);
 
     searchOperation.run();
@@ -478,7 +470,7 @@
          new InternalSearchOperation(conn, InternalClientConnection.nextOperationID(),
                   InternalClientConnection.nextMessageID(), requestControls,
                   DN.valueOf("dc=example,dc=com"), SearchScope.WHOLE_SUBTREE,
-                  DereferencePolicy.NEVER_DEREF_ALIASES, 0, 0, false,
+                  DereferenceAliasesPolicy.NEVER, 0, 0, false,
                   SearchFilter.createFilterFromString(searchFilter),
                   null, null);
 
diff --git a/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/schema/LDAPSyntaxTest.java b/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/schema/LDAPSyntaxTest.java
index f88aaf8..c464df9 100644
--- a/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/schema/LDAPSyntaxTest.java
+++ b/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/schema/LDAPSyntaxTest.java
@@ -41,7 +41,7 @@
 import org.opends.server.types.AttributeValue;
 import org.forgerock.opendj.ldap.ByteString;
 import org.opends.server.types.DN;
-import org.opends.server.types.DereferencePolicy;
+import org.forgerock.opendj.ldap.DereferenceAliasesPolicy;
 import org.opends.server.types.Entry;
 import org.forgerock.opendj.ldap.ResultCode;
 import org.opends.server.types.SearchResultEntry;
@@ -238,7 +238,7 @@
                 null,
                 ByteString.valueOf("cn=schema"),
                 SearchScope.WHOLE_SUBTREE,
-                DereferencePolicy.NEVER_DEREF_ALIASES,
+                DereferenceAliasesPolicy.NEVER,
                 Integer.MAX_VALUE,
                 Integer.MAX_VALUE,
                 false,
@@ -404,7 +404,7 @@
                 null,
                 ByteString.valueOf("cn=test,o=test"),
                 SearchScope.WHOLE_SUBTREE,
-                DereferencePolicy.NEVER_DEREF_ALIASES,
+                DereferenceAliasesPolicy.NEVER,
                 Integer.MAX_VALUE,
                 Integer.MAX_VALUE,
                 false,
@@ -507,7 +507,7 @@
                 null,
                 ByteString.valueOf("cn=test,o=test"),
                 SearchScope.WHOLE_SUBTREE,
-                DereferencePolicy.NEVER_DEREF_ALIASES,
+                DereferenceAliasesPolicy.NEVER,
                 Integer.MAX_VALUE,
                 Integer.MAX_VALUE,
                 false,
@@ -575,7 +575,7 @@
                 null,
                 ByteString.valueOf("o=test"),
                 SearchScope.WHOLE_SUBTREE,
-                DereferencePolicy.NEVER_DEREF_ALIASES,
+                DereferenceAliasesPolicy.NEVER,
                 Integer.MAX_VALUE,
                 Integer.MAX_VALUE,
                 false,
diff --git a/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/schema/StringPrepProfileTestCase.java b/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/schema/StringPrepProfileTestCase.java
index 29880bf..2163e97 100644
--- a/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/schema/StringPrepProfileTestCase.java
+++ b/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/schema/StringPrepProfileTestCase.java
@@ -38,7 +38,7 @@
 import org.opends.server.protocols.internal.InternalSearchOperation;
 import org.opends.server.protocols.ldap.LDAPFilter;
 import org.forgerock.opendj.ldap.ByteString;
-import org.opends.server.types.DereferencePolicy;
+import org.forgerock.opendj.ldap.DereferenceAliasesPolicy;
 import org.forgerock.opendj.ldap.ResultCode;
 import org.opends.server.types.SearchResultEntry;
 import org.forgerock.opendj.ldap.SearchScope;
@@ -105,7 +105,7 @@
         null,
         ByteString.valueOf("dc=  example,dc=com"),
         SearchScope.WHOLE_SUBTREE,
-        DereferencePolicy.NEVER_DEREF_ALIASES,
+        DereferenceAliasesPolicy.NEVER,
         Integer.MAX_VALUE,
         Integer.MAX_VALUE,
         false,
diff --git a/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/schema/TimeBasedMatchingRuleTest.java b/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/schema/TimeBasedMatchingRuleTest.java
index bed0670..ab03de1 100644
--- a/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/schema/TimeBasedMatchingRuleTest.java
+++ b/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/schema/TimeBasedMatchingRuleTest.java
@@ -44,7 +44,7 @@
 import org.forgerock.opendj.ldap.ByteString;
 import org.forgerock.opendj.ldap.ConditionResult;
 import org.opends.server.types.DN;
-import org.opends.server.types.DereferencePolicy;
+import org.forgerock.opendj.ldap.DereferenceAliasesPolicy;
 import org.opends.server.types.DirectoryException;
 import org.forgerock.opendj.ldap.ResultCode;
 import org.opends.server.types.SearchResultEntry;
@@ -138,7 +138,7 @@
                 null,
                 ByteString.valueOf("dc=example,dc=com"),
                 SearchScope.WHOLE_SUBTREE,
-                DereferencePolicy.NEVER_DEREF_ALIASES,
+                DereferenceAliasesPolicy.NEVER,
                 Integer.MAX_VALUE,
                 Integer.MAX_VALUE,
                 false,
@@ -178,7 +178,7 @@
                 null,
                 ByteString.valueOf("dc=example,dc=com"),
                 SearchScope.WHOLE_SUBTREE,
-                DereferencePolicy.NEVER_DEREF_ALIASES,
+                DereferenceAliasesPolicy.NEVER,
                 Integer.MAX_VALUE,
                 Integer.MAX_VALUE,
                 false,
@@ -218,7 +218,7 @@
                 null,
                 ByteString.valueOf("dc=example,dc=com"),
                 SearchScope.WHOLE_SUBTREE,
-                DereferencePolicy.NEVER_DEREF_ALIASES,
+                DereferenceAliasesPolicy.NEVER,
                 Integer.MAX_VALUE,
                 Integer.MAX_VALUE,
                 false,
@@ -258,7 +258,7 @@
                 null,
                 ByteString.valueOf("dc=example,dc=com"),
                 SearchScope.WHOLE_SUBTREE,
-                DereferencePolicy.NEVER_DEREF_ALIASES,
+                DereferenceAliasesPolicy.NEVER,
                 Integer.MAX_VALUE,
                 Integer.MAX_VALUE,
                 false,
@@ -301,7 +301,7 @@
                 null,
                 ByteString.valueOf("dc=example,dc=com"),
                 SearchScope.WHOLE_SUBTREE,
-                DereferencePolicy.NEVER_DEREF_ALIASES,
+                DereferenceAliasesPolicy.NEVER,
                 Integer.MAX_VALUE,
                 Integer.MAX_VALUE,
                 false,
diff --git a/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/types/PrivilegeTestCase.java b/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/types/PrivilegeTestCase.java
index 17f2eb2..7d10975 100644
--- a/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/types/PrivilegeTestCase.java
+++ b/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/types/PrivilegeTestCase.java
@@ -34,6 +34,7 @@
 import java.util.concurrent.CopyOnWriteArraySet;
 
 import org.forgerock.opendj.ldap.ByteString;
+import org.forgerock.opendj.ldap.DereferenceAliasesPolicy;
 import org.forgerock.opendj.ldap.ModificationType;
 import org.forgerock.opendj.ldap.ResultCode;
 import org.forgerock.opendj.ldap.SearchScope;
@@ -1346,7 +1347,7 @@
     InternalSearchOperation searchOperation = new InternalSearchOperation(conn,
                   nextOperationID(), nextMessageID(), controls, targetDN,
                   SearchScope.BASE_OBJECT,
-                  DereferencePolicy.NEVER_DEREF_ALIASES, 0, 0, false,
+                  DereferenceAliasesPolicy.NEVER, 0, 0, false,
                   SearchFilter.createFilterFromString("(objectClass=*)"), null,
                   null);
     searchOperation.run();
@@ -1498,7 +1499,7 @@
     InternalSearchOperation searchOperation = new InternalSearchOperation(conn, nextOperationID(),
                   nextMessageID(), controls, targetDN,
                   SearchScope.BASE_OBJECT,
-                  DereferencePolicy.NEVER_DEREF_ALIASES, 0, 0, false,
+                  DereferenceAliasesPolicy.NEVER, 0, 0, false,
                   SearchFilter.createFilterFromString("(objectClass=*)"), null,
                   null);
     searchOperation.run();

--
Gitblit v1.10.0