From cdf0824f7b95989818b85ea579758a7980889b05 Mon Sep 17 00:00:00 2001
From: Jean-Noel Rouvignac <jean-noel.rouvignac@forgerock.com>
Date: Wed, 15 Oct 2014 14:43:02 +0000
Subject: [PATCH] (CR-4811) Converted opendj3 code to use SearchRequest like API
---
opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/protocols/ldap/LDAPv2TestCase.java | 2
opendj-sdk/opendj3-server-dev/src/server/org/opends/server/protocols/internal/Requests.java | 14
opendj-sdk/opendj3-server-dev/src/server/org/opends/server/protocols/internal/InternalClientConnection.java | 85 --
opendj-sdk/opendj3-server-dev/src/server/org/opends/server/types/SearchFilter.java | 30
opendj-sdk/opendj3-server-dev/src/server/org/opends/server/authorization/dseecompat/UserAttr.java | 109 +-
opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/tasks/TasksTestCase.java | 4
opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/core/SubentryManagerTestCase.java | 25
opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/protocols/internal/InternalSearchOperationTestCase.java | 38
opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/StructuralObjectClassVirtualAttributeProviderTestCase.java | 6
opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/EntryUUIDVirtualAttributeProviderTestCase.java | 154 +--
opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/protocols/ldap/TestSearchProtocolOp.java | 9
opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/GoverningStructureRuleVirtualAttributeProviderTestCase.java | 52 -
opendj-sdk/opendj3-server-dev/src/server/org/opends/server/extensions/PasswordPolicyStateExtendedOperation.java | 12
opendj-sdk/opendj3-server-dev/src/server/org/opends/server/types/LDAPURL.java | 6
opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/backends/ChangelogBackendTestCase.java | 5
opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/core/networkgroups/RequestFilteringPolicyTest.java | 31
opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/protocols/jmx/JmxPrivilegeTestCase.java | 10
opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/protocols/internal/InternalLDAPSocketTestCase.java | 2
opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/EntryDNVirtualAttributeProviderTestCase.java | 4
opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/SubschemaSubentryVirtualAttributeProviderTestCase.java | 19
opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/core/SearchOperationTestCase.java | 288 +------
opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/protocols/internal/InternalClientConnectionTestCase.java | 15
opendj-sdk/opendj3-server-dev/src/dsml/org/opends/dsml/protocol/DSMLServlet.java | 7
opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/backends/jeb/TestBackendImpl.java | 19
opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/HasSubordinatesVirtualAttributeProviderTestCase.java | 5
opendj-sdk/opendj3-server-dev/src/server/org/opends/server/admin/AdministrationDataSync.java | 7
opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/replication/InitOnLineTest.java | 2
opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/backends/jeb/TestVLVIndex.java | 619 +++------------
opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/types/VirtualAttributeRuleTestCase.java | 2
opendj-sdk/opendj3-server-dev/src/messages/messages/replication_es.properties | 1
opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/types/PrivilegeTestCase.java | 15
opendj-sdk/opendj3-server-dev/src/server/org/opends/server/replication/plugin/LDAPReplicationDomain.java | 105 +-
opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/TraditionalWorkQueueTestCase.java | 12
opendj-sdk/opendj3-server-dev/src/messages/messages/replication_de.properties | 1
opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/EntityTagVirtualAttributeProviderTestCase.java | 105 +-
opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/replication/ReplicationTestCase.java | 8
opendj-sdk/opendj3-server-dev/src/server/org/opends/server/protocols/ldap/LDAPFilter.java | 26
opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/NumSubordinatesVirtualAttributeProviderTestCase.java | 59
opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/LDAPPassThroughAuthenticationPolicyTestCase.java | 3
opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/PasswordExpirationTimeVirtualAttributeProviderTestCase.java | 2
opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/replication/ProtocolWindowTest.java | 15
opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/core/GroupManagerTestCase.java | 46
opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/VirtualStaticGroupTestCase.java | 6
opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/backends/SchemaBackendTestCase.java | 3
opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/plugins/LDAPADListPluginTestCase.java | 38
opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/controls/PersistentSearchControlTest.java | 2
opendj-sdk/opendj3-server-dev/src/server/org/opends/server/config/JMXMBean.java | 32
opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/backends/LDIFBackendTestCase.java | 39
opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/core/networkgroups/NetworkGroupTest.java | 8
opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/monitors/InternalSearchMonitorTestCase.java | 24
opendj-sdk/opendj3-server-dev/src/messages/messages/replication_fr.properties | 1
opendj-sdk/opendj3-server-dev/src/server/org/opends/server/replication/server/ReplicationServer.java | 3
opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/controls/PasswordPolicyControlTestCase.java | 5
opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/UserDefinedVirtualAttributeProviderTestCase.java | 22
opendj-sdk/opendj3-server-dev/src/messages/messages/replication.properties | 2
opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/core/BackendConfigManagerTestCase.java | 6
opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/core/WorkflowConfigurationTest.java | 50
opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/core/networkgroups/ResourceLimitsPolicyTest.java | 4
opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/ExtensionTestUtils.java | 63 -
59 files changed, 709 insertions(+), 1,578 deletions(-)
diff --git a/opendj-sdk/opendj3-server-dev/src/dsml/org/opends/dsml/protocol/DSMLServlet.java b/opendj-sdk/opendj3-server-dev/src/dsml/org/opends/dsml/protocol/DSMLServlet.java
index 9eb3b56..3e8db08 100644
--- a/opendj-sdk/opendj3-server-dev/src/dsml/org/opends/dsml/protocol/DSMLServlet.java
+++ b/opendj-sdk/opendj3-server-dev/src/dsml/org/opends/dsml/protocol/DSMLServlet.java
@@ -272,10 +272,9 @@
try
{
SearchRequestProtocolOp protocolOp = new SearchRequestProtocolOp(
- ByteString.wrap(new byte[]{}), SearchScope.BASE_OBJECT,
- DereferenceAliasesPolicy.NEVER,
- 0, 0,
- true, LDAPFilter.decode("(objectClass=*)"), attributes);
+ ByteString.empty(), SearchScope.BASE_OBJECT,
+ DereferenceAliasesPolicy.NEVER, 0, 0, true,
+ LDAPFilter.objectClassPresent(), attributes);
byte opType;
LDAPMessage msg =
new LDAPMessage(DSMLServlet.nextMessageID(), protocolOp, controls);
diff --git a/opendj-sdk/opendj3-server-dev/src/messages/messages/replication.properties b/opendj-sdk/opendj3-server-dev/src/messages/messages/replication.properties
index e3561a3..97fa2f5 100644
--- a/opendj-sdk/opendj3-server-dev/src/messages/messages/replication.properties
+++ b/opendj-sdk/opendj3-server-dev/src/messages/messages/replication.properties
@@ -121,8 +121,6 @@
conflict information could not be added. Operation: %s, Result: %s
ERR_CANNOT_RENAME_CONFLICT_ENTRY_58=An error happened trying to \
rename a conflicting entry. DN: %s, Operation: %s, Result: %s
-ERR_EXCEPTION_RENAME_CONFLICT_ENTRY_59=An Exception happened when \
- trying to rename a conflicting entry. DN: %s, Operation: %s, Stacktrace: %s
ERR_REPLICATION_COULD_NOT_CONNECT_61=The Replication is configured for \
suffix %s but was not able to connect to any Replication Server
ERR_CHANGELOG_ERROR_SENDING_ERROR_65=An unexpected error occurred \
diff --git a/opendj-sdk/opendj3-server-dev/src/messages/messages/replication_de.properties b/opendj-sdk/opendj3-server-dev/src/messages/messages/replication_de.properties
index 8746e92..e572ffe 100644
--- a/opendj-sdk/opendj3-server-dev/src/messages/messages/replication_de.properties
+++ b/opendj-sdk/opendj3-server-dev/src/messages/messages/replication_de.properties
@@ -88,7 +88,6 @@
ERR_BAD_HISTORICAL_56=Eintrag %s hat einige unbekannte historische Informatinoen enthalten. Dadurch k\u00f6nnen Inkonsistenzen f\u00fcr diesen Eintrag auftreten
ERR_CANNOT_ADD_CONFLICT_ATTRIBUTE_57=Es wurde ein Konflikt entdeckt, aber die Konfliktinformationen konnten nicht hinzugef\u00fcgt werden. Vorgang: %s, Ergebnis: %s
ERR_CANNOT_RENAME_CONFLICT_ENTRY_58=Bei dem Versuch, einen widerspr\u00fcchlichen Eintrag umzubenennen, ist ein Fehler aufgetreten. DN: %s, Vorgang: %s, Ergebnis: %s
-ERR_EXCEPTION_RENAME_CONFLICT_ENTRY_59=Bei dem Versuch, einen widerspr\u00fcchlichen Eintrag umzubenennen, ist ein Ausnahmefehler aufgetreten. DN: %s, Vorgang: %s, Stacktrace: %s
ERR_REPLICATION_COULD_NOT_CONNECT_61=Die Replikation ist f\u00fcr Suffix %s konfiguriert, konnte jedoch keine Verbindung zu einem Replikationsserver herstellen
ERR_CHANGELOG_ERROR_SENDING_ERROR_65=Beim Senden einer Fehlernachricht an %s ist ein unerwarteter Fehler aufgetreten. Diese Verbindung wird geschlossen und erneut ge\u00f6ffnet
ERR_CHANGELOG_ERROR_SENDING_MSG_66=Beim Senden einer Nachricht an %s ist ein unerwarteter Fehler aufgetreten. Diese Verbindung wird geschlossen und erneut ge\u00f6ffnet
diff --git a/opendj-sdk/opendj3-server-dev/src/messages/messages/replication_es.properties b/opendj-sdk/opendj3-server-dev/src/messages/messages/replication_es.properties
index 8606cb87..612fd36 100644
--- a/opendj-sdk/opendj3-server-dev/src/messages/messages/replication_es.properties
+++ b/opendj-sdk/opendj3-server-dev/src/messages/messages/replication_es.properties
@@ -88,7 +88,6 @@
ERR_BAD_HISTORICAL_56=La entrada %s conten\u00eda informaci\u00f3n hist\u00f3rica desconocida. Es posible que esto genere incoherencias con respecto a esta entrada
ERR_CANNOT_ADD_CONFLICT_ATTRIBUTE_57=Se detect\u00f3 un conflicto pero no se pudo agregar su informaci\u00f3n. Operaci\u00f3n: %s, Resultado: %s
ERR_CANNOT_RENAME_CONFLICT_ENTRY_58=Se produjo un error al intentar cambiar el nombre de una entrada contradictoria. DN: %s, Operaci\u00f3n: %s, Resultado: %s
-ERR_EXCEPTION_RENAME_CONFLICT_ENTRY_59=Se produjo una excepci\u00f3n al intentar cambiar el nombre de una entrada contradictoria. DN: %s, Operaci\u00f3n: %s, Stacktrace: %s
ERR_REPLICATION_COULD_NOT_CONNECT_61=La repetici\u00f3n est\u00e1 configurada para el sufijo %s, pero no pudo conectarse con ning\u00fan Servidor de repetici\u00f3n
ERR_CHANGELOG_ERROR_SENDING_ERROR_65=Se ha producido un error inesperado al enviar un mensaje de error a %s. Esta conexi\u00f3n se cerrar\u00e1 y volver\u00e1 a abrirse
ERR_CHANGELOG_ERROR_SENDING_MSG_66=Se ha producido un error inesperado al enviar un mensaje a %s. Esta conexi\u00f3n se cerrar\u00e1 y volver\u00e1 a abrirse
diff --git a/opendj-sdk/opendj3-server-dev/src/messages/messages/replication_fr.properties b/opendj-sdk/opendj3-server-dev/src/messages/messages/replication_fr.properties
index fe36cdf..e91bb3e 100644
--- a/opendj-sdk/opendj3-server-dev/src/messages/messages/replication_fr.properties
+++ b/opendj-sdk/opendj3-server-dev/src/messages/messages/replication_fr.properties
@@ -88,7 +88,6 @@
ERR_BAD_HISTORICAL_56=L'entr\u00e9e %s contenait des informations historiques inconnues, ce qui peut provoquer des incoh\u00e9rences pour cette entr\u00e9e
ERR_CANNOT_ADD_CONFLICT_ATTRIBUTE_57=Un conflit a \u00e9t\u00e9 d\u00e9tect\u00e9 mais des informations sur ce conflit n'ont pas pu \u00eatre ajout\u00e9es. Op\u00e9ration\u00a0: %s, R\u00e9sultat\u00a0: %s
ERR_CANNOT_RENAME_CONFLICT_ENTRY_58=Une erreur s'est produite lors de la tentative de renommage d'une entr\u00e9e conflictuelle. DN\u00a0: %s, Op\u00e9ration\u00a0: %s, R\u00e9sultat\u00a0: %s
-ERR_EXCEPTION_RENAME_CONFLICT_ENTRY_59=Une exception s'est produite lors de la tentative de renommage d'une entr\u00e9e conflictuelle. DN\u00a0: %s, Op\u00e9ration\u00a0: %s, Stacktrace\u00a0: %s
ERR_REPLICATION_COULD_NOT_CONNECT_61=La r\u00e9plication est configur\u00e9e pour le suffixe %s mais n'a pu se connecter \u00e0 aucun serveur de r\u00e9plication
ERR_CHANGELOG_ERROR_SENDING_ERROR_65=Une erreur inattendue s'est produite lors de l'envoi d'un message d'erreur \u00e0 %s. Cette connexion va \u00eatre ferm\u00e9e, puis rouverte
ERR_CHANGELOG_ERROR_SENDING_MSG_66=Une erreur inattendue s'est produite lors de l'envoi d'un message \u00e0 %s. Cette connexion va \u00eatre ferm\u00e9e, puis rouverte
diff --git a/opendj-sdk/opendj3-server-dev/src/server/org/opends/server/admin/AdministrationDataSync.java b/opendj-sdk/opendj3-server-dev/src/server/org/opends/server/admin/AdministrationDataSync.java
index b70a0a0..67328d7 100644
--- a/opendj-sdk/opendj3-server-dev/src/server/org/opends/server/admin/AdministrationDataSync.java
+++ b/opendj-sdk/opendj3-server-dev/src/server/org/opends/server/admin/AdministrationDataSync.java
@@ -46,6 +46,8 @@
import org.opends.server.types.Modification;
import org.opends.server.types.SearchResultEntry;
+import static org.opends.server.protocols.internal.Requests.*;
+
/**
* Check if information found in "cn=admin data" is coherent with
* cn=config. If and inconsistency is detected, we log a warning
@@ -191,9 +193,8 @@
// Look for a local server with the Ldap Port.
try
{
- InternalSearchOperation op = internalConnection.processSearch(
- "cn=Servers,cn=admin data",
- SearchScope.SINGLE_LEVEL, "objectclass=*");
+ SearchRequest request = newSearchRequest(DN.valueOf("cn=Servers,cn=admin data"), SearchScope.SINGLE_LEVEL);
+ InternalSearchOperation op = internalConnection.processSearch(request);
if (op.getResultCode() == ResultCode.SUCCESS)
{
Entry entry = null;
diff --git a/opendj-sdk/opendj3-server-dev/src/server/org/opends/server/authorization/dseecompat/UserAttr.java b/opendj-sdk/opendj3-server-dev/src/server/org/opends/server/authorization/dseecompat/UserAttr.java
index de9cb49..ca94f85 100644
--- a/opendj-sdk/opendj3-server-dev/src/server/org/opends/server/authorization/dseecompat/UserAttr.java
+++ b/opendj-sdk/opendj3-server-dev/src/server/org/opends/server/authorization/dseecompat/UserAttr.java
@@ -35,11 +35,11 @@
import org.opends.server.core.DirectoryServer;
import org.opends.server.protocols.internal.InternalSearchOperation;
import org.opends.server.protocols.internal.SearchRequest;
-import static org.opends.server.protocols.internal.Requests.*;
import org.opends.server.types.*;
import static org.opends.messages.AccessControlMessages.*;
import static org.opends.server.protocols.internal.InternalClientConnection.*;
+import static org.opends.server.protocols.internal.Requests.*;
/*
* TODO Evaluate making this class more efficient.
@@ -59,43 +59,42 @@
* the "#" token.
*/
private enum UserAttrType {
- USERDN, GROUPDN, ROLEDN, URL, VALUE
- }
+ USERDN, GROUPDN, ROLEDN, URL, VALUE;
- /** Filter used internal search. */
- private static SearchFilter filter;
+ private static UserAttrType getType(String expr) throws AciException {
+ if("userdn".equalsIgnoreCase(expr)) {
+ return UserAttrType.USERDN;
+ } else if("groupdn".equalsIgnoreCase(expr)) {
+ return UserAttrType.GROUPDN;
+ } else if("roledn".equalsIgnoreCase(expr)) {
+ return UserAttrType.ROLEDN;
+ } else if("ldapurl".equalsIgnoreCase(expr)) {
+ return UserAttrType.URL;
+ }
+ return UserAttrType.VALUE;
+ }
+ }
/**
* Used to create an attribute type that can compare the value below in
* an entry returned from an internal search.
*/
- private String attrStr=null;
+ private String attrStr;
/**
* Used to compare a attribute value returned from a search against this
* value which might have been defined in the ACI userattr rule.
*/
- private String attrVal=null;
+ private String attrVal;
/** Contains the type of the userattr, one of the above enumerations. */
- private UserAttrType userAttrType=null;
+ private UserAttrType userAttrType;
/** An enumeration representing the bind rule type. */
- private EnumBindRuleType type=null;
+ private EnumBindRuleType type;
/** The class used to hold the parent inheritance information. */
- private ParentInheritance parentInheritance=null;
-
- static {
- /*
- * Set up the filter used to search private and public contexts.
- */
- try {
- filter=SearchFilter.createFilterFromString("(objectclass=*)");
- } catch (DirectoryException ex) {
- //TODO should never happen, error message?
- }
- }
+ private ParentInheritance parentInheritance;
/**
* Create an non-USERDN/GROUPDN instance of the userattr keyword class.
@@ -145,7 +144,7 @@
WARN_ACI_SYNTAX_INVALID_USERATTR_EXPRESSION.get(expression);
throw new AciException(message);
}
- UserAttrType userAttrType=getType(vals[1]);
+ UserAttrType userAttrType = UserAttrType.getType(vals[1]);
switch (userAttrType) {
case GROUPDN:
case USERDN: {
@@ -156,9 +155,7 @@
case ROLEDN: {
//The roledn keyword is not supported. Throw an exception with
//a message if it is seen in the expression.
- LocalizableMessage message =
- WARN_ACI_SYNTAX_ROLEDN_NOT_SUPPORTED.get(expression);
- throw new AciException(message);
+ throw new AciException(WARN_ACI_SYNTAX_ROLEDN_NOT_SUPPORTED.get(expression));
}
}
return new UserAttr(vals[0], vals[1], userAttrType, type);
@@ -205,9 +202,10 @@
EnumEvalResult matched= EnumEvalResult.FALSE;
boolean undefined=false;
AttributeType attrType;
- if((attrType = DirectoryServer.getAttributeType(attrStr)) == null)
+ if((attrType = DirectoryServer.getAttributeType(attrStr)) == null) {
attrType = DirectoryServer.getDefaultAttributeType(attrStr);
- final SearchRequest request = newSearchRequest(evalCtx.getClientDN(), SearchScope.BASE_OBJECT, filter);
+ }
+ final SearchRequest request = newSearchRequest(evalCtx.getClientDN(), SearchScope.BASE_OBJECT);
InternalSearchOperation op = getRootConnection().processSearch(request);
LinkedList<SearchResultEntry> result = op.getSearchEntries();
if (!result.isEmpty()) {
@@ -225,41 +223,6 @@
}
/**
- * Parses the substring after the '#' character to determine the userattr
- * type.
- * @param expr The string with the substring.
- * @return An enumeration containing the type.
- * @throws AciException If the substring contains an invalid type (roledn
- * or groupdn).
- */
- private static UserAttrType getType(String expr) throws AciException {
- UserAttrType userAttrType;
- if(expr.equalsIgnoreCase("userdn"))
- userAttrType=UserAttrType.USERDN;
- else if(expr.equalsIgnoreCase("groupdn")) {
- userAttrType=UserAttrType.GROUPDN;
- /*
- LocalizableMessage message = WARN_ACI_SYNTAX_INVALID_USERATTR_KEYWORD.get(
- "The groupdn userattr" +
- "keyword is not supported.");
- throw new AciException(message);
- */
- } else if(expr.equalsIgnoreCase("roledn")) {
- userAttrType=UserAttrType.ROLEDN;
- /*
- LocalizableMessage message = WARN_ACI_SYNTAX_INVALID_USERATTR_KEYWORD.get(
- "The roledn userattr" +
- "keyword is not supported.");
- throw new AciException(message);
- */
- } else if(expr.equalsIgnoreCase("ldapurl"))
- userAttrType=UserAttrType.URL;
- else
- userAttrType=UserAttrType.VALUE;
- return userAttrType;
- }
-
- /**
* Evaluate an URL userattr type. Look into the resource entry for the
* specified attribute and values. Assume it is an URL. Decode it an try
* and match it against the client entry attribute.
@@ -270,8 +233,9 @@
EnumEvalResult matched= EnumEvalResult.FALSE;
boolean undefined=false;
AttributeType attrType;
- if((attrType = DirectoryServer.getAttributeType(attrStr)) == null)
+ if((attrType = DirectoryServer.getAttributeType(attrStr)) == null) {
attrType = DirectoryServer.getDefaultAttributeType(attrStr);
+ }
List<Attribute> attrs=evalCtx.getResourceEntry().getAttribute(attrType);
if(!attrs.isEmpty()) {
for(Attribute a : attrs) {
@@ -320,11 +284,12 @@
AttributeType attrType=parentInheritance.getAttributeType();
DN baseDN=parentInheritance.getBaseDN();
if(baseDN != null) {
- if (evalCtx.getResourceEntry().hasAttribute(attrType))
+ if (evalCtx.getResourceEntry().hasAttribute(attrType)) {
matched=GroupDN.evaluate(evalCtx.getResourceEntry(),
evalCtx,attrType, baseDN);
+ }
} else {
- for(int i=0;((i < numLevels) && !stop); i++ ) {
+ for(int i=0;(i < numLevels && !stop); i++ ) {
//The ROLEDN keyword will always enter this statement. The others
//might. For the add operation, the resource itself (level 0)
//must never be allowed to give access.
@@ -335,14 +300,16 @@
matched =
evalEntryAttr(evalCtx.getResourceEntry(),
evalCtx,attrType);
- if(matched.equals(EnumEvalResult.TRUE))
+ if(matched.equals(EnumEvalResult.TRUE)) {
stop=true;
+ }
}
} else {
DN pDN = getDNParentLevel(levels[i], evalCtx.getResourceDN());
- if(pDN == null)
+ if(pDN == null) {
continue;
- final SearchRequest request = newSearchRequest(pDN, SearchScope.BASE_OBJECT, filter)
+ }
+ final SearchRequest request = newSearchRequest(pDN, SearchScope.BASE_OBJECT)
.addAttribute(parentInheritance.getAttrTypeStr());
InternalSearchOperation op = getRootConnection().processSearch(request);
LinkedList<SearchResultEntry> result = op.getSearchEntries();
@@ -350,8 +317,9 @@
Entry e = result.getFirst();
if(e.hasAttribute(attrType)) {
matched = evalEntryAttr(e, evalCtx, attrType);
- if(matched.equals(EnumEvalResult.TRUE))
+ if(matched.equals(EnumEvalResult.TRUE)) {
stop=true;
+ }
}
}
}
@@ -370,8 +338,9 @@
*/
private DN getDNParentLevel(int l, DN dn) {
int rdns=dn.size();
- if(l > rdns)
+ if(l > rdns) {
return null;
+ }
DN theDN=dn;
for(int i=0; i < l;i++) {
theDN=theDN.parent();
diff --git a/opendj-sdk/opendj3-server-dev/src/server/org/opends/server/config/JMXMBean.java b/opendj-sdk/opendj3-server-dev/src/server/org/opends/server/config/JMXMBean.java
index cb16e87..a2a709d 100644
--- a/opendj-sdk/opendj3-server-dev/src/server/org/opends/server/config/JMXMBean.java
+++ b/opendj-sdk/opendj3-server-dev/src/server/org/opends/server/config/JMXMBean.java
@@ -69,7 +69,6 @@
import org.opends.server.types.DN;
import org.opends.server.types.DirectoryException;
import org.opends.server.types.InvokableMethod;
-import org.opends.server.types.LDAPException;
import static org.opends.messages.ConfigMessages.*;
import static org.opends.server.protocols.internal.Requests.*;
@@ -486,10 +485,10 @@
if (clientConnection instanceof JmxClientConnection) {
op = ((JmxClientConnection)clientConnection).processSearch(
ByteString.valueOf(configEntryDN.toString()),
- SearchScope.BASE_OBJECT, getTrueFilter());
+ SearchScope.BASE_OBJECT, LDAPFilter.objectClassPresent());
}
else if (clientConnection instanceof InternalClientConnection) {
- SearchRequest request = newSearchRequest(configEntryDN, SearchScope.BASE_OBJECT, "(objectclass=*)");
+ SearchRequest request = newSearchRequest(configEntryDN, SearchScope.BASE_OBJECT);
op = ((InternalClientConnection) clientConnection).processSearch(request);
}
// BUG : op may be null
@@ -516,20 +515,6 @@
}
}
- private LDAPFilter getTrueFilter()
- {
- try
- {
- return LDAPFilter.decode("(objectclass=*)");
- }
- catch (LDAPException e)
- {
- // can never happen
- logger.traceException(e);
- return null;
- }
- }
-
/**
* Set the value of a specific attribute of the Dynamic MBean. In this case,
* it will always throw {@code InvalidAttributeValueException} because setting
@@ -578,18 +563,11 @@
if (clientConnection instanceof JmxClientConnection) {
op = ((JmxClientConnection)clientConnection).processSearch(
ByteString.valueOf(configEntryDN.toString()),
- SearchScope.BASE_OBJECT, getTrueFilter());
+ SearchScope.BASE_OBJECT, LDAPFilter.objectClassPresent());
}
else if (clientConnection instanceof InternalClientConnection) {
- try
- {
- SearchRequest request = newSearchRequest(configEntryDN, SearchScope.BASE_OBJECT, "(objectclass=*)");
- op = ((InternalClientConnection) clientConnection).processSearch(request);
- }
- catch (DirectoryException e)
- {
- logger.traceException(e);
- }
+ SearchRequest request = newSearchRequest(configEntryDN, SearchScope.BASE_OBJECT);
+ op = ((InternalClientConnection) clientConnection).processSearch(request);
}
if (op == null)
diff --git a/opendj-sdk/opendj3-server-dev/src/server/org/opends/server/extensions/PasswordPolicyStateExtendedOperation.java b/opendj-sdk/opendj3-server-dev/src/server/org/opends/server/extensions/PasswordPolicyStateExtendedOperation.java
index ad5ec2a..a5a4bfb 100644
--- a/opendj-sdk/opendj3-server-dev/src/server/org/opends/server/extensions/PasswordPolicyStateExtendedOperation.java
+++ b/opendj-sdk/opendj3-server-dev/src/server/org/opends/server/extensions/PasswordPolicyStateExtendedOperation.java
@@ -281,17 +281,7 @@
PasswordPolicyStateExtendedOperationHandlerCfg config)
throws ConfigException, InitializationException
{
- // Construct the filter that will be used to retrieve user entries.
- try
- {
- userFilter = SearchFilter.createFilterFromString("(objectClass=*)");
- }
- catch (Exception e)
- {
- // This should never happen.
- logger.traceException(e);
- }
-
+ userFilter = SearchFilter.objectClassPresent();
// Construct the set of request attributes.
requestAttributes = new LinkedHashSet<String>(2);
diff --git a/opendj-sdk/opendj3-server-dev/src/server/org/opends/server/protocols/internal/InternalClientConnection.java b/opendj-sdk/opendj3-server-dev/src/server/org/opends/server/protocols/internal/InternalClientConnection.java
index 16761c8..a16781e 100644
--- a/opendj-sdk/opendj3-server-dev/src/server/org/opends/server/protocols/internal/InternalClientConnection.java
+++ b/opendj-sdk/opendj3-server-dev/src/server/org/opends/server/protocols/internal/InternalClientConnection.java
@@ -34,9 +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.ResultCode;
-import org.forgerock.opendj.ldap.SearchScope;
import org.opends.server.api.ClientConnection;
import org.opends.server.api.ConnectionHandler;
import org.opends.server.core.*;
@@ -1989,85 +1987,6 @@
modifyDNRecord.getNewSuperiorDN());
}
-
-
- /**
- * Processes an internal search operation with the provided
- * information. It will not dereference any aliases, will not
- * request a size or time limit, and will retrieve all user
- * attributes.
- *
- * @param rawBaseDN The base DN for the search.
- * @param scope The scope for the search.
- * @param filterString The string representation of the filter for
- * the search.
- *
- * @return A reference to the internal search operation that was
- * processed and contains information about the result of
- * the processing as well as lists of the matching entries
- * and search references.
- *
- * @throws DirectoryException If the provided filter string cannot
- * be decoded as a search filter.
- */
- public InternalSearchOperation processSearch(String rawBaseDN,
- SearchScope scope,
- String filterString)
- throws DirectoryException
- {
- return processSearch(Requests.newSearchRequest(rawBaseDN, scope, filterString), null);
- }
-
-
-
- /**
- * Processes an internal search operation with the provided
- * information.
- *
- * @param rawBaseDN The base DN for the search.
- * @param scope The scope for the search.
- * @param derefPolicy The alias dereferencing policy for the
- * search.
- * @param sizeLimit The size limit for the search.
- * @param timeLimit The time limit for the search.
- * @param typesOnly The typesOnly flag for the search.
- * @param filter The filter for the search.
- * @param attributes The set of requested attributes for the
- * search.
- * @param controls The set of controls to include in the
- * request.
- * @param searchListener The internal search listener that should
- * be used to handle the matching entries
- * and references.
- *
- * @return A reference to the internal search operation that was
- * processed and contains information about the result of
- * the processing.
- */
- public InternalSearchOperation
- processSearch(ByteString rawBaseDN,
- SearchScope scope,
- DereferenceAliasesPolicy derefPolicy,
- int sizeLimit, int timeLimit,
- boolean typesOnly, RawFilter filter,
- Set<String> attributes,
- List<Control> controls,
- InternalSearchListener searchListener)
- {
- InternalSearchOperation searchOperation =
- new InternalSearchOperation(this, nextOperationID(),
- nextMessageID(), controls,
- rawBaseDN, scope, derefPolicy,
- sizeLimit, timeLimit,
- typesOnly, filter, attributes,
- searchListener);
-
- searchOperation.run();
- return searchOperation;
- }
-
-
-
/**
* Processes an internal search operation with the provided
* information.
@@ -2098,6 +2017,10 @@
*/
public InternalSearchOperation processSearch(final SearchRequest request, InternalSearchListener searchListener)
{
+ // FIXME uncomment this after we move to the SDK:
+ // if (Filter.objectClassPresent().equals(filter)) {
+ // filter = Filter.alwaysTrue();
+ // }
InternalSearchOperation searchOperation =
new InternalSearchOperation(this, nextOperationID(), nextMessageID(),
request.getControls(), request.getName(), request.getScope(),
diff --git a/opendj-sdk/opendj3-server-dev/src/server/org/opends/server/protocols/internal/Requests.java b/opendj-sdk/opendj3-server-dev/src/server/org/opends/server/protocols/internal/Requests.java
index f7e3c3e..c7fe01d 100644
--- a/opendj-sdk/opendj3-server-dev/src/server/org/opends/server/protocols/internal/Requests.java
+++ b/opendj-sdk/opendj3-server-dev/src/server/org/opends/server/protocols/internal/Requests.java
@@ -163,6 +163,20 @@
return newSearchRequest(name, scope, SearchFilter.createFilterFromString(filter));
}
+ /**
+ * Return a new search request object.
+ *
+ * @param name
+ * the dn
+ * @param scope
+ * the search scope
+ * @return a new search request object
+ * @see #newSearchRequest(DN, SearchScope, SearchFilter, String...)
+ */
+ public static SearchRequest newSearchRequest(final DN name, final SearchScope scope) {
+ return newSearchRequest(name, scope, SearchFilter.objectClassPresent());
+ }
+
private Requests() {
// Prevent instantiation.
}
diff --git a/opendj-sdk/opendj3-server-dev/src/server/org/opends/server/protocols/ldap/LDAPFilter.java b/opendj-sdk/opendj3-server-dev/src/server/org/opends/server/protocols/ldap/LDAPFilter.java
index 350916e..0e17491 100644
--- a/opendj-sdk/opendj3-server-dev/src/server/org/opends/server/protocols/ldap/LDAPFilter.java
+++ b/opendj-sdk/opendj3-server-dev/src/server/org/opends/server/protocols/ldap/LDAPFilter.java
@@ -27,11 +27,11 @@
package org.opends.server.protocols.ldap;
import java.util.ArrayList;
+import java.util.Collection;
import java.util.HashSet;
import java.util.LinkedList;
import java.util.List;
import java.util.StringTokenizer;
-import java.util.Collection;
import org.forgerock.i18n.LocalizableMessage;
import org.forgerock.i18n.slf4j.LocalizedLogger;
@@ -57,6 +57,8 @@
{
private static final LocalizedLogger logger = LocalizedLogger.getLoggerForThisClass();
+ private static LDAPFilter objectClassPresent;
+
// The set of subAny elements for substring filters.
private ArrayList<ByteString> subAnyElements;
@@ -2076,5 +2078,25 @@
break;
}
}
-}
+ /**
+ * Returns the {@code objectClass} presence filter {@code (objectClass=*)}.
+ *
+ * @return The {@code objectClass} presence filter {@code (objectClass=*)}.
+ */
+ public static LDAPFilter objectClassPresent()
+ {
+ if (objectClassPresent == null)
+ {
+ try
+ {
+ objectClassPresent = LDAPFilter.decode("(objectclass=*)");
+ }
+ catch (LDAPException canNeverHappen)
+ {
+ logger.traceException(canNeverHappen);
+ }
+ }
+ return objectClassPresent;
+ }
+}
diff --git a/opendj-sdk/opendj3-server-dev/src/server/org/opends/server/replication/plugin/LDAPReplicationDomain.java b/opendj-sdk/opendj3-server-dev/src/server/org/opends/server/replication/plugin/LDAPReplicationDomain.java
index 6e6fa72..ce77320 100644
--- a/opendj-sdk/opendj3-server-dev/src/server/org/opends/server/replication/plugin/LDAPReplicationDomain.java
+++ b/opendj-sdk/opendj3-server-dev/src/server/org/opends/server/replication/plugin/LDAPReplicationDomain.java
@@ -44,7 +44,6 @@
import org.forgerock.opendj.config.server.ConfigException;
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;
@@ -83,6 +82,9 @@
import org.opends.server.types.DN;
import org.opends.server.types.Entry;
import org.opends.server.types.Modification;
+import org.opends.server.types.ObjectClass;
+import org.opends.server.types.Operation;
+import org.opends.server.types.OperationType;
import org.opends.server.types.RDN;
import org.opends.server.types.operation.*;
import org.opends.server.util.LDIFReader;
@@ -650,19 +652,10 @@
+ "entry " + getBaseDNString());
}
- InternalSearchOperation search;
- try
- {
- // Search the domain root entry that is used to save the generation id
- SearchRequest request = newSearchRequest(getBaseDN(), SearchScope.BASE_OBJECT, "(objectclass=*)")
- .addAttribute(REPLICATION_GENERATION_ID, REPLICATION_FRACTIONAL_EXCLUDE, REPLICATION_FRACTIONAL_INCLUDE);
- search = conn.processSearch(request);
- }
- catch (DirectoryException e)
- {
- // Can not happen
- return false;
- }
+ // Search the domain root entry that is used to save the generation id
+ SearchRequest request = newSearchRequest(getBaseDN(), SearchScope.BASE_OBJECT)
+ .addAttribute(REPLICATION_GENERATION_ID, REPLICATION_FRACTIONAL_EXCLUDE, REPLICATION_FRACTIONAL_INCLUDE);
+ InternalSearchOperation search = conn.processSearch(request);
if (search.getResultCode() != ResultCode.SUCCESS
&& search.getResultCode() != ResultCode.NO_SUCH_OBJECT)
@@ -2153,15 +2146,22 @@
return;
}
- LDAPFilter filter = LDAPFilter.createEqualityFilter(DS_SYNC_CONFLICT,
- ByteString.valueOf(freedDN.toString()));
+ SearchFilter filter;
+ try
+ {
+ filter = LDAPFilter.createEqualityFilter(DS_SYNC_CONFLICT,
+ ByteString.valueOf(freedDN.toString())).toSearchFilter();
+ }
+ catch (DirectoryException e)
+ {
+ // can not happen?
+ logger.traceException(e);
+ return;
+ }
- InternalSearchOperation searchOp = conn.processSearch(
- ByteString.valueOf(getBaseDNString()),
- SearchScope.WHOLE_SUBTREE,
- DereferenceAliasesPolicy.NEVER,
- 0, 0, false, filter,
- USER_AND_REPL_OPERATIONAL_ATTRS, null, null);
+ SearchRequest request = newSearchRequest(getBaseDN(), SearchScope.WHOLE_SUBTREE, filter)
+ .addAttribute(USER_AND_REPL_OPERATIONAL_ATTRS);
+ InternalSearchOperation searchOp = conn.processSearch(request);
Entry entryToRename = null;
CSN entryToRenameCSN = null;
@@ -2549,20 +2549,13 @@
{
return null;
}
- try
+ final SearchRequest request = newSearchRequest(dn, SearchScope.BASE_OBJECT)
+ .addAttribute(ENTRYUUID_ATTRIBUTE_NAME);
+ final InternalSearchOperation search = getRootConnection().processSearch(request);
+ final SearchResultEntry resultEntry = getFirstResult(search);
+ if (resultEntry != null)
{
- final SearchRequest request = newSearchRequest(dn, SearchScope.BASE_OBJECT, "(objectclass=*)")
- .addAttribute(ENTRYUUID_ATTRIBUTE_NAME);
- final InternalSearchOperation search = getRootConnection().processSearch(request);
- final SearchResultEntry resultEntry = getFirstResult(search);
- if (resultEntry != null)
- {
- return getEntryUUID(resultEntry);
- }
- }
- catch (DirectoryException e)
- {
- // never happens because the filter is always valid.
+ return getEntryUUID(resultEntry);
}
return null;
}
@@ -2994,37 +2987,27 @@
*/
boolean conflict = false;
- // Find an rename child entries.
- try
+ // Find and rename child entries.
+ final SearchRequest request = newSearchRequest(entryDN, SearchScope.SINGLE_LEVEL)
+ .addAttribute(ENTRYUUID_ATTRIBUTE_NAME, HISTORICAL_ATTRIBUTE_NAME);
+ InternalSearchOperation op = conn.processSearch(request);
+ if (op.getResultCode() == ResultCode.SUCCESS)
{
- final SearchRequest request = newSearchRequest(entryDN, SearchScope.SINGLE_LEVEL, "(objectClass=*)")
- .addAttribute(ENTRYUUID_ATTRIBUTE_NAME, HISTORICAL_ATTRIBUTE_NAME);
- InternalSearchOperation op = conn.processSearch(request);
- if (op.getResultCode() == ResultCode.SUCCESS)
+ for (SearchResultEntry entry : op.getSearchEntries())
{
- for (SearchResultEntry entry : op.getSearchEntries())
- {
- /*
- * Check the ADD and ModRDN date of the child entry
- * (All of them, not only the one that are newer than the DEL op)
- * and keep the entry as a conflicting entry.
- */
- conflict = true;
- renameConflictEntry(conflictOp, entry.getName(), getEntryUUID(entry));
- }
- }
- else
- {
- // log error and information for the REPAIR tool.
- logger.error(ERR_CANNOT_RENAME_CONFLICT_ENTRY,
- entryDN, conflictOp, op.getResultCode());
+ /*
+ * Check the ADD and ModRDN date of the child entry
+ * (All of them, not only the one that are newer than the DEL op)
+ * and keep the entry as a conflicting entry.
+ */
+ conflict = true;
+ renameConflictEntry(conflictOp, entry.getName(), getEntryUUID(entry));
}
}
- catch (DirectoryException e)
+ else
{
// log error and information for the REPAIR tool.
- logger.error(ERR_EXCEPTION_RENAME_CONFLICT_ENTRY,
- entryDN, conflictOp, stackTraceToSingleLineString(e));
+ logger.error(ERR_CANNOT_RENAME_CONFLICT_ENTRY, entryDN, conflictOp, op.getResultCode());
}
return conflict;
@@ -3318,7 +3301,7 @@
* Search the database entry that is used to periodically
* save the generation id
*/
- final SearchRequest request = newSearchRequest(getBaseDN(), SearchScope.BASE_OBJECT, "(objectclass=*)")
+ final SearchRequest request = newSearchRequest(getBaseDN(), SearchScope.BASE_OBJECT)
.addAttribute(REPLICATION_GENERATION_ID);
InternalSearchOperation search = conn.processSearch(request);
if (search.getResultCode() == ResultCode.NO_SUCH_OBJECT)
diff --git a/opendj-sdk/opendj3-server-dev/src/server/org/opends/server/replication/server/ReplicationServer.java b/opendj-sdk/opendj3-server-dev/src/server/org/opends/server/replication/server/ReplicationServer.java
index 16e0ae6..7ce0805 100644
--- a/opendj-sdk/opendj3-server-dev/src/server/org/opends/server/replication/server/ReplicationServer.java
+++ b/opendj-sdk/opendj3-server-dev/src/server/org/opends/server/replication/server/ReplicationServer.java
@@ -549,8 +549,7 @@
{
Set<DN> baseDNs = Collections.singleton(DN.valueOf(""));
Set<DN> groupDNs = Collections.emptySet();
- Set<SearchFilter> filters = Collections.singleton(
- SearchFilter.createFilterFromString("(objectclass=*)"));
+ Set<SearchFilter> filters = Collections.singleton(SearchFilter.objectClassPresent());
// To avoid the configuration in cn=config just
// create a rule and register it into the DirectoryServer
diff --git a/opendj-sdk/opendj3-server-dev/src/server/org/opends/server/types/LDAPURL.java b/opendj-sdk/opendj3-server-dev/src/server/org/opends/server/types/LDAPURL.java
index 3e71a63..bad19ef 100644
--- a/opendj-sdk/opendj3-server-dev/src/server/org/opends/server/types/LDAPURL.java
+++ b/opendj-sdk/opendj3-server-dev/src/server/org/opends/server/types/LDAPURL.java
@@ -198,13 +198,13 @@
this.scope = scope;
}
- if (rawFilter == null)
+ if (rawFilter != null)
{
- this.rawFilter = "(objectClass=*)";
+ this.rawFilter = rawFilter;
}
else
{
- this.rawFilter = rawFilter;
+ setFilter(SearchFilter.objectClassPresent());
}
if (extensions == null)
diff --git a/opendj-sdk/opendj3-server-dev/src/server/org/opends/server/types/SearchFilter.java b/opendj-sdk/opendj3-server-dev/src/server/org/opends/server/types/SearchFilter.java
index 20b1277..64bc99e 100644
--- a/opendj-sdk/opendj3-server-dev/src/server/org/opends/server/types/SearchFilter.java
+++ b/opendj-sdk/opendj3-server-dev/src/server/org/opends/server/types/SearchFilter.java
@@ -28,13 +28,13 @@
package org.opends.server.types;
import java.util.ArrayList;
+import java.util.Collection;
+import java.util.Collections;
import java.util.HashSet;
+import java.util.LinkedHashSet;
import java.util.LinkedList;
import java.util.List;
import java.util.Set;
-import java.util.LinkedHashSet;
-import java.util.Collection;
-import java.util.Collections;
import org.forgerock.i18n.LocalizableMessage;
import org.forgerock.i18n.slf4j.LocalizedLogger;
@@ -64,6 +64,8 @@
{
private static final LocalizedLogger logger = LocalizedLogger.getLoggerForThisClass();
+ private static SearchFilter objectClassPresent;
+
// The attribute type for this filter.
private final AttributeType attributeType;
@@ -4092,5 +4094,25 @@
}
}
}
-}
+ /**
+ * Returns the {@code objectClass} presence filter {@code (objectClass=*)}.
+ *
+ * @return The {@code objectClass} presence filter {@code (objectClass=*)}.
+ */
+ public static SearchFilter objectClassPresent()
+ {
+ if (objectClassPresent == null)
+ {
+ try
+ {
+ objectClassPresent = SearchFilter.createFilterFromString("(objectclass=*)");
+ }
+ catch (DirectoryException canNeverHappen)
+ {
+ logger.traceException(canNeverHappen);
+ }
+ }
+ return objectClassPresent;
+ }
+}
diff --git a/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/backends/ChangelogBackendTestCase.java b/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/backends/ChangelogBackendTestCase.java
index 975e023..ca9c71f 100644
--- a/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/backends/ChangelogBackendTestCase.java
+++ b/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/backends/ChangelogBackendTestCase.java
@@ -598,9 +598,10 @@
public void searchingWithoutPrivilegeShouldFail() throws Exception
{
AuthenticationInfo nonPrivilegedUser = new AuthenticationInfo();
-
InternalClientConnection conn = new InternalClientConnection(nonPrivilegedUser);
- InternalSearchOperation op = conn.processSearch("cn=changelog", SearchScope.WHOLE_SUBTREE, "(objectclass=*)");
+
+ SearchRequest request = Requests.newSearchRequest(DN.valueOf("cn=changelog"), SearchScope.WHOLE_SUBTREE);
+ InternalSearchOperation op = conn.processSearch(request);
assertEquals(op.getResultCode(), ResultCode.INSUFFICIENT_ACCESS_RIGHTS);
assertEquals(op.getErrorMessage().toMessage(), NOTE_SEARCH_CHANGELOG_INSUFFICIENT_PRIVILEGES.get());
diff --git a/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/backends/LDIFBackendTestCase.java b/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/backends/LDIFBackendTestCase.java
index 52cb22e..4b5edd5 100644
--- a/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/backends/LDIFBackendTestCase.java
+++ b/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/backends/LDIFBackendTestCase.java
@@ -43,6 +43,7 @@
import org.opends.server.core.ModifyDNOperation;
import org.opends.server.protocols.internal.InternalClientConnection;
import org.opends.server.protocols.internal.InternalSearchOperation;
+import org.opends.server.protocols.internal.SearchRequest;
import org.opends.server.tasks.LdifFileWriter;
import org.opends.server.tasks.TasksTestCase;
import org.opends.server.tools.LDAPModify;
@@ -54,6 +55,7 @@
import org.testng.annotations.Test;
import static org.opends.server.protocols.internal.InternalClientConnection.*;
+import static org.opends.server.protocols.internal.Requests.*;
import static org.testng.Assert.*;
/**
@@ -527,8 +529,8 @@
@Test
public void testBaseSearch() throws Exception
{
- InternalSearchOperation searchOperation =
- getRootConnection().processSearch("o=ldif", SearchScope.BASE_OBJECT, "(objectClass=*)");
+ SearchRequest request = newSearchRequest(DN.valueOf("o=ldif"), SearchScope.BASE_OBJECT);
+ InternalSearchOperation searchOperation = getRootConnection().processSearch(request);
assertEquals(searchOperation.getResultCode(), ResultCode.SUCCESS);
assertEquals(searchOperation.getSearchEntries().size(), 1);
}
@@ -545,7 +547,7 @@
public void testBaseSearchNonMatchingFilter() throws Exception
{
InternalSearchOperation searchOperation =
- getRootConnection().processSearch("o=ldif", SearchScope.BASE_OBJECT, "(o=not ldif)");
+ getRootConnection().processSearch(newSearchRequest("o=ldif", SearchScope.BASE_OBJECT, "(o=not ldif)"));
assertEquals(searchOperation.getResultCode(), ResultCode.SUCCESS);
assertEquals(searchOperation.getSearchEntries().size(), 0);
}
@@ -561,10 +563,9 @@
@Test
public void testBaseSearchNoSuchEntry() throws Exception
{
- InternalClientConnection conn = getRootConnection();
- InternalSearchOperation searchOperation =
- conn.processSearch("o=nonexistent2,o=nonexistent1,o=ldif",
- SearchScope.BASE_OBJECT, "(objectClass=*)");
+ DN dn = DN.valueOf("o=nonexistent2,o=nonexistent1,o=ldif");
+ SearchRequest request = newSearchRequest(dn, SearchScope.BASE_OBJECT);
+ InternalSearchOperation searchOperation = getRootConnection().processSearch(request);
assertEquals(searchOperation.getResultCode(), ResultCode.NO_SUCH_OBJECT);
assertEquals(searchOperation.getMatchedDN(), DN.valueOf("o=ldif"));
}
@@ -577,13 +578,10 @@
* @throws Exception If an unexpected problem occurs.
*/
@Test
- public void testSingleLevelSearch()
- throws Exception
+ public void testSingleLevelSearch() throws Exception
{
- InternalClientConnection conn = getRootConnection();
- InternalSearchOperation searchOperation =
- conn.processSearch("o=ldif", SearchScope.SINGLE_LEVEL,
- "(objectClass=*)");
+ SearchRequest request = newSearchRequest(DN.valueOf("o=ldif"), SearchScope.SINGLE_LEVEL);
+ InternalSearchOperation searchOperation = getRootConnection().processSearch(request);
assertEquals(searchOperation.getResultCode(), ResultCode.SUCCESS);
assertEquals(searchOperation.getSearchEntries().size(), 1);
}
@@ -598,10 +596,8 @@
@Test
public void testSubtreeSearch() throws Exception
{
- InternalClientConnection conn = getRootConnection();
- InternalSearchOperation searchOperation =
- conn.processSearch("o=ldif", SearchScope.WHOLE_SUBTREE,
- "(uid=user.1)");
+ SearchRequest request = newSearchRequest("o=ldif", SearchScope.WHOLE_SUBTREE, "(uid=user.1)");
+ InternalSearchOperation searchOperation = getRootConnection().processSearch(request);
assertEquals(searchOperation.getResultCode(), ResultCode.SUCCESS);
assertEquals(searchOperation.getSearchEntries().size(), 1);
}
@@ -617,10 +613,8 @@
@Test
public void testSubordinateSubtreeSearch() throws Exception
{
- InternalClientConnection conn = getRootConnection();
- InternalSearchOperation searchOperation =
- conn.processSearch("o=ldif", SearchScope.SUBORDINATES,
- "(uid=user.1)");
+ SearchRequest request = newSearchRequest("o=ldif", SearchScope.SUBORDINATES, "(uid=user.1)");
+ InternalSearchOperation searchOperation = getRootConnection().processSearch(request);
assertEquals(searchOperation.getResultCode(), ResultCode.SUCCESS);
assertEquals(searchOperation.getSearchEntries().size(), 1);
}
@@ -633,8 +627,7 @@
* @throws Exception If an unexpected problem occurs.
*/
@Test
- public void testHasSubordinates()
- throws Exception
+ public void testHasSubordinates() throws Exception
{
Backend<?> b = DirectoryServer.getBackend("ldifRoot");
assertNotNull(b);
diff --git a/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/backends/SchemaBackendTestCase.java b/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/backends/SchemaBackendTestCase.java
index 07954cc..bebd446 100644
--- a/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/backends/SchemaBackendTestCase.java
+++ b/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/backends/SchemaBackendTestCase.java
@@ -382,8 +382,7 @@
{
InternalClientConnection conn = getRootConnection();
DN baseDN = DN.valueOf("o=bogus,cn=schema");
- SearchFilter filter =
- SearchFilter.createFilterFromString("(objectClass=*)");
+ SearchFilter filter = SearchFilter.objectClassPresent();
for (SearchScope scope : SearchScope.values())
{
diff --git a/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/backends/jeb/TestBackendImpl.java b/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/backends/jeb/TestBackendImpl.java
index 2df659f..376aef7 100644
--- a/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/backends/jeb/TestBackendImpl.java
+++ b/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/backends/jeb/TestBackendImpl.java
@@ -42,7 +42,6 @@
import org.opends.server.protocols.internal.InternalClientConnection;
import org.opends.server.protocols.internal.InternalSearchOperation;
import org.opends.server.protocols.internal.SearchRequest;
-import static org.opends.server.protocols.internal.Requests.*;
import org.opends.server.types.*;
import org.opends.server.types.Attribute;
import org.opends.server.types.Attributes;
@@ -64,6 +63,7 @@
import static org.forgerock.opendj.ldap.ModificationType.*;
import static org.mockito.Mockito.*;
import static org.opends.server.protocols.internal.InternalClientConnection.*;
+import static org.opends.server.protocols.internal.Requests.*;
import static org.opends.server.types.Attributes.*;
import static org.testng.Assert.*;
@@ -578,33 +578,34 @@
public void testSearchScope() throws Exception {
InternalClientConnection conn = getRootConnection();
- InternalSearchOperation search = conn.processSearch("dc=test,dc=com", SearchScope.BASE_OBJECT, "(objectClass=*)");
+ DN dn = DN.valueOf("dc=test,dc=com");
+ InternalSearchOperation search = conn.processSearch(newSearchRequest(dn, SearchScope.BASE_OBJECT));
List<SearchResultEntry> result = search.getSearchEntries();
assertEquals(result.size(), 1);
- assertEquals(result.get(0).getName().toString(), "dc=test,dc=com");
+ assertEquals(result.get(0).getName(), dn);
- search = conn.processSearch("dc=test,dc=com", SearchScope.BASE_OBJECT, "(ou=People)");
+ search = conn.processSearch(newSearchRequest(dn, SearchScope.BASE_OBJECT, "(ou=People)"));
result = search.getSearchEntries();
assertEquals(result.size(), 0);
- search = conn.processSearch("dc=test,dc=com", SearchScope.SINGLE_LEVEL, "(objectClass=*)");
+ search = conn.processSearch(newSearchRequest(dn, SearchScope.SINGLE_LEVEL));
result = search.getSearchEntries();
assertEquals(result.size(), 1);
assertEquals(result.get(0).getName().toString(),
"ou=People,dc=test,dc=com");
- search = conn.processSearch("dc=test,dc=com", SearchScope.SUBORDINATES, "(objectClass=*)");
+ search = conn.processSearch(newSearchRequest(dn, SearchScope.SUBORDINATES));
result = search.getSearchEntries();
assertEquals(result.size(), 13);
for (Entry entry : result) {
- assertThat(entry.getName().toString()).isNotEqualTo("dc=test,dc=com");
+ assertThat(entry.getName()).isNotEqualTo(dn);
}
- search = conn.processSearch("dc=test,dc=com", SearchScope.WHOLE_SUBTREE, "(objectClass=*)");
+ search = conn.processSearch(newSearchRequest(dn, SearchScope.WHOLE_SUBTREE));
result = search.getSearchEntries();
assertEquals(result.size(), 14);
@@ -1486,7 +1487,7 @@
) throws Exception
{
InternalClientConnection conn = getRootConnection();
- SearchFilter filter = SearchFilter.createFilterFromString("(objectClass=*)");
+ SearchFilter filter = SearchFilter.objectClassPresent();
// Test is performed with each and every scope
for (SearchScope scope: SearchScope.values())
diff --git a/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/backends/jeb/TestVLVIndex.java b/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/backends/jeb/TestVLVIndex.java
index 03d3ae0..6edc458 100644
--- a/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/backends/jeb/TestVLVIndex.java
+++ b/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/backends/jeb/TestVLVIndex.java
@@ -27,11 +27,11 @@
package org.opends.server.backends.jeb;
import java.util.ArrayList;
+import java.util.Arrays;
import java.util.List;
import java.util.TreeSet;
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.DirectoryServerTestCase;
@@ -42,15 +42,19 @@
import org.opends.server.controls.VLVRequestControl;
import org.opends.server.controls.VLVResponseControl;
import org.opends.server.core.DirectoryServer;
-import org.opends.server.protocols.internal.InternalClientConnection;
import org.opends.server.protocols.internal.InternalSearchOperation;
+import org.opends.server.protocols.internal.Requests;
+import org.opends.server.protocols.internal.SearchRequest;
import org.opends.server.protocols.ldap.LDAPControl;
import org.opends.server.protocols.ldap.LDAPResultCode;
import org.opends.server.types.*;
+import org.testng.Assert;
import org.testng.annotations.AfterClass;
import org.testng.annotations.BeforeClass;
import org.testng.annotations.Test;
+import static org.assertj.core.api.Assertions.*;
+import static org.opends.server.protocols.internal.InternalClientConnection.*;
import static org.opends.server.util.ServerConstants.*;
import static org.testng.Assert.*;
@@ -362,40 +366,15 @@
* @throws Exception If an unexpected problem occurred.
*/
@Test( dependsOnMethods = { "testAdd" } )
- public void testInternalSearchByOffsetOneOffset()
- throws Exception
+ public void testInternalSearchByOffsetOneOffset() throws Exception
{
- InternalClientConnection conn =
- InternalClientConnection.getRootConnection();
-
- ArrayList<Control> requestControls = new ArrayList<Control>();
- requestControls.add(new ServerSideSortRequestControl(sortOrder));
- requestControls.add(new VLVRequestControl(0, 3, 1, 0));
-
- InternalSearchOperation internalSearch =
- new InternalSearchOperation(conn, InternalClientConnection.nextOperationID(),
- InternalClientConnection.nextMessageID(), requestControls,
- DN.valueOf("dc=vlvtest,dc=com"), SearchScope.WHOLE_SUBTREE,
- DereferenceAliasesPolicy.NEVER, 0, 0, false,
- SearchFilter.createFilterFromString("(objectClass=*)"),
- null, null);
-
- internalSearch.run();
+ SearchRequest request = Requests.newSearchRequest(DN.valueOf("dc=vlvtest,dc=com"), SearchScope.WHOLE_SUBTREE)
+ .addControl(new ServerSideSortRequestControl(sortOrder))
+ .addControl(new VLVRequestControl(0, 3, 1, 0));
+ InternalSearchOperation internalSearch = getRootConnection().processSearch(request);
assertEquals(internalSearch.getResultCode(), ResultCode.SUCCESS);
- ArrayList<DN> expectedDNOrder = new ArrayList<DN>();
- expectedDNOrder.add(aaccfJohnsonDN); // Aaccf
- expectedDNOrder.add(aaronZimmermanDN); // Aaron
- expectedDNOrder.add(albertZimmermanDN); // Albert, bigger
- expectedDNOrder.add(albertSmithDN); // Albert, smaller sn
-
- ArrayList<DN> returnedDNOrder = new ArrayList<DN>();
- for (Entry e : internalSearch.getSearchEntries())
- {
- returnedDNOrder.add(e.getName());
- }
-
- assertEquals(returnedDNOrder, expectedDNOrder);
+ assertThat(getDNs(internalSearch)).isEqualTo(expectedDNOrder());
List<Control> responseControls = internalSearch.getResponseControls();
assertNotNull(responseControls);
@@ -407,29 +386,15 @@
{
if (c.getOID().equals(OID_SERVER_SIDE_SORT_RESPONSE_CONTROL))
{
- if(c instanceof LDAPControl)
- {
- sortResponse = ServerSideSortResponseControl.DECODER.decode(c.isCritical(), ((LDAPControl)c).getValue());
- }
- else
- {
- sortResponse = (ServerSideSortResponseControl)c;
- }
+ sortResponse = asServerSideSortResponseControl(c);
}
else if (c.getOID().equals(OID_VLV_RESPONSE_CONTROL))
{
- if(c instanceof LDAPControl)
- {
- vlvResponse = VLVResponseControl.DECODER.decode(c.isCritical(), ((LDAPControl)c).getValue());
- }
- else
- {
- vlvResponse = (VLVResponseControl)c;
- }
+ vlvResponse = asVLVResponseControl(c);
}
else
{
- fail("Response control with unexpected OID " + c.getOID());
+ Assert.fail("Response control with unexpected OID " + c.getOID());
}
}
@@ -442,6 +407,25 @@
assertEquals(vlvResponse.getContentCount(), 10);
}
+ private ArrayList<DN> getDNs(InternalSearchOperation internalSearch)
+ {
+ ArrayList<DN> results = new ArrayList<DN>();
+ for (Entry e : internalSearch.getSearchEntries())
+ {
+ results.add(e.getName());
+ }
+ return results;
+ }
+
+ private List<DN> expectedDNOrder()
+ {
+ return Arrays.asList(
+ aaccfJohnsonDN, // Aaccf
+ aaronZimmermanDN, // Aaron
+ albertZimmermanDN, // Albert, bigger
+ albertSmithDN); // Albert, smaller sn
+ }
+
/**
* Tests performing an internal search using the VLV control to retrieve a
* subset of the entries using an offset of zero, which should be treated like
@@ -450,40 +434,15 @@
* @throws Exception If an unexpected problem occurred.
*/
@Test( dependsOnMethods = { "testAdd" } )
- public void testInternalSearchByOffsetZeroOffset()
- throws Exception
+ public void testInternalSearchByOffsetZeroOffset() throws Exception
{
- InternalClientConnection conn =
- InternalClientConnection.getRootConnection();
-
- ArrayList<Control> requestControls = new ArrayList<Control>();
- requestControls.add(new ServerSideSortRequestControl(sortOrder));
- requestControls.add(new VLVRequestControl(0, 3, 0, 0));
-
- InternalSearchOperation internalSearch =
- new InternalSearchOperation(conn, InternalClientConnection.nextOperationID(),
- InternalClientConnection.nextMessageID(), requestControls,
- DN.valueOf("dc=vlvtest,dc=com"), SearchScope.WHOLE_SUBTREE,
- DereferenceAliasesPolicy.NEVER, 0, 0, false,
- SearchFilter.createFilterFromString("(objectClass=*)"),
- null, null);
-
- internalSearch.run();
+ final SearchRequest request = Requests.newSearchRequest(DN.valueOf("dc=vlvtest,dc=com"), SearchScope.WHOLE_SUBTREE)
+ .addControl(new ServerSideSortRequestControl(sortOrder))
+ .addControl(new VLVRequestControl(0, 3, 0, 0));
+ InternalSearchOperation internalSearch = getRootConnection().processSearch(request);
assertEquals(internalSearch.getResultCode(), ResultCode.SUCCESS);
- ArrayList<DN> expectedDNOrder = new ArrayList<DN>();
- expectedDNOrder.add(aaccfJohnsonDN); // Aaccf
- expectedDNOrder.add(aaronZimmermanDN); // Aaron
- expectedDNOrder.add(albertZimmermanDN); // Albert, bigger
- expectedDNOrder.add(albertSmithDN); // Albert, smaller sn
-
- ArrayList<DN> returnedDNOrder = new ArrayList<DN>();
- for (Entry e : internalSearch.getSearchEntries())
- {
- returnedDNOrder.add(e.getName());
- }
-
- assertEquals(returnedDNOrder, expectedDNOrder);
+ assertThat(getDNs(internalSearch)).isEqualTo(expectedDNOrder());
List<Control> responseControls = internalSearch.getResponseControls();
assertNotNull(responseControls);
@@ -495,29 +454,15 @@
{
if (c.getOID().equals(OID_SERVER_SIDE_SORT_RESPONSE_CONTROL))
{
- if(c instanceof LDAPControl)
- {
- sortResponse = ServerSideSortResponseControl.DECODER.decode(c.isCritical(), ((LDAPControl)c).getValue());
- }
- else
- {
- sortResponse = (ServerSideSortResponseControl)c;
- }
+ sortResponse = asServerSideSortResponseControl(c);
}
else if (c.getOID().equals(OID_VLV_RESPONSE_CONTROL))
{
- if(c instanceof LDAPControl)
- {
- vlvResponse = VLVResponseControl.DECODER.decode(c.isCritical(), ((LDAPControl)c).getValue());
- }
- else
- {
- vlvResponse = (VLVResponseControl)c;
- }
+ vlvResponse = asVLVResponseControl(c);
}
else
{
- fail("Response control with unexpected OID " + c.getOID());
+ Assert.fail("Response control with unexpected OID " + c.getOID());
}
}
@@ -538,25 +483,12 @@
* @throws Exception If an unexpected problem occurred.
*/
@Test( dependsOnMethods = { "testAdd" } )
- public void testInternalSearchByOffsetThreeOffset()
- throws Exception
+ public void testInternalSearchByOffsetThreeOffset() throws Exception
{
- InternalClientConnection conn =
- InternalClientConnection.getRootConnection();
-
- ArrayList<Control> requestControls = new ArrayList<Control>();
- requestControls.add(new ServerSideSortRequestControl(sortOrder));
- requestControls.add(new VLVRequestControl(0, 3, 3, 0));
-
- InternalSearchOperation internalSearch =
- new InternalSearchOperation(conn, InternalClientConnection.nextOperationID(),
- InternalClientConnection.nextMessageID(), requestControls,
- DN.valueOf("dc=vlvtest,dc=com"), SearchScope.WHOLE_SUBTREE,
- DereferenceAliasesPolicy.NEVER, 0, 0, false,
- SearchFilter.createFilterFromString("(objectClass=*)"),
- null, null);
-
- internalSearch.run();
+ final SearchRequest request = Requests.newSearchRequest(DN.valueOf("dc=vlvtest,dc=com"), SearchScope.WHOLE_SUBTREE)
+ .addControl(new ServerSideSortRequestControl(sortOrder))
+ .addControl(new VLVRequestControl(0, 3, 3, 0));
+ InternalSearchOperation internalSearch = getRootConnection().processSearch(request);
assertEquals(internalSearch.getResultCode(), ResultCode.SUCCESS);
ArrayList<DN> expectedDNOrder = new ArrayList<DN>();
@@ -565,13 +497,7 @@
expectedDNOrder.add(lowercaseMcGeeDN); // lowercase
expectedDNOrder.add(margaretJonesDN); // Maggie
- ArrayList<DN> returnedDNOrder = new ArrayList<DN>();
- for (Entry e : internalSearch.getSearchEntries())
- {
- returnedDNOrder.add(e.getName());
- }
-
- assertEquals(returnedDNOrder, expectedDNOrder);
+ assertThat(getDNs(internalSearch)).isEqualTo(expectedDNOrder);
List<Control> responseControls = internalSearch.getResponseControls();
assertNotNull(responseControls);
@@ -583,29 +509,15 @@
{
if (c.getOID().equals(OID_SERVER_SIDE_SORT_RESPONSE_CONTROL))
{
- if(c instanceof LDAPControl)
- {
- sortResponse = ServerSideSortResponseControl.DECODER.decode(c.isCritical(), ((LDAPControl)c).getValue());
- }
- else
- {
- sortResponse = (ServerSideSortResponseControl)c;
- }
+ sortResponse = asServerSideSortResponseControl(c);
}
else if (c.getOID().equals(OID_VLV_RESPONSE_CONTROL))
{
- if(c instanceof LDAPControl)
- {
- vlvResponse = VLVResponseControl.DECODER.decode(c.isCritical(), ((LDAPControl)c).getValue());
- }
- else
- {
- vlvResponse = (VLVResponseControl)c;
- }
+ vlvResponse = asVLVResponseControl(c);
}
else
{
- fail("Response control with unexpected OID " + c.getOID());
+ Assert.fail("Response control with unexpected OID " + c.getOID());
}
}
@@ -625,25 +537,12 @@
* @throws Exception If an unexpected problem occurred.
*/
@Test( dependsOnMethods = { "testAdd" } )
- public void testInternalSearchByOffsetNegativeOffset()
- throws Exception
+ public void testInternalSearchByOffsetNegativeOffset() throws Exception
{
- InternalClientConnection conn =
- InternalClientConnection.getRootConnection();
-
- ArrayList<Control> requestControls = new ArrayList<Control>();
- requestControls.add(new ServerSideSortRequestControl(sortOrder));
- requestControls.add(new VLVRequestControl(0, 3, -1, 0));
-
- InternalSearchOperation internalSearch =
- new InternalSearchOperation(conn, InternalClientConnection.nextOperationID(),
- InternalClientConnection.nextMessageID(), requestControls,
- DN.valueOf("dc=vlvtest,dc=com"), SearchScope.WHOLE_SUBTREE,
- DereferenceAliasesPolicy.NEVER, 0, 0, false,
- SearchFilter.createFilterFromString("(objectClass=*)"),
- null, null);
-
- internalSearch.run();
+ final SearchRequest request = Requests.newSearchRequest(DN.valueOf("dc=vlvtest,dc=com"), SearchScope.WHOLE_SUBTREE)
+ .addControl(new ServerSideSortRequestControl(sortOrder))
+ .addControl(new VLVRequestControl(0, 3, -1, 0));
+ InternalSearchOperation internalSearch = getRootConnection().processSearch(request);
// It will be successful because it's not a critical control.
assertEquals(internalSearch.getResultCode(), ResultCode.SUCCESS);
@@ -656,14 +555,7 @@
{
if (c.getOID().equals(OID_VLV_RESPONSE_CONTROL))
{
- if(c instanceof LDAPControl)
- {
- vlvResponse = VLVResponseControl.DECODER.decode(c.isCritical(), ((LDAPControl)c).getValue());
- }
- else
- {
- vlvResponse = (VLVResponseControl)c;
- }
+ vlvResponse = asVLVResponseControl(c);
}
}
@@ -679,25 +571,12 @@
* @throws Exception If an unexpected problem occurred.
*/
@Test( dependsOnMethods = { "testAdd" } )
- public void testInternalSearchByOffsetNegativeStartPosition()
- throws Exception
+ public void testInternalSearchByOffsetNegativeStartPosition() throws Exception
{
- InternalClientConnection conn =
- InternalClientConnection.getRootConnection();
-
- ArrayList<Control> requestControls = new ArrayList<Control>();
- requestControls.add(new ServerSideSortRequestControl(sortOrder));
- requestControls.add(new VLVRequestControl(3, 3, 1, 0));
-
- InternalSearchOperation internalSearch =
- new InternalSearchOperation(conn, InternalClientConnection.nextOperationID(),
- InternalClientConnection.nextMessageID(), requestControls,
- DN.valueOf("dc=vlvtest,dc=com"), SearchScope.WHOLE_SUBTREE,
- DereferenceAliasesPolicy.NEVER, 0, 0, false,
- SearchFilter.createFilterFromString("(objectClass=*)"),
- null, null);
-
- internalSearch.run();
+ final SearchRequest request = Requests.newSearchRequest(DN.valueOf("dc=vlvtest,dc=com"), SearchScope.WHOLE_SUBTREE)
+ .addControl(new ServerSideSortRequestControl(sortOrder))
+ .addControl(new VLVRequestControl(3, 3, 1, 0));
+ InternalSearchOperation internalSearch = getRootConnection().processSearch(request);
// It will be successful because it's not a critical control.
assertEquals(internalSearch.getResultCode(), ResultCode.SUCCESS);
@@ -710,14 +589,7 @@
{
if (c.getOID().equals(OID_VLV_RESPONSE_CONTROL))
{
- if(c instanceof LDAPControl)
- {
- vlvResponse = VLVResponseControl.DECODER.decode(c.isCritical(), ((LDAPControl)c).getValue());
- }
- else
- {
- vlvResponse = (VLVResponseControl)c;
- }
+ vlvResponse = asVLVResponseControl(c);
}
}
@@ -732,25 +604,12 @@
* @throws Exception If an unexpected problem occurred.
*/
@Test( dependsOnMethods = { "testAdd" } )
- public void testInternalSearchByOffsetStartPositionTooHigh()
- throws Exception
+ public void testInternalSearchByOffsetStartPositionTooHigh() throws Exception
{
- InternalClientConnection conn =
- InternalClientConnection.getRootConnection();
-
- ArrayList<Control> requestControls = new ArrayList<Control>();
- requestControls.add(new ServerSideSortRequestControl(sortOrder));
- requestControls.add(new VLVRequestControl(3, 3, 30, 0));
-
- InternalSearchOperation internalSearch =
- new InternalSearchOperation(conn, InternalClientConnection.nextOperationID(),
- InternalClientConnection.nextMessageID(), requestControls,
- DN.valueOf("dc=vlvtest,dc=com"), SearchScope.WHOLE_SUBTREE,
- DereferenceAliasesPolicy.NEVER, 0, 0, false,
- SearchFilter.createFilterFromString("(objectClass=*)"),
- null, null);
-
- internalSearch.run();
+ final SearchRequest request = Requests.newSearchRequest(DN.valueOf("dc=vlvtest,dc=com"), SearchScope.WHOLE_SUBTREE)
+ .addControl(new ServerSideSortRequestControl(sortOrder))
+ .addControl(new VLVRequestControl(3, 3, 30, 0));
+ InternalSearchOperation internalSearch = getRootConnection().processSearch(request);
assertEquals(internalSearch.getResultCode(), ResultCode.SUCCESS);
@@ -759,13 +618,7 @@
expectedDNOrder.add(zorroDN); // No first name
expectedDNOrder.add(suffixDN); // No sort attributes
- ArrayList<DN> returnedDNOrder = new ArrayList<DN>();
- for (Entry e : internalSearch.getSearchEntries())
- {
- returnedDNOrder.add(e.getName());
- }
-
- assertEquals(returnedDNOrder, expectedDNOrder);
+ assertThat(getDNs(internalSearch)).isEqualTo(expectedDNOrder);
List<Control> responseControls = internalSearch.getResponseControls();
assertNotNull(responseControls);
@@ -775,14 +628,7 @@
{
if (c.getOID().equals(OID_VLV_RESPONSE_CONTROL))
{
- if(c instanceof LDAPControl)
- {
- vlvResponse = VLVResponseControl.DECODER.decode(c.isCritical(), ((LDAPControl)c).getValue());
- }
- else
- {
- vlvResponse = (VLVResponseControl)c;
- }
+ vlvResponse = asVLVResponseControl(c);
}
}
@@ -800,25 +646,13 @@
* @throws Exception If an unexpected problem occurred.
*/
@Test( dependsOnMethods = { "testAdd" } )
- public void testInternalSearchByOffsetIncompleteAfterCount()
- throws Exception
+ public void testInternalSearchByOffsetIncompleteAfterCount() throws Exception
{
- InternalClientConnection conn =
- InternalClientConnection.getRootConnection();
+ final SearchRequest request = Requests.newSearchRequest(DN.valueOf("dc=vlvtest,dc=com"), SearchScope.WHOLE_SUBTREE)
+ .addControl(new ServerSideSortRequestControl(sortOrder))
+ .addControl(new VLVRequestControl(0, 4, 7, 0));
- ArrayList<Control> requestControls = new ArrayList<Control>();
- requestControls.add(new ServerSideSortRequestControl(sortOrder));
- requestControls.add(new VLVRequestControl(0, 4, 7, 0));
-
- InternalSearchOperation internalSearch =
- new InternalSearchOperation(conn, InternalClientConnection.nextOperationID(),
- InternalClientConnection.nextMessageID(), requestControls,
- DN.valueOf("dc=vlvtest,dc=com"), SearchScope.WHOLE_SUBTREE,
- DereferenceAliasesPolicy.NEVER, 0, 0, false,
- SearchFilter.createFilterFromString("(objectClass=*)"),
- null, null);
-
- internalSearch.run();
+ InternalSearchOperation internalSearch = getRootConnection().processSearch(request);
assertEquals(internalSearch.getResultCode(), ResultCode.SUCCESS);
ArrayList<DN> expectedDNOrder = new ArrayList<DN>();
@@ -827,13 +661,7 @@
expectedDNOrder.add(zorroDN); // No first name
expectedDNOrder.add(suffixDN); // No sort attributes
- ArrayList<DN> returnedDNOrder = new ArrayList<DN>();
- for (Entry e : internalSearch.getSearchEntries())
- {
- returnedDNOrder.add(e.getName());
- }
-
- assertEquals(returnedDNOrder, expectedDNOrder);
+ assertThat(getDNs(internalSearch)).isEqualTo(expectedDNOrder);
List<Control> responseControls = internalSearch.getResponseControls();
assertNotNull(responseControls);
@@ -845,29 +673,15 @@
{
if (c.getOID().equals(OID_SERVER_SIDE_SORT_RESPONSE_CONTROL))
{
- if(c instanceof LDAPControl)
- {
- sortResponse = ServerSideSortResponseControl.DECODER.decode(c.isCritical(), ((LDAPControl)c).getValue());
- }
- else
- {
- sortResponse = (ServerSideSortResponseControl)c;
- }
+ sortResponse = asServerSideSortResponseControl(c);
}
else if (c.getOID().equals(OID_VLV_RESPONSE_CONTROL))
{
- if(c instanceof LDAPControl)
- {
- vlvResponse = VLVResponseControl.DECODER.decode(c.isCritical(), ((LDAPControl)c).getValue());
- }
- else
- {
- vlvResponse = (VLVResponseControl)c;
- }
+ vlvResponse = asVLVResponseControl(c);
}
else
{
- fail("Response control with unexpected OID " + c.getOID());
+ Assert.fail("Response control with unexpected OID " + c.getOID());
}
}
@@ -880,6 +694,24 @@
assertEquals(vlvResponse.getContentCount(), 10);
}
+ private VLVResponseControl asVLVResponseControl(Control c) throws DirectoryException
+ {
+ if(c instanceof LDAPControl)
+ {
+ return VLVResponseControl.DECODER.decode(c.isCritical(), ((LDAPControl) c).getValue());
+ }
+ return (VLVResponseControl) c;
+ }
+
+ private ServerSideSortResponseControl asServerSideSortResponseControl(Control c) throws DirectoryException
+ {
+ if(c instanceof LDAPControl)
+ {
+ return ServerSideSortResponseControl.DECODER.decode(c.isCritical(), ((LDAPControl) c).getValue());
+ }
+ return (ServerSideSortResponseControl) c;
+ }
+
/**
* Tests performing an internal search using the VLV control to retrieve a
* subset of the entries using an assertion value before any actual value in
@@ -888,40 +720,16 @@
* @throws Exception If an unexpected problem occurred.
*/
@Test( dependsOnMethods = { "testAdd" } )
- public void testInternalSearchByValueBeforeAll()
- throws Exception
+ public void testInternalSearchByValueBeforeAll() throws Exception
{
- InternalClientConnection conn =
- InternalClientConnection.getRootConnection();
+ final SearchRequest request = Requests.newSearchRequest(DN.valueOf("dc=vlvtest,dc=com"), SearchScope.WHOLE_SUBTREE)
+ .addControl(new ServerSideSortRequestControl(sortOrder))
+ .addControl(new VLVRequestControl(0, 3, ByteString.valueOf("a")));
+ InternalSearchOperation internalSearch = getRootConnection().processSearch(request);
- ArrayList<Control> requestControls = new ArrayList<Control>();
- requestControls.add(new ServerSideSortRequestControl(sortOrder));
- requestControls.add(new VLVRequestControl(0, 3, ByteString.valueOf("a")));
-
- InternalSearchOperation internalSearch =
- new InternalSearchOperation(conn, InternalClientConnection.nextOperationID(),
- InternalClientConnection.nextMessageID(), requestControls,
- DN.valueOf("dc=vlvtest,dc=com"), SearchScope.WHOLE_SUBTREE,
- DereferenceAliasesPolicy.NEVER, 0, 0, false,
- SearchFilter.createFilterFromString("(objectClass=*)"),
- null, null);
-
- internalSearch.run();
assertEquals(internalSearch.getResultCode(), ResultCode.SUCCESS);
- ArrayList<DN> expectedDNOrder = new ArrayList<DN>();
- expectedDNOrder.add(aaccfJohnsonDN); // Aaccf
- expectedDNOrder.add(aaronZimmermanDN); // Aaron
- expectedDNOrder.add(albertZimmermanDN); // Albert, lower entry ID
- expectedDNOrder.add(albertSmithDN); // Albert, higher entry ID
-
- ArrayList<DN> returnedDNOrder = new ArrayList<DN>();
- for (Entry e : internalSearch.getSearchEntries())
- {
- returnedDNOrder.add(e.getName());
- }
-
- assertEquals(returnedDNOrder, expectedDNOrder);
+ assertThat(getDNs(internalSearch)).isEqualTo(expectedDNOrder());
List<Control> responseControls = internalSearch.getResponseControls();
assertNotNull(responseControls);
@@ -933,29 +741,15 @@
{
if (c.getOID().equals(OID_SERVER_SIDE_SORT_RESPONSE_CONTROL))
{
- if(c instanceof LDAPControl)
- {
- sortResponse = ServerSideSortResponseControl.DECODER.decode(c.isCritical(), ((LDAPControl)c).getValue());
- }
- else
- {
- sortResponse = (ServerSideSortResponseControl)c;
- }
+ sortResponse = asServerSideSortResponseControl(c);
}
else if (c.getOID().equals(OID_VLV_RESPONSE_CONTROL))
{
- if(c instanceof LDAPControl)
- {
- vlvResponse = VLVResponseControl.DECODER.decode(c.isCritical(), ((LDAPControl)c).getValue());
- }
- else
- {
- vlvResponse = (VLVResponseControl)c;
- }
+ vlvResponse = asVLVResponseControl(c);
}
else
{
- fail("Response control with unexpected OID " + c.getOID());
+ Assert.fail("Response control with unexpected OID " + c.getOID());
}
}
@@ -976,41 +770,16 @@
* @throws Exception If an unexpected problem occurred.
*/
@Test( dependsOnMethods = { "testAdd" } )
- public void testInternalSearchByValueMatchesFirst()
- throws Exception
+ public void testInternalSearchByValueMatchesFirst() throws Exception
{
- InternalClientConnection conn =
- InternalClientConnection.getRootConnection();
+ final SearchRequest request = Requests.newSearchRequest(DN.valueOf("dc=vlvtest,dc=com"), SearchScope.WHOLE_SUBTREE)
+ .addControl(new ServerSideSortRequestControl(sortOrder))
+ .addControl(new VLVRequestControl(0, 3, ByteString.valueOf("aaccf")));
- ArrayList<Control> requestControls = new ArrayList<Control>();
- requestControls.add(new ServerSideSortRequestControl(sortOrder));
- requestControls.add(new VLVRequestControl(0, 3,
- ByteString.valueOf("aaccf")));
-
- InternalSearchOperation internalSearch =
- new InternalSearchOperation(conn, InternalClientConnection.nextOperationID(),
- InternalClientConnection.nextMessageID(), requestControls,
- DN.valueOf("dc=vlvtest,dc=com"), SearchScope.WHOLE_SUBTREE,
- DereferenceAliasesPolicy.NEVER, 0, 0, false,
- SearchFilter.createFilterFromString("(objectClass=*)"),
- null, null);
-
- internalSearch.run();
+ InternalSearchOperation internalSearch = getRootConnection().processSearch(request);
assertEquals(internalSearch.getResultCode(), ResultCode.SUCCESS);
- ArrayList<DN> expectedDNOrder = new ArrayList<DN>();
- expectedDNOrder.add(aaccfJohnsonDN); // Aaccf
- expectedDNOrder.add(aaronZimmermanDN); // Aaron
- expectedDNOrder.add(albertZimmermanDN); // Albert, lower entry ID
- expectedDNOrder.add(albertSmithDN); // Albert, higher entry ID
-
- ArrayList<DN> returnedDNOrder = new ArrayList<DN>();
- for (Entry e : internalSearch.getSearchEntries())
- {
- returnedDNOrder.add(e.getName());
- }
-
- assertEquals(returnedDNOrder, expectedDNOrder);
+ assertThat(getDNs(internalSearch)).isEqualTo(expectedDNOrder());
List<Control> responseControls = internalSearch.getResponseControls();
assertNotNull(responseControls);
@@ -1022,29 +791,15 @@
{
if (c.getOID().equals(OID_SERVER_SIDE_SORT_RESPONSE_CONTROL))
{
- if(c instanceof LDAPControl)
- {
- sortResponse = ServerSideSortResponseControl.DECODER.decode(c.isCritical(), ((LDAPControl)c).getValue());
- }
- else
- {
- sortResponse = (ServerSideSortResponseControl)c;
- }
+ sortResponse = asServerSideSortResponseControl(c);
}
else if (c.getOID().equals(OID_VLV_RESPONSE_CONTROL))
{
- if(c instanceof LDAPControl)
- {
- vlvResponse = VLVResponseControl.DECODER.decode(c.isCritical(), ((LDAPControl)c).getValue());
- }
- else
- {
- vlvResponse = (VLVResponseControl)c;
- }
+ vlvResponse = asVLVResponseControl(c);
}
else
{
- fail("Response control with unexpected OID " + c.getOID());
+ Assert.fail("Response control with unexpected OID " + c.getOID());
}
}
@@ -1065,26 +820,13 @@
* @throws Exception If an unexpected problem occurred.
*/
@Test( dependsOnMethods = { "testAdd" } )
- public void testInternalSearchByValueMatchesThird()
- throws Exception
+ public void testInternalSearchByValueMatchesThird() throws Exception
{
- InternalClientConnection conn =
- InternalClientConnection.getRootConnection();
+ final SearchRequest request = Requests.newSearchRequest(DN.valueOf("dc=vlvtest,dc=com"), SearchScope.WHOLE_SUBTREE)
+ .addControl(new ServerSideSortRequestControl(sortOrder))
+ .addControl(new VLVRequestControl(0, 3, ByteString.valueOf("albert")));
- ArrayList<Control> requestControls = new ArrayList<Control>();
- requestControls.add(new ServerSideSortRequestControl(sortOrder));
- requestControls.add(new VLVRequestControl(0, 3,
- ByteString.valueOf("albert")));
-
- InternalSearchOperation internalSearch =
- new InternalSearchOperation(conn, InternalClientConnection.nextOperationID(),
- InternalClientConnection.nextMessageID(), requestControls,
- DN.valueOf("dc=vlvtest,dc=com"), SearchScope.WHOLE_SUBTREE,
- DereferenceAliasesPolicy.NEVER, 0, 0, false,
- SearchFilter.createFilterFromString("(objectClass=*)"),
- null, null);
-
- internalSearch.run();
+ InternalSearchOperation internalSearch = getRootConnection().processSearch(request);
assertEquals(internalSearch.getResultCode(), ResultCode.SUCCESS);
ArrayList<DN> expectedDNOrder = new ArrayList<DN>();
@@ -1093,13 +835,7 @@
expectedDNOrder.add(lowercaseMcGeeDN); // lowercase
expectedDNOrder.add(margaretJonesDN); // Maggie
- ArrayList<DN> returnedDNOrder = new ArrayList<DN>();
- for (Entry e : internalSearch.getSearchEntries())
- {
- returnedDNOrder.add(e.getName());
- }
-
- assertEquals(returnedDNOrder, expectedDNOrder);
+ assertThat(getDNs(internalSearch)).isEqualTo(expectedDNOrder);
List<Control> responseControls = internalSearch.getResponseControls();
assertNotNull(responseControls);
@@ -1111,29 +847,15 @@
{
if (c.getOID().equals(OID_SERVER_SIDE_SORT_RESPONSE_CONTROL))
{
- if(c instanceof LDAPControl)
- {
- sortResponse = ServerSideSortResponseControl.DECODER.decode(c.isCritical(), ((LDAPControl)c).getValue());
- }
- else
- {
- sortResponse = (ServerSideSortResponseControl)c;
- }
+ sortResponse = asServerSideSortResponseControl(c);
}
else if (c.getOID().equals(OID_VLV_RESPONSE_CONTROL))
{
- if(c instanceof LDAPControl)
- {
- vlvResponse = VLVResponseControl.DECODER.decode(c.isCritical(), ((LDAPControl)c).getValue());
- }
- else
- {
- vlvResponse = (VLVResponseControl)c;
- }
+ vlvResponse = asVLVResponseControl(c);
}
else
{
- fail("Response control with unexpected OID " + c.getOID());
+ Assert.fail("Response control with unexpected OID " + c.getOID());
}
}
@@ -1154,26 +876,13 @@
* @throws Exception If an unexpected problem occurred.
*/
@Test( dependsOnMethods = { "testAdd" } )
- public void testInternalSearchByValueMatchesThirdWithBeforeCount()
- throws Exception
+ public void testInternalSearchByValueMatchesThirdWithBeforeCount() throws Exception
{
- InternalClientConnection conn =
- InternalClientConnection.getRootConnection();
+ final SearchRequest request = Requests.newSearchRequest(DN.valueOf("dc=vlvtest,dc=com"), SearchScope.WHOLE_SUBTREE)
+ .addControl(new ServerSideSortRequestControl(sortOrder))
+ .addControl(new VLVRequestControl(1, 3, ByteString.valueOf("albert")));
- ArrayList<Control> requestControls = new ArrayList<Control>();
- requestControls.add(new ServerSideSortRequestControl(sortOrder));
- requestControls.add(new VLVRequestControl(1, 3,
- ByteString.valueOf("albert")));
-
- InternalSearchOperation internalSearch =
- new InternalSearchOperation(conn, InternalClientConnection.nextOperationID(),
- InternalClientConnection.nextMessageID(), requestControls,
- DN.valueOf("dc=vlvtest,dc=com"), SearchScope.WHOLE_SUBTREE,
- DereferenceAliasesPolicy.NEVER, 0, 0, false,
- SearchFilter.createFilterFromString("(objectClass=*)"),
- null, null);
-
- internalSearch.run();
+ InternalSearchOperation internalSearch = getRootConnection().processSearch(request);
assertEquals(internalSearch.getResultCode(), ResultCode.SUCCESS);
ArrayList<DN> expectedDNOrder = new ArrayList<DN>();
@@ -1183,13 +892,7 @@
expectedDNOrder.add(lowercaseMcGeeDN); // lowercase
expectedDNOrder.add(margaretJonesDN); // Maggie
- ArrayList<DN> returnedDNOrder = new ArrayList<DN>();
- for (Entry e : internalSearch.getSearchEntries())
- {
- returnedDNOrder.add(e.getName());
- }
-
- assertEquals(returnedDNOrder, expectedDNOrder);
+ assertThat(getDNs(internalSearch)).isEqualTo(expectedDNOrder);
List<Control> responseControls = internalSearch.getResponseControls();
assertNotNull(responseControls);
@@ -1201,29 +904,15 @@
{
if (c.getOID().equals(OID_SERVER_SIDE_SORT_RESPONSE_CONTROL))
{
- if(c instanceof LDAPControl)
- {
- sortResponse = ServerSideSortResponseControl.DECODER.decode(c.isCritical(), ((LDAPControl)c).getValue());
- }
- else
- {
- sortResponse = (ServerSideSortResponseControl)c;
- }
+ sortResponse = asServerSideSortResponseControl(c);
}
else if (c.getOID().equals(OID_VLV_RESPONSE_CONTROL))
{
- if(c instanceof LDAPControl)
- {
- vlvResponse = VLVResponseControl.DECODER.decode(c.isCritical(), ((LDAPControl)c).getValue());
- }
- else
- {
- vlvResponse = (VLVResponseControl)c;
- }
+ vlvResponse = asVLVResponseControl(c);
}
else
{
- fail("Response control with unexpected OID " + c.getOID());
+ Assert.fail("Response control with unexpected OID " + c.getOID());
}
}
@@ -1244,25 +933,12 @@
* @throws Exception If an unexpected problem occurred.
*/
@Test( dependsOnMethods = { "testAdd" } )
- public void testInternalSearchByValueAfterAll()
- throws Exception
+ public void testInternalSearchByValueAfterAll() throws Exception
{
- InternalClientConnection conn =
- InternalClientConnection.getRootConnection();
-
- ArrayList<Control> requestControls = new ArrayList<Control>();
- requestControls.add(new ServerSideSortRequestControl(sortOrder));
- requestControls.add(new VLVRequestControl(0, 3, ByteString.valueOf("zz")));
-
- InternalSearchOperation internalSearch =
- new InternalSearchOperation(conn, InternalClientConnection.nextOperationID(),
- InternalClientConnection.nextMessageID(), requestControls,
- DN.valueOf("dc=vlvtest,dc=com"), SearchScope.WHOLE_SUBTREE,
- DereferenceAliasesPolicy.NEVER, 0, 0, false,
- SearchFilter.createFilterFromString("(objectClass=*)"),
- null, null);
-
- internalSearch.run();
+ final SearchRequest request = Requests.newSearchRequest(DN.valueOf("dc=vlvtest,dc=com"), SearchScope.WHOLE_SUBTREE)
+ .addControl(new ServerSideSortRequestControl(sortOrder))
+ .addControl(new VLVRequestControl(0, 3, ByteString.valueOf("zz")));
+ InternalSearchOperation internalSearch = getRootConnection().processSearch(request);
// It will be successful because the control isn't critical.
assertEquals(internalSearch.getResultCode(), ResultCode.SUCCESS);
@@ -1272,13 +948,7 @@
expectedDNOrder.add(zorroDN); // No first name
expectedDNOrder.add(suffixDN); // No sort attributes
- ArrayList<DN> returnedDNOrder = new ArrayList<DN>();
- for (Entry e : internalSearch.getSearchEntries())
- {
- returnedDNOrder.add(e.getName());
- }
-
- assertEquals(returnedDNOrder, expectedDNOrder);
+ assertThat(getDNs(internalSearch)).isEqualTo(expectedDNOrder);
List<Control> responseControls = internalSearch.getResponseControls();
assertNotNull(responseControls);
@@ -1288,14 +958,7 @@
{
if (c.getOID().equals(OID_VLV_RESPONSE_CONTROL))
{
- if(c instanceof LDAPControl)
- {
- vlvResponse = VLVResponseControl.DECODER.decode(c.isCritical(), ((LDAPControl)c).getValue());
- }
- else
- {
- vlvResponse = (VLVResponseControl)c;
- }
+ vlvResponse = asVLVResponseControl(c);
}
}
diff --git a/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/controls/PasswordPolicyControlTestCase.java b/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/controls/PasswordPolicyControlTestCase.java
index f5cbbb4..f5abb42 100644
--- a/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/controls/PasswordPolicyControlTestCase.java
+++ b/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/controls/PasswordPolicyControlTestCase.java
@@ -1580,9 +1580,8 @@
SearchRequestProtocolOp searchRequest =
new SearchRequestProtocolOp(ByteString.valueOf("o=test"),
SearchScope.BASE_OBJECT,
- DereferenceAliasesPolicy.NEVER, 0,
- 0, false,
- LDAPFilter.decode("(objectClass=*)"),
+ DereferenceAliasesPolicy.NEVER, 0, 0, false,
+ LDAPFilter.objectClassPresent(),
new LinkedHashSet<String>());
List<Control> controls = new ArrayList<Control>();
diff --git a/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/controls/PersistentSearchControlTest.java b/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/controls/PersistentSearchControlTest.java
index 4400bc5..3d532bc 100644
--- a/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/controls/PersistentSearchControlTest.java
+++ b/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/controls/PersistentSearchControlTest.java
@@ -548,7 +548,7 @@
//Create a persistent search request.
Set<PersistentSearchChangeType> changeTypes = EnumSet.of(ADD, DELETE, MODIFY, MODIFY_DN);
- SearchRequest request = newSearchRequest("o=test", SearchScope.BASE_OBJECT, "(objectClass=*)")
+ SearchRequest request = newSearchRequest(DN.valueOf("o=test"), SearchScope.BASE_OBJECT)
.setTypesOnly(true)
.addAttribute("cn")
.addControl(new PersistentSearchControl(changeTypes, true, true));
diff --git a/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/core/BackendConfigManagerTestCase.java b/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/core/BackendConfigManagerTestCase.java
index f82756b..4544b25 100644
--- a/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/core/BackendConfigManagerTestCase.java
+++ b/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/core/BackendConfigManagerTestCase.java
@@ -266,7 +266,7 @@
InternalClientConnection conn = getRootConnection();
// Make sure that both entries exist.
- final SearchRequest request = newSearchRequest(parentBaseDN, SearchScope.WHOLE_SUBTREE, "(objectClass=*)");
+ final SearchRequest request = newSearchRequest(parentBaseDN, SearchScope.WHOLE_SUBTREE);
InternalSearchOperation internalSearch = conn.processSearch(request);
assertEquals(internalSearch.getResultCode(), ResultCode.SUCCESS);
assertEquals(internalSearch.getSearchEntries().size(), 2);
@@ -337,7 +337,7 @@
// Verify that we can see both entries with a subtree search.
- final SearchRequest request = newSearchRequest(parentBaseDN, SearchScope.WHOLE_SUBTREE, "(objectClass=*)");
+ final SearchRequest request = newSearchRequest(parentBaseDN, SearchScope.WHOLE_SUBTREE);
InternalSearchOperation internalSearch = getRootConnection().processSearch(request);
assertEquals(internalSearch.getResultCode(), ResultCode.SUCCESS);
assertEquals(internalSearch.getSearchEntries().size(), 2);
@@ -429,7 +429,7 @@
InternalClientConnection conn = getRootConnection();
// Verify that a subtree search can see all three entries.
- final SearchRequest request = newSearchRequest(parentBaseDN, SearchScope.WHOLE_SUBTREE, "(objectClass=*)");
+ final SearchRequest request = newSearchRequest(parentBaseDN, SearchScope.WHOLE_SUBTREE);
assertSearchResultsSize(request, 3);
diff --git a/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/core/GroupManagerTestCase.java b/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/core/GroupManagerTestCase.java
index 303ef5d..3e42541 100644
--- a/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/core/GroupManagerTestCase.java
+++ b/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/core/GroupManagerTestCase.java
@@ -62,6 +62,7 @@
import org.opends.server.types.SearchFilter;
import org.forgerock.opendj.ldap.SearchScope;
+import static org.opends.server.protocols.internal.InternalClientConnection.*;
import static org.opends.server.util.ServerConstants.*;
import static org.testng.Assert.*;
@@ -1415,12 +1416,10 @@
// group operations correctly.
InternalClientConnection conn0 = new InternalClientConnection(DN.rootDN());
InternalSearchOperation searchOperation =
- new InternalSearchOperation(conn0, InternalClientConnection.nextOperationID(),
- InternalClientConnection.nextMessageID(), null, DN.rootDN(),
- SearchScope.BASE_OBJECT,
+ new InternalSearchOperation(conn0, nextOperationID(), nextMessageID(), null,
+ DN.rootDN(), SearchScope.BASE_OBJECT,
DereferenceAliasesPolicy.NEVER, 0, 0, false,
- SearchFilter.createFilterFromString("(objectClass=*)"), null,
- null);
+ SearchFilter.objectClassPresent(), null, null);
assertFalse(conn0.isMemberOf(group1, null));
assertFalse(conn0.isMemberOf(group2, null));
@@ -1441,12 +1440,11 @@
// group operations correctly.
InternalClientConnection conn1 = new InternalClientConnection(user1DN);
searchOperation =
- new InternalSearchOperation(conn1, InternalClientConnection.nextOperationID(),
- InternalClientConnection.nextMessageID(), null, DN.rootDN(),
+ new InternalSearchOperation(conn1, nextOperationID(),
+ nextMessageID(), null, DN.rootDN(),
SearchScope.BASE_OBJECT,
DereferenceAliasesPolicy.NEVER, 0, 0, false,
- SearchFilter.createFilterFromString("(objectClass=*)"), null,
- null);
+ SearchFilter.objectClassPresent(), null, null);
assertTrue(conn1.isMemberOf(group1, null));
assertFalse(conn1.isMemberOf(group2, null));
@@ -1471,12 +1469,11 @@
// group operations correctly.
InternalClientConnection conn2 = new InternalClientConnection(user2DN);
searchOperation =
- new InternalSearchOperation(conn2, InternalClientConnection.nextOperationID(),
- InternalClientConnection.nextMessageID(), null, DN.rootDN(),
+ new InternalSearchOperation(conn2, nextOperationID(),
+ nextMessageID(), null, DN.rootDN(),
SearchScope.BASE_OBJECT,
DereferenceAliasesPolicy.NEVER, 0, 0, false,
- SearchFilter.createFilterFromString("(objectClass=*)"), null,
- null);
+ SearchFilter.objectClassPresent(), null, null);
assertTrue(conn2.isMemberOf(group1, null));
assertTrue(conn2.isMemberOf(group2, null));
@@ -1501,12 +1498,11 @@
// group operations correctly.
InternalClientConnection conn3 = new InternalClientConnection(user3DN);
searchOperation =
- new InternalSearchOperation(conn3, InternalClientConnection.nextOperationID(),
- InternalClientConnection.nextMessageID(), null, DN.rootDN(),
+ new InternalSearchOperation(conn3, nextOperationID(),
+ nextMessageID(), null, DN.rootDN(),
SearchScope.BASE_OBJECT,
DereferenceAliasesPolicy.NEVER, 0, 0, false,
- SearchFilter.createFilterFromString("(objectClass=*)"), null,
- null);
+ SearchFilter.objectClassPresent(), null, null);
assertFalse(conn3.isMemberOf(group1, null));
assertTrue(conn3.isMemberOf(group2, null));
@@ -1639,10 +1635,8 @@
// Perform a filtered iteration across the member DNs.
- SearchFilter filter =
- SearchFilter.createFilterFromString("(objectClass=*)");
- memberList = groupInstance.getMembers(DN.valueOf("o=test"),
- SearchScope.WHOLE_SUBTREE, filter);
+ memberList = groupInstance.getMembers(
+ DN.valueOf("o=test"), SearchScope.WHOLE_SUBTREE, SearchFilter.objectClassPresent());
while (memberList.hasMoreMembers())
{
try
@@ -1668,9 +1662,8 @@
// Perform a filtered iteration across the member entries.
- filter = SearchFilter.createFilterFromString("(objectClass=*)");
- memberList = groupInstance.getMembers(DN.valueOf("o=test"),
- SearchScope.WHOLE_SUBTREE, filter);
+ memberList = groupInstance.getMembers(
+ DN.valueOf("o=test"), SearchScope.WHOLE_SUBTREE, SearchFilter.objectClassPresent());
while (memberList.hasMoreMembers())
{
try
@@ -2261,9 +2254,8 @@
memberSet.add(user1DN);
memberSet.add(user2DN);
- MemberList memberList =
- groupInstance.getMembers(DN.rootDN(), SearchScope.WHOLE_SUBTREE,
- SearchFilter.createFilterFromString("(objectClass=*)"));
+ MemberList memberList = groupInstance.getMembers(
+ DN.rootDN(), SearchScope.WHOLE_SUBTREE, SearchFilter.objectClassPresent());
assertNotNull(memberList);
while (memberList.hasMoreMembers())
{
diff --git a/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/core/SearchOperationTestCase.java b/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/core/SearchOperationTestCase.java
index e038963..37632e4 100644
--- a/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/core/SearchOperationTestCase.java
+++ b/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/core/SearchOperationTestCase.java
@@ -40,7 +40,6 @@
import org.opends.server.controls.MatchedValuesFilter;
import org.opends.server.controls.SubentriesControl;
import org.opends.server.plugins.InvocationCounterPlugin;
-import org.opends.server.protocols.internal.InternalClientConnection;
import org.opends.server.protocols.internal.InternalSearchOperation;
import org.opends.server.protocols.internal.Requests;
import org.opends.server.protocols.internal.SearchRequest;
@@ -175,14 +174,10 @@
@Override
protected Operation[] createTestOperations() throws Exception
{
- InternalClientConnection conn =
- InternalClientConnection.getRootConnection();
-
return new Operation[]
{
- new SearchOperationBasis(conn,
- InternalClientConnection.nextOperationID(),
- InternalClientConnection.nextMessageID(),
+ new SearchOperationBasis(
+ getRootConnection(), nextOperationID(), nextMessageID(),
new ArrayList<Control>(),
ByteString.valueOf(BASE),
SearchScope.WHOLE_SUBTREE,
@@ -190,7 +185,7 @@
-1,
-1,
false,
- LDAPFilter.decode("(objectclass=*)"),
+ LDAPFilter.objectClassPresent(),
null)
};
}
@@ -331,24 +326,7 @@
{
InvocationCounterPlugin.resetAllCounters();
- InternalClientConnection conn =
- InternalClientConnection.getRootConnection();
-
- InternalSearchOperation searchOperation =
- new InternalSearchOperation(
- conn,
- InternalClientConnection.nextOperationID(),
- InternalClientConnection.nextMessageID(),
- new ArrayList<Control>(),
- ByteString.valueOf(BASE),
- SearchScope.WHOLE_SUBTREE,
- DereferenceAliasesPolicy.NEVER,
- Integer.MAX_VALUE,
- Integer.MAX_VALUE,
- false,
- LDAPFilter.decode("(objectclass=*)"),
- null, null);
-
+ InternalSearchOperation searchOperation = newInternalSearchOperation(LDAPFilter.objectClassPresent());
searchOperation.run();
assertEquals(searchOperation.getResultCode(), ResultCode.SUCCESS);
assertEquals(searchOperation.getEntriesSent(), 4);
@@ -361,24 +339,8 @@
@Test
public void testSearchInternalUnspecifiedAttributes() throws Exception
{
- InternalClientConnection conn =
- InternalClientConnection.getRootConnection();
-
InternalSearchOperation searchOperation =
- new InternalSearchOperation(
- conn,
- InternalClientConnection.nextOperationID(),
- InternalClientConnection.nextMessageID(),
- new ArrayList<Control>(),
- ByteString.valueOf(BASE),
- SearchScope.WHOLE_SUBTREE,
- DereferenceAliasesPolicy.NEVER,
- Integer.MAX_VALUE,
- Integer.MAX_VALUE,
- false,
- LDAPFilter.decode("(objectclass=inetorgperson)"),
- null, null);
-
+ newInternalSearchOperation(LDAPFilter.decode("(objectclass=inetorgperson)"));
Entry resultEntry = searchInternalForSingleEntry(searchOperation);
assertEquals(resultEntry.getObjectClasses(), testEntry.getObjectClasses());
@@ -394,14 +356,9 @@
public void testSearchInternalUnspecifiedAttributesOmitValues()
throws Exception
{
- InternalClientConnection conn =
- InternalClientConnection.getRootConnection();
-
InternalSearchOperation searchOperation =
new InternalSearchOperation(
- conn,
- InternalClientConnection.nextOperationID(),
- InternalClientConnection.nextMessageID(),
+ getRootConnection(), nextOperationID(), nextMessageID(),
new ArrayList<Control>(),
ByteString.valueOf(BASE),
SearchScope.WHOLE_SUBTREE,
@@ -424,26 +381,8 @@
@Test
public void testSearchInternalAllOperationalAttributes() throws Exception
{
- InternalClientConnection conn =
- InternalClientConnection.getRootConnection();
-
- LinkedHashSet<String> attributes = new LinkedHashSet<String>();
- attributes.add("+");
InternalSearchOperation searchOperation =
- new InternalSearchOperation(
- conn,
- InternalClientConnection.nextOperationID(),
- InternalClientConnection.nextMessageID(),
- new ArrayList<Control>(),
- ByteString.valueOf(BASE),
- SearchScope.WHOLE_SUBTREE,
- DereferenceAliasesPolicy.NEVER,
- Integer.MAX_VALUE,
- Integer.MAX_VALUE,
- false,
- LDAPFilter.decode("(objectclass=inetorgperson)"),
- attributes, null);
-
+ newInternalSearchOperation(LDAPFilter.decode("(objectclass=inetorgperson)"), "+");
Entry resultEntry = searchInternalForSingleEntry(searchOperation);
assertEquals(resultEntry.getObjectClasses().size(), 0);
@@ -455,27 +394,8 @@
public void testSearchInternalAllUserAndOperationalAttributes()
throws Exception
{
- InternalClientConnection conn =
- InternalClientConnection.getRootConnection();
-
- LinkedHashSet<String> attributes = new LinkedHashSet<String>();
- attributes.add("*");
- attributes.add("+");
InternalSearchOperation searchOperation =
- new InternalSearchOperation(
- conn,
- InternalClientConnection.nextOperationID(),
- InternalClientConnection.nextMessageID(),
- new ArrayList<Control>(),
- ByteString.valueOf(BASE),
- SearchScope.WHOLE_SUBTREE,
- DereferenceAliasesPolicy.NEVER,
- Integer.MAX_VALUE,
- Integer.MAX_VALUE,
- false,
- LDAPFilter.decode("(objectclass=inetorgperson)"),
- attributes, null);
-
+ newInternalSearchOperation(LDAPFilter.decode("(objectclass=inetorgperson)"), "*", "+");
Entry resultEntry = searchInternalForSingleEntry(searchOperation);
assertEquals(resultEntry.getObjectClasses(), testEntry.getObjectClasses());
@@ -490,27 +410,8 @@
public void testSearchInternalAllUserAttributesPlusSelectedOperational()
throws Exception
{
- InternalClientConnection conn =
- InternalClientConnection.getRootConnection();
-
- LinkedHashSet<String> attributes = new LinkedHashSet<String>();
- attributes.add("*");
- attributes.add("createtimestamp");
InternalSearchOperation searchOperation =
- new InternalSearchOperation(
- conn,
- InternalClientConnection.nextOperationID(),
- InternalClientConnection.nextMessageID(),
- new ArrayList<Control>(),
- ByteString.valueOf(BASE),
- SearchScope.WHOLE_SUBTREE,
- DereferenceAliasesPolicy.NEVER,
- Integer.MAX_VALUE,
- Integer.MAX_VALUE,
- false,
- LDAPFilter.decode("(objectclass=inetorgperson)"),
- attributes, null);
-
+ newInternalSearchOperation(LDAPFilter.decode("(objectclass=inetorgperson)"), "*", "createtimestamp");
Entry resultEntry = searchInternalForSingleEntry(searchOperation);
assertEquals(resultEntry.getObjectClasses(), testEntry.getObjectClasses());
@@ -526,27 +427,8 @@
public void testSearchInternalSelectedAttributes()
throws Exception
{
- InternalClientConnection conn =
- InternalClientConnection.getRootConnection();
-
- LinkedHashSet<String> attributes = new LinkedHashSet<String>();
- attributes.add("uid");
- attributes.add("createtimestamp");
InternalSearchOperation searchOperation =
- new InternalSearchOperation(
- conn,
- InternalClientConnection.nextOperationID(),
- InternalClientConnection.nextMessageID(),
- new ArrayList<Control>(),
- ByteString.valueOf(BASE),
- SearchScope.WHOLE_SUBTREE,
- DereferenceAliasesPolicy.NEVER,
- Integer.MAX_VALUE,
- Integer.MAX_VALUE,
- false,
- LDAPFilter.decode("(objectclass=inetorgperson)"),
- attributes, null);
-
+ newInternalSearchOperation(LDAPFilter.decode("(objectclass=inetorgperson)"), "uid", "createtimestamp");
Entry resultEntry = searchInternalForSingleEntry(searchOperation);
assertEquals(resultEntry.getObjectClasses().size(), 0);
@@ -554,6 +436,17 @@
assertEquals(resultEntry.getOperationalAttributes().size(), 1);
}
+ private InternalSearchOperation newInternalSearchOperation(LDAPFilter filter, String... attributes)
+ {
+ return new InternalSearchOperation(
+ getRootConnection(), nextOperationID(), nextMessageID(),
+ new ArrayList<Control>(),
+ ByteString.valueOf(BASE),
+ SearchScope.WHOLE_SUBTREE,
+ DereferenceAliasesPolicy.NEVER, Integer.MAX_VALUE, Integer.MAX_VALUE, false,
+ filter, new LinkedHashSet<String>(Arrays.asList(attributes)), null);
+ }
+
@Test
public void testSearchExternalUnspecifiedAttributes() throws Exception
{
@@ -828,24 +721,8 @@
{
InvocationCounterPlugin.resetAllCounters();
- InternalClientConnection conn =
- InternalClientConnection.getRootConnection();
-
InternalSearchOperation searchOperation =
- new InternalSearchOperation(
- conn,
- InternalClientConnection.nextOperationID(),
- InternalClientConnection.nextMessageID(),
- new ArrayList<Control>(),
- ByteString.valueOf(BASE),
- SearchScope.WHOLE_SUBTREE,
- DereferenceAliasesPolicy.NEVER,
- Integer.MAX_VALUE,
- Integer.MAX_VALUE,
- false,
- LDAPFilter.decode("(objectclass=inetorgperson)"),
- null, null);
-
+ newInternalSearchOperation(LDAPFilter.decode("(objectclass=inetorgperson)"));
searchOperation.run();
assertEquals(searchOperation.getResultCode(), ResultCode.SUCCESS);
@@ -876,14 +753,8 @@
{
InvocationCounterPlugin.resetAllCounters();
- InternalClientConnection conn =
- InternalClientConnection.getRootConnection();
-
- InternalSearchOperation searchOperation =
- new InternalSearchOperation(
- conn,
- InternalClientConnection.nextOperationID(),
- InternalClientConnection.nextMessageID(),
+ InternalSearchOperation searchOperation = new InternalSearchOperation(
+ getRootConnection(), nextOperationID(), nextMessageID(),
new ArrayList<Control>(),
ByteString.valueOf(BASE),
SearchScope.SINGLE_LEVEL,
@@ -914,24 +785,8 @@
{
InvocationCounterPlugin.resetAllCounters();
- InternalClientConnection conn =
- InternalClientConnection.getRootConnection();
-
InternalSearchOperation searchOperation =
- new InternalSearchOperation(
- conn,
- InternalClientConnection.nextOperationID(),
- InternalClientConnection.nextMessageID(),
- new ArrayList<Control>(),
- ByteString.valueOf(BASE),
- SearchScope.WHOLE_SUBTREE,
- DereferenceAliasesPolicy.NEVER,
- Integer.MAX_VALUE,
- Integer.MAX_VALUE,
- false,
- LDAPFilter.decode("(objectclass=ldapsubentry)"),
- null, null);
-
+ newInternalSearchOperation(LDAPFilter.decode("(objectclass=ldapsubentry)"));
searchOperation.run();
assertEquals(searchOperation.getResultCode(), ResultCode.SUCCESS);
@@ -944,14 +799,9 @@
{
InvocationCounterPlugin.resetAllCounters();
- InternalClientConnection conn =
- InternalClientConnection.getRootConnection();
-
InternalSearchOperation searchOperation =
new InternalSearchOperation(
- conn,
- InternalClientConnection.nextOperationID(),
- InternalClientConnection.nextMessageID(),
+ getRootConnection(), nextOperationID(), nextMessageID(),
Collections.singletonList((Control)new SubentriesControl(true, true)),
ByteString.valueOf(BASE),
SearchScope.WHOLE_SUBTREE,
@@ -959,7 +809,7 @@
Integer.MAX_VALUE,
Integer.MAX_VALUE,
false,
- LDAPFilter.decode("(objectclass=*)"),
+ LDAPFilter.objectClassPresent(),
null, null);
searchOperation.run();
@@ -974,17 +824,13 @@
{
InvocationCounterPlugin.resetAllCounters();
- InternalClientConnection conn =
- InternalClientConnection.getRootConnection();
-
- InternalSearchOperation searchOperation = new InternalSearchOperation(conn,
- InternalClientConnection.nextOperationID(),
- InternalClientConnection.nextMessageID(),
+ InternalSearchOperation searchOperation = new InternalSearchOperation(
+ getRootConnection(), nextOperationID(), nextMessageID(),
Collections.singletonList((Control) new LDAPControl(
OID_LDUP_SUBENTRIES, true)), ByteString.valueOf(BASE),
SearchScope.WHOLE_SUBTREE, DereferenceAliasesPolicy.NEVER,
Integer.MAX_VALUE, Integer.MAX_VALUE, false,
- LDAPFilter.decode("(objectclass=*)"), null, null);
+ LDAPFilter.objectClassPresent(), null, null);
searchOperation.run();
@@ -998,45 +844,15 @@
{
InvocationCounterPlugin.resetAllCounters();
- InternalClientConnection conn =
- InternalClientConnection.getRootConnection();
-
InternalSearchOperation searchOperation =
- new InternalSearchOperation(
- conn,
- InternalClientConnection.nextOperationID(),
- InternalClientConnection.nextMessageID(),
- new ArrayList<Control>(),
- ByteString.valueOf(BASE),
- SearchScope.WHOLE_SUBTREE,
- DereferenceAliasesPolicy.NEVER,
- Integer.MAX_VALUE,
- Integer.MAX_VALUE,
- false,
- LDAPFilter.decode("(&(cn=*)(objectclass=ldapsubentry))"),
- null, null);
-
+ newInternalSearchOperation(LDAPFilter.decode("(&(cn=*)(objectclass=ldapsubentry))"));
searchOperation.run();
assertEquals(searchOperation.getResultCode(), ResultCode.SUCCESS);
assertEquals(searchOperation.getEntriesSent(), 1);
assertEquals(searchOperation.getErrorMessage().length(), 0);
- searchOperation =
- new InternalSearchOperation(
- conn,
- InternalClientConnection.nextOperationID(),
- InternalClientConnection.nextMessageID(),
- new ArrayList<Control>(),
- ByteString.valueOf(BASE),
- SearchScope.WHOLE_SUBTREE,
- DereferenceAliasesPolicy.NEVER,
- Integer.MAX_VALUE,
- Integer.MAX_VALUE,
- false,
- LDAPFilter.decode("(&(&(cn=*)(objectclass=ldapsubentry)))"),
- null, null);
-
+ searchOperation = newInternalSearchOperation(LDAPFilter.decode("(&(&(cn=*)(objectclass=ldapsubentry)))"));
searchOperation.run();
assertEquals(searchOperation.getResultCode(), ResultCode.SUCCESS);
@@ -1049,24 +865,8 @@
{
InvocationCounterPlugin.resetAllCounters();
- InternalClientConnection conn =
- InternalClientConnection.getRootConnection();
-
InternalSearchOperation searchOperation =
- new InternalSearchOperation(
- conn,
- InternalClientConnection.nextOperationID(),
- InternalClientConnection.nextMessageID(),
- new ArrayList<Control>(),
- ByteString.valueOf(BASE),
- SearchScope.WHOLE_SUBTREE,
- DereferenceAliasesPolicy.NEVER,
- Integer.MAX_VALUE,
- Integer.MAX_VALUE,
- false,
- LDAPFilter.decode("(|(objectclass=ldapsubentry)(objectclass=top))"),
- null, null);
-
+ newInternalSearchOperation(LDAPFilter.decode("(|(objectclass=ldapsubentry)(objectclass=top))"));
searchOperation.run();
assertEquals(searchOperation.getResultCode(), ResultCode.SUCCESS);
@@ -1080,14 +880,10 @@
InvocationCounterPlugin.resetAllCounters();
TestCaseUtils.initializeTestBackend(true);
- InternalClientConnection conn =
- InternalClientConnection.getRootConnection();
InternalSearchOperation searchOperation =
new InternalSearchOperation(
- conn,
- InternalClientConnection.nextOperationID(),
- InternalClientConnection.nextMessageID(),
+ getRootConnection(), nextOperationID(), nextMessageID(),
new ArrayList<Control>(),
ByteString.valueOf("ou=nonexistent,o=test"),
SearchScope.WHOLE_SUBTREE,
@@ -1095,7 +891,7 @@
Integer.MAX_VALUE,
Integer.MAX_VALUE,
false,
- LDAPFilter.decode("(objectclass=*)"),
+ LDAPFilter.objectClassPresent(),
null, null);
searchOperation.run();
@@ -1202,7 +998,7 @@
"cn: Test User",
"userPassword: password");
- final SearchRequest request = Requests.newSearchRequest(userDN, SearchScope.BASE_OBJECT, "(objectClass=*)");
+ final SearchRequest request = Requests.newSearchRequest(userDN, SearchScope.BASE_OBJECT);
request.setTypesOnly(typesOnly);
switch (filterType)
{
@@ -1403,7 +1199,7 @@
"cn;lang-fr: Test Usager",
"userPassword: password");
- SearchRequest request = Requests.newSearchRequest(userDNString, SearchScope.BASE_OBJECT, "(objectClass=*)")
+ SearchRequest request = Requests.newSearchRequest(userDN, SearchScope.BASE_OBJECT)
.addAttribute(requestedAttributes);
InternalSearchOperation search = getRootConnection().processSearch(request);
assertEquals(search.getResultCode(), ResultCode.SUCCESS);
@@ -1472,7 +1268,7 @@
Integer.MAX_VALUE,
Integer.MAX_VALUE,
false,
- LDAPFilter.decode("(objectclass=*)"),
+ LDAPFilter.objectClassPresent(),
attributes);
SearchResultEntryProtocolOp entry =
@@ -1531,15 +1327,9 @@
assertEquals(err,0);
- //Search for the entries.
- InternalClientConnection conn =
- InternalClientConnection.getRootConnection();
-
InternalSearchOperation searchOperation =
new InternalSearchOperation(
- conn,
- InternalClientConnection.nextOperationID(),
- InternalClientConnection.nextMessageID(),
+ getRootConnection(), nextOperationID(), nextMessageID(),
new ArrayList<Control>(),
ByteString.valueOf("dc=example,dc=com"),
SearchScope.SINGLE_LEVEL,
diff --git a/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/core/SubentryManagerTestCase.java b/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/core/SubentryManagerTestCase.java
index fb78212..b67b4fa 100644
--- a/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/core/SubentryManagerTestCase.java
+++ b/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/core/SubentryManagerTestCase.java
@@ -30,24 +30,21 @@
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
-import java.util.Set;
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.opends.server.TestCaseUtils;
import org.opends.server.protocols.internal.InternalClientConnection;
import org.opends.server.protocols.internal.InternalSearchOperation;
+import org.opends.server.protocols.internal.SearchRequest;
import org.opends.server.protocols.ldap.LDAPAttribute;
-import org.opends.server.protocols.ldap.LDAPFilter;
import org.opends.server.protocols.ldap.LDAPModification;
import org.opends.server.tools.LDAPDelete;
import org.opends.server.tools.LDAPModify;
import org.opends.server.types.Attribute;
import org.opends.server.types.AttributeType;
-import org.opends.server.types.Control;
import org.opends.server.types.DN;
import org.opends.server.types.DirectoryException;
import org.opends.server.types.Entry;
@@ -64,6 +61,7 @@
import static org.forgerock.opendj.ldap.ModificationType.*;
import static org.opends.server.TestCaseUtils.*;
import static org.opends.server.protocols.internal.InternalClientConnection.*;
+import static org.opends.server.protocols.internal.Requests.*;
import static org.opends.server.util.ServerConstants.*;
import static org.testng.Assert.*;
@@ -362,21 +360,12 @@
@Test
public void testCollectiveAttributeSubentries() throws Exception
{
- Set<String> attributes = newSet("collectiveAttributeSubentries");
- InternalSearchOperation searchOperation =
- new InternalSearchOperation(
- getRootConnection(), nextOperationID(), nextMessageID(),
- new ArrayList<Control>(),
- ByteString.valueOf(testEntry.getName().toString()),
- SearchScope.BASE_OBJECT,
- DereferenceAliasesPolicy.NEVER,
- Integer.MAX_VALUE,
- Integer.MAX_VALUE,
- false,
- LDAPFilter.decode("(objectclass=*)"),
- attributes, null);
+ SearchRequest request = newSearchRequest(testEntry.getName(), SearchScope.BASE_OBJECT)
+ .setSizeLimit(Integer.MAX_VALUE)
+ .setTimeLimit(Integer.MAX_VALUE)
+ .addAttribute("collectiveAttributeSubentries");
+ InternalSearchOperation searchOperation = getRootConnection().processSearch(request);
- searchOperation.run();
assertEquals(searchOperation.getResultCode(), ResultCode.SUCCESS);
assertEquals(searchOperation.getEntriesSent(), 1);
AttributeType attrType = DirectoryServer.getAttributeType("collectiveattributesubentries");
diff --git a/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/core/WorkflowConfigurationTest.java b/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/core/WorkflowConfigurationTest.java
index 6454441..4083ae2 100644
--- a/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/core/WorkflowConfigurationTest.java
+++ b/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/core/WorkflowConfigurationTest.java
@@ -29,8 +29,8 @@
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.ResultCode;
import org.forgerock.opendj.ldap.SearchScope;
import org.opends.server.TestCaseUtils;
import org.opends.server.api.Backend;
@@ -39,17 +39,21 @@
import org.opends.server.core.networkgroups.NetworkGroup;
import org.opends.server.protocols.internal.InternalClientConnection;
import org.opends.server.protocols.internal.InternalSearchOperation;
+import org.opends.server.protocols.internal.SearchRequest;
import org.opends.server.protocols.ldap.LDAPAttribute;
-import org.opends.server.protocols.ldap.LDAPFilter;
import org.opends.server.protocols.ldap.LDAPModification;
-import org.opends.server.types.*;
-import org.forgerock.opendj.ldap.ResultCode;
+import org.opends.server.types.Control;
+import org.opends.server.types.DN;
+import org.opends.server.types.Entry;
+import org.opends.server.types.RawModification;
import org.opends.server.util.StaticUtils;
import org.opends.server.util.UtilTestCase;
import org.opends.server.workflowelement.localbackend.LocalBackendWorkflowElement;
import org.testng.annotations.BeforeClass;
import org.testng.annotations.Test;
+import static org.opends.server.protocols.internal.InternalClientConnection.*;
+import static org.opends.server.protocols.internal.Requests.*;
import static org.opends.server.util.StaticUtils.*;
import static org.testng.Assert.*;
@@ -61,6 +65,7 @@
* With the manual configuration mode, all the network groups, workflows
* and workflow elements must be defined in the configuration file.
*/
+@SuppressWarnings("javadoc")
public class WorkflowConfigurationTest extends UtilTestCase
{
// The base DN of the config backend
@@ -93,8 +98,7 @@
* @throws Exception if the environment could not be set up.
*/
@BeforeClass
- public void setUp()
- throws Exception
+ public void setUp() throws Exception
{
// Start the server so that we can update the configuration and execute
// some LDAP operations
@@ -221,23 +225,11 @@
ResultCode expectedResultCode
) throws Exception
{
- InternalSearchOperation searchOperation = new InternalSearchOperation(
- InternalClientConnection.getRootConnection(),
- InternalClientConnection.nextOperationID(),
- InternalClientConnection.nextMessageID(),
- new ArrayList<Control>(),
- ByteString.valueOf(baseDN),
- scope,
- DereferenceAliasesPolicy.NEVER,
- Integer.MAX_VALUE,
- Integer.MAX_VALUE,
- false,
- LDAPFilter.decode("(objectClass=*)"),
- null, null);
-
- searchOperation.run();
+ SearchRequest request = newSearchRequest(DN.valueOf(baseDN), scope)
+ .setSizeLimit(Integer.MAX_VALUE)
+ .setTimeLimit(Integer.MAX_VALUE);
+ InternalSearchOperation searchOperation = getRootConnection().processSearch(request);
assertEquals(searchOperation.getResultCode(), expectedResultCode);
-
return searchOperation;
}
@@ -289,7 +281,7 @@
throws Exception
{
// Get the backend
- Backend backend = DirectoryServer.getBackend(backendID);
+ Backend<?> backend = DirectoryServer.getBackend(backendID);
assertNotNull(backend);
// Create the workflow element that wraps the local backend
@@ -361,10 +353,8 @@
* Create a base entry for a new suffix.
*
* @param baseDN the DN of the new base entry
- * @param backendID the identifier of the backend
*/
- private void createBaseEntry(String baseDN, String backendID)
- throws Exception
+ private void createBaseEntry(String baseDN) throws Exception
{
Entry entry = StaticUtils.createEntry(DN.valueOf(baseDN));
@@ -440,7 +430,7 @@
* @return the newly created backend
* @throws Exception If an unexpected problem occurs.
*/
- private static Backend dsconfigCreateMemoryBackend(
+ private static Backend<?> dsconfigCreateMemoryBackend(
String backendID,
String baseDN,
boolean createBaseEntry
@@ -454,7 +444,7 @@
"--set", "writability-mode:enabled",
"--set", "enabled:true");
- Backend backend = DirectoryServer.getBackend(backendID);
+ Backend<?> backend = DirectoryServer.getBackend(backendID);
if (createBaseEntry)
{
Entry e = createEntry(DN.valueOf(baseDN));
@@ -576,7 +566,7 @@
// Add a new suffix to the test backend and check that the new
// suffix is accessible (we are in auto mode).
addSuffix(testBaseDN2, testBackendID2);
- createBaseEntry(testBaseDN2, testBackendID2);
+ createBaseEntry(testBaseDN2);
checkBackendIsAccessible(testBaseDN2);
// Remove the suffix and check that the removed suffix is no
@@ -595,7 +585,7 @@
// the workflow is automatically created when a new suffix is added.
addSuffix(testBaseDN3, testBackendID2);
createWorkflow(testBaseDN3, testBackendID2);
- createBaseEntry(testBaseDN3, testBackendID2);
+ createBaseEntry(testBaseDN3);
checkBackendIsAccessible(testBaseDN3);
// Finally remove the new workflow and suffix and check that the suffix
diff --git a/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/core/networkgroups/NetworkGroupTest.java b/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/core/networkgroups/NetworkGroupTest.java
index 4b345cc..d839587 100644
--- a/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/core/networkgroups/NetworkGroupTest.java
+++ b/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/core/networkgroups/NetworkGroupTest.java
@@ -38,6 +38,7 @@
import org.opends.server.api.ClientConnection;
import org.opends.server.core.*;
import org.opends.server.protocols.internal.InternalClientConnection;
+import org.opends.server.protocols.internal.SearchRequest;
import org.opends.server.types.*;
import org.opends.server.util.StaticUtils;
import org.opends.server.workflowelement.WorkflowElement;
@@ -48,6 +49,7 @@
import static org.opends.messages.CoreMessages.*;
import static org.opends.server.config.ConfigConstants.*;
import static org.opends.server.protocols.internal.InternalClientConnection.*;
+import static org.opends.server.protocols.internal.Requests.*;
import static org.testng.Assert.*;
/**
@@ -1041,7 +1043,8 @@
int expectedNamingContexts
) throws Exception
{
- SearchOperation search = connection.processSearch("", SearchScope.SINGLE_LEVEL, "(objectClass=*)");
+ SearchRequest request = newSearchRequest(DN.rootDN(), SearchScope.SINGLE_LEVEL);
+ SearchOperation search = connection.processSearch(request);
// Check the number of found naming context
assertEquals(search.getResultCode(), shouldExist ? ResultCode.SUCCESS : ResultCode.NO_SUCH_OBJECT);
@@ -1060,7 +1063,8 @@
*/
private void searchEntry(String baseDN, boolean shouldExist) throws Exception
{
- SearchOperation search = getRootConnection().processSearch(baseDN, SearchScope.BASE_OBJECT, "(objectClass=*)");
+ SearchRequest request = newSearchRequest(DN.valueOf(baseDN), SearchScope.BASE_OBJECT);
+ SearchOperation search = getRootConnection().processSearch(request);
// Compare the result code with the expected one
assertEquals(search.getResultCode(), shouldExist ? ResultCode.SUCCESS : ResultCode.NO_SUCH_OBJECT);
diff --git a/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/core/networkgroups/RequestFilteringPolicyTest.java b/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/core/networkgroups/RequestFilteringPolicyTest.java
index a02b8f1..88fa981 100644
--- a/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/core/networkgroups/RequestFilteringPolicyTest.java
+++ b/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/core/networkgroups/RequestFilteringPolicyTest.java
@@ -63,6 +63,7 @@
import static org.forgerock.opendj.ldap.SearchScope.*;
import static org.opends.server.admin.std.meta.RequestFilteringQOSPolicyCfgDefn.AllowedOperations.*;
import static org.opends.server.admin.std.meta.RequestFilteringQOSPolicyCfgDefn.AllowedSearchScopes.*;
+import static org.opends.server.protocols.internal.Requests.*;
import static org.opends.server.util.CollectionUtils.*;
import static org.opends.server.util.ServerConstants.*;
import static org.testng.Assert.*;
@@ -293,8 +294,9 @@
});
- InternalClientConnection conn = new InternalClientConnection(DN.NULL_DN);
- InternalSearchOperation search = conn.processSearch("dc=example,dc=com", BASE_OBJECT, searchFilter);
+ InternalClientConnection conn = new InternalClientConnection(DN.rootDN());
+ InternalSearchOperation search =
+ conn.processSearch(newSearchRequest("dc=example,dc=com", BASE_OBJECT, searchFilter));
assertEquals(policy.isAllowed(search, messages), success);
}
@@ -319,8 +321,9 @@
});
- InternalClientConnection conn = new InternalClientConnection(DN.NULL_DN);
- InternalSearchOperation search = conn.processSearch("dc=example,dc=com", BASE_OBJECT, searchFilter);
+ InternalClientConnection conn = new InternalClientConnection(DN.rootDN());
+ InternalSearchOperation search =
+ conn.processSearch(newSearchRequest("dc=example,dc=com", BASE_OBJECT, searchFilter));
assertEquals(policy.isAllowed(search, messages), success);
}
@@ -347,8 +350,8 @@
});
- InternalClientConnection conn = new InternalClientConnection(DN.NULL_DN);
- InternalSearchOperation search = conn.processSearch("dc=example,dc=com", searchScope, "objectclass=*");
+ InternalClientConnection conn = new InternalClientConnection(DN.rootDN());
+ InternalSearchOperation search = conn.processSearch(newSearchRequest(DN.valueOf("dc=example,dc=com"), searchScope));
assertEquals(policy.isAllowed(search, messages), success);
}
@@ -375,8 +378,8 @@
});
- InternalClientConnection conn = new InternalClientConnection(DN.NULL_DN);
- InternalSearchOperation search = conn.processSearch(searchSubtree, WHOLE_SUBTREE, "objectclass=*");
+ InternalClientConnection conn = new InternalClientConnection(DN.rootDN());
+ InternalSearchOperation search = conn.processSearch(newSearchRequest(DN.valueOf(searchSubtree), WHOLE_SUBTREE));
assertEquals(policy.isAllowed(search, messages), success);
}
@@ -403,8 +406,8 @@
});
- InternalClientConnection conn = new InternalClientConnection(DN.NULL_DN);
- InternalSearchOperation search = conn.processSearch(searchSubtree, WHOLE_SUBTREE, "objectclass=*");
+ InternalClientConnection conn = new InternalClientConnection(DN.rootDN());
+ InternalSearchOperation search = conn.processSearch(newSearchRequest(DN.valueOf(searchSubtree), WHOLE_SUBTREE));
assertEquals(policy.isAllowed(search, messages), success);
}
@@ -438,8 +441,8 @@
});
- InternalClientConnection conn = new InternalClientConnection(DN.NULL_DN);
- InternalSearchOperation search = conn.processSearch(searchSubtree, WHOLE_SUBTREE, "objectclass=*");
+ InternalClientConnection conn = new InternalClientConnection(DN.rootDN());
+ InternalSearchOperation search = conn.processSearch(newSearchRequest(DN.valueOf(searchSubtree), WHOLE_SUBTREE));
assertEquals(policy.isAllowed(search, messages), success);
}
@@ -467,7 +470,7 @@
});
- InternalClientConnection conn = new InternalClientConnection(DN.NULL_DN);
+ InternalClientConnection conn = new InternalClientConnection(DN.rootDN());
PreParseOperation op = null;
switch (type) {
@@ -511,7 +514,7 @@
"uid=usr.1,ou=people,dc=example,dc=com", true);
break;
case SEARCH:
- op = conn.processSearch("dc=example,dc=com", WHOLE_SUBTREE, "uid>=user.1");
+ op = conn.processSearch(newSearchRequest("dc=example,dc=com", WHOLE_SUBTREE, "uid>=user.1"));
break;
case UNBIND:
return;
diff --git a/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/core/networkgroups/ResourceLimitsPolicyTest.java b/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/core/networkgroups/ResourceLimitsPolicyTest.java
index 200bba4..0862c93 100644
--- a/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/core/networkgroups/ResourceLimitsPolicyTest.java
+++ b/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/core/networkgroups/ResourceLimitsPolicyTest.java
@@ -38,13 +38,13 @@
import org.opends.server.protocols.internal.InternalClientConnection;
import org.opends.server.protocols.internal.InternalSearchOperation;
import org.opends.server.protocols.internal.SearchRequest;
-import static org.opends.server.protocols.internal.Requests.*;
import org.opends.server.types.DN;
import org.testng.annotations.BeforeClass;
import org.testng.annotations.DataProvider;
import org.testng.annotations.Test;
import static org.mockito.Mockito.*;
+import static org.opends.server.protocols.internal.Requests.*;
import static org.testng.Assert.*;
/**
@@ -205,7 +205,7 @@
InternalClientConnection conn = new InternalClientConnection(DN.NULL_DN);
limits.addConnection(conn);
- final SearchRequest request = newSearchRequest("dc=example,dc=com", SearchScope.BASE_OBJECT, "(objectclass=*)");
+ final SearchRequest request = newSearchRequest(DN.valueOf("dc=example,dc=com"), SearchScope.BASE_OBJECT);
final InternalSearchOperation search1 = conn.processSearch(request);
assertOperationIsAllowed(limits, conn, search1, true,
"First operation should be allowed");
diff --git a/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/EntityTagVirtualAttributeProviderTestCase.java b/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/EntityTagVirtualAttributeProviderTestCase.java
index bc848ea..0e29a3f 100644
--- a/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/EntityTagVirtualAttributeProviderTestCase.java
+++ b/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/EntityTagVirtualAttributeProviderTestCase.java
@@ -60,15 +60,14 @@
import org.opends.server.protocols.internal.Requests;
import org.opends.server.protocols.internal.SearchRequest;
import org.opends.server.protocols.ldap.LDAPFilter;
-import org.opends.server.protocols.ldap.LDAPModification;
import org.opends.server.types.Attribute;
import org.opends.server.types.AttributeType;
+import org.opends.server.types.Attributes;
import org.opends.server.types.Control;
import org.opends.server.types.DN;
import org.opends.server.types.DirectoryException;
import org.opends.server.types.Entry;
-import org.opends.server.types.RawAttribute;
-import org.opends.server.types.RawModification;
+import org.opends.server.types.Modification;
import org.opends.server.types.SearchFilter;
import org.opends.server.types.VirtualAttributeRule;
import org.opends.server.util.StaticUtils;
@@ -77,6 +76,8 @@
import static java.util.Collections.*;
+import static org.opends.server.protocols.internal.InternalClientConnection.*;
+import static org.opends.server.util.CollectionUtils.*;
import static org.testng.Assert.*;
/**
@@ -602,9 +603,8 @@
public void testOptimisticConcurrency() throws Exception
{
// Use an internal connection.
- String userDN = "uid=test.user,ou=People,o=test";
- InternalClientConnection conn = InternalClientConnection
- .getRootConnection();
+ DN userDN = DN.valueOf("uid=test.user,ou=People,o=test");
+ InternalClientConnection conn = getRootConnection();
// Create a test backend containing the user entry to be modified.
TestCaseUtils.initializeTestBackend(true);
@@ -629,15 +629,13 @@
// @formatter:on
// Read the user entry and get the etag.
- Entry e1 = readEntry(conn, userDN);
+ Entry e1 = readEntry(userDN);
String etag1 = e1.parseAttribute(ETAG).asString();
assertNotNull(etag1);
// Apply a change using the assertion control for optimistic concurrency.
- List<RawModification> mods = Collections
- .<RawModification> singletonList(new LDAPModification(
- ModificationType.REPLACE, RawAttribute.create(DESCRIPTION,
- "first modify")));
+ Attribute attr = Attributes.create(DESCRIPTION, "first modify");
+ List<Modification> mods = newArrayList(new Modification(ModificationType.REPLACE, attr));
List<Control> ctrls = Collections
.<Control> singletonList(new LDAPAssertionRequestControl(true,
LDAPFilter.createEqualityFilter(ETAG, ByteString.valueOf(etag1))));
@@ -646,7 +644,7 @@
// Reread the entry and check that the description has been added and that
// the etag has changed.
- Entry e2 = readEntry(conn, userDN);
+ Entry e2 = readEntry(userDN);
String etag2 = e2.parseAttribute(ETAG).asString();
assertNotNull(etag2);
@@ -657,15 +655,13 @@
assertEquals(description2, "first modify");
// Simulate a concurrent update: perform another update using the old etag.
- mods = Collections.<RawModification> singletonList(new LDAPModification(
- ModificationType.REPLACE, RawAttribute.create(DESCRIPTION,
- "second modify")));
+ Attribute attr2 = Attributes.create(DESCRIPTION, "second modify");
+ mods = newArrayList(new Modification(ModificationType.REPLACE, attr2));
modifyOperation = conn.processModify(userDN, mods, ctrls);
assertEquals(modifyOperation.getResultCode(), ResultCode.ASSERTION_FAILED);
- // Reread the entry and check that the description and etag have not
- // changed.
- Entry e3 = readEntry(conn, userDN);
+ // Reread the entry and check that the description and etag have not changed
+ Entry e3 = readEntry(userDN);
String etag3 = e3.parseAttribute(ETAG).asString();
assertNotNull(etag3);
@@ -688,11 +684,8 @@
@Test
public void testPreReadControl() throws Exception
{
- String userDN = "uid=test.user,ou=People,o=test";
-
- // Use an internal connection.
- InternalClientConnection conn = InternalClientConnection
- .getRootConnection();
+ DN userDN = DN.valueOf("uid=test.user,ou=People,o=test");
+ InternalClientConnection conn = getRootConnection();
// Create a test backend containing the user entry to be modified.
TestCaseUtils.initializeTestBackend(true);
@@ -718,23 +711,20 @@
// @formatter:on
// Read the user entry and get the etag.
- Entry e1 = readEntry(conn, userDN);
+ Entry e1 = readEntry(userDN);
String etag1 = e1.parseAttribute(ETAG).asString();
assertNotNull(etag1);
// Apply a change using the pre and post read controls.
- List<RawModification> mods = Collections
- .<RawModification> singletonList(new LDAPModification(
- ModificationType.REPLACE, RawAttribute.create(DESCRIPTION,
- "modified value")));
- List<Control> ctrls = singletonList((Control) new LDAPPreReadRequestControl(
- true, singleton(ETAG)));
+ Attribute attr = Attributes.create(DESCRIPTION, "modified value");
+ List<Modification> mods = newArrayList(new Modification(ModificationType.REPLACE, attr));
+ List<Control> ctrls = singletonList((Control) new LDAPPreReadRequestControl(true, singleton(ETAG)));
ModifyOperation modifyOperation = conn.processModify(userDN, mods, ctrls);
assertEquals(modifyOperation.getResultCode(), ResultCode.SUCCESS);
// Reread the entry and check that the description has been added and that
// the etag has changed.
- Entry e2 = readEntry(conn, userDN);
+ Entry e2 = readEntry(userDN);
String etag2 = e2.parseAttribute(ETAG).asString();
assertNotNull(etag2);
@@ -772,11 +762,8 @@
@Test
public void testPostReadControl() throws Exception
{
- String userDN = "uid=test.user,ou=People,o=test";
-
- // Use an internal connection.
- InternalClientConnection conn = InternalClientConnection
- .getRootConnection();
+ DN userDN = DN.valueOf("uid=test.user,ou=People,o=test");
+ InternalClientConnection conn = getRootConnection();
// Create a test backend containing the user entry to be modified.
TestCaseUtils.initializeTestBackend(true);
@@ -802,23 +789,20 @@
// @formatter:on
// Read the user entry and get the etag.
- Entry e1 = readEntry(conn, userDN);
+ Entry e1 = readEntry(userDN);
String etag1 = e1.parseAttribute(ETAG).asString();
assertNotNull(etag1);
// Apply a change using the pre and post read controls.
- List<RawModification> mods = Collections
- .<RawModification> singletonList(new LDAPModification(
- ModificationType.REPLACE, RawAttribute.create(DESCRIPTION,
- "modified value")));
- List<Control> ctrls = singletonList((Control) new LDAPPostReadRequestControl(
- true, singleton(ETAG)));
+ Attribute attr = Attributes.create(DESCRIPTION, "modified value");
+ List<Modification> mods = newArrayList(new Modification(ModificationType.REPLACE, attr));
+ List<Control> ctrls = singletonList((Control) new LDAPPostReadRequestControl(true, singleton(ETAG)));
ModifyOperation modifyOperation = conn.processModify(userDN, mods, ctrls);
assertEquals(modifyOperation.getResultCode(), ResultCode.SUCCESS);
// Reread the entry and check that the description has been added and that
// the etag has changed.
- Entry e2 = readEntry(conn, userDN);
+ Entry e2 = readEntry(userDN);
String etag2 = e2.parseAttribute(ETAG).asString();
assertNotNull(etag2);
@@ -829,28 +813,29 @@
assertEquals(description2, "modified value");
// Now check that the post-read is the same as the initial etag.
- LDAPPostReadResponseControl postReadControl = null;
- for (Control control : modifyOperation.getResponseControls())
- {
- if (control instanceof LDAPPostReadResponseControl)
- {
- postReadControl = (LDAPPostReadResponseControl) control;
- break;
- }
- }
- assertNotNull(postReadControl);
+ LDAPPostReadResponseControl postReadControl = getLDAPPostReadResponseControl(modifyOperation);
String etagPostRead =
postReadControl.getSearchEntry().parseAttribute(ETAG).asString();
assertEquals(etagPostRead, etag2);
}
-
-
- private Entry readEntry(InternalClientConnection conn, String userDN)
- throws DirectoryException
+ private LDAPPostReadResponseControl getLDAPPostReadResponseControl(ModifyOperation modifyOperation)
{
- SearchRequest request = Requests.newSearchRequest(userDN, SearchScope.BASE_OBJECT, "(objectClass=*)", "*", ETAG);
- InternalSearchOperation searchOperation = conn.processSearch(request);
+ for (Control control : modifyOperation.getResponseControls())
+ {
+ if (control instanceof LDAPPostReadResponseControl)
+ {
+ return (LDAPPostReadResponseControl) control;
+ }
+ }
+ fail("Expected the ModifyOperation to have a LDAPPostReadResponseControl");
+ return null;
+ }
+
+ private Entry readEntry(DN userDN) throws DirectoryException
+ {
+ SearchRequest request = Requests.newSearchRequest(userDN, SearchScope.BASE_OBJECT).addAttribute("*", ETAG);
+ InternalSearchOperation searchOperation = getRootConnection().processSearch(request);
assertEquals(searchOperation.getResultCode(), ResultCode.SUCCESS);
assertEquals(searchOperation.getSearchEntries().size(), 1);
Entry e = searchOperation.getSearchEntries().get(0);
diff --git a/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/EntryDNVirtualAttributeProviderTestCase.java b/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/EntryDNVirtualAttributeProviderTestCase.java
index f61b2f0..ec8f3c1 100644
--- a/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/EntryDNVirtualAttributeProviderTestCase.java
+++ b/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/EntryDNVirtualAttributeProviderTestCase.java
@@ -310,7 +310,7 @@
public void testSearchEntryDNAttrRealAttrsOnly(DN entryDN)
throws Exception
{
- final SearchRequest request = newSearchRequest(entryDN, SearchScope.BASE_OBJECT, "(objectClass=*)")
+ final SearchRequest request = newSearchRequest(entryDN, SearchScope.BASE_OBJECT)
.addAttribute("entrydn")
.addControl(new LDAPControl(OID_REAL_ATTRS_ONLY, true));
InternalSearchOperation searchOperation = getRootConnection().processSearch(request);
@@ -336,7 +336,7 @@
public void testSearchEntryDNAttrVirtualAttrsOnly(DN entryDN)
throws Exception
{
- final SearchRequest request = newSearchRequest(entryDN, SearchScope.BASE_OBJECT, "(objectClass=*)")
+ final SearchRequest request = newSearchRequest(entryDN, SearchScope.BASE_OBJECT)
.addAttribute("entrydn")
.addControl(new LDAPControl(OID_VIRTUAL_ATTRS_ONLY, true));
diff --git a/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/EntryUUIDVirtualAttributeProviderTestCase.java b/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/EntryUUIDVirtualAttributeProviderTestCase.java
index 5f3426d..d28a6b2 100644
--- a/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/EntryUUIDVirtualAttributeProviderTestCase.java
+++ b/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/EntryUUIDVirtualAttributeProviderTestCase.java
@@ -27,21 +27,16 @@
package org.opends.server.extensions;
import java.util.Collections;
-import java.util.LinkedHashSet;
-import java.util.LinkedList;
import java.util.List;
import java.util.UUID;
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.admin.std.meta.VirtualAttributeCfgDefn;
import org.opends.server.core.DirectoryServer;
-import org.opends.server.protocols.internal.InternalClientConnection;
import org.opends.server.protocols.internal.InternalSearchOperation;
import org.opends.server.protocols.internal.SearchRequest;
-import static org.opends.server.protocols.internal.Requests.*;
import org.opends.server.protocols.ldap.LDAPControl;
import org.opends.server.types.*;
import org.testng.annotations.BeforeClass;
@@ -49,6 +44,7 @@
import org.testng.annotations.Test;
import static org.opends.server.protocols.internal.InternalClientConnection.*;
+import static org.opends.server.protocols.internal.Requests.*;
import static org.opends.server.util.ServerConstants.*;
import static org.opends.server.util.StaticUtils.*;
import static org.testng.Assert.*;
@@ -344,26 +340,12 @@
* @throws Exception If an unexpected problem occurs.
*/
@Test(dataProvider = "testEntryDNs")
- public void testSearchEntryUUIDAttrRealAttrsOnly(DN entryDN)
- throws Exception
+ public void testSearchEntryUUIDAttrRealAttrsOnly(DN entryDN) throws Exception
{
- SearchFilter filter =
- SearchFilter.createFilterFromString("(objectClass=*)");
- LinkedHashSet<String> attrList = new LinkedHashSet<String>(1);
- attrList.add("entryuuid");
-
- LinkedList<Control> requestControls = new LinkedList<Control>();
- requestControls.add(new LDAPControl(OID_REAL_ATTRS_ONLY, true));
-
- InternalClientConnection conn =
- InternalClientConnection.getRootConnection();
- InternalSearchOperation searchOperation =
- new InternalSearchOperation(conn, InternalClientConnection.nextOperationID(),
- InternalClientConnection.nextMessageID(), requestControls,
- entryDN, SearchScope.BASE_OBJECT,
- DereferenceAliasesPolicy.NEVER, 0,
- 0, false, filter, attrList, null);
- searchOperation.run();
+ final SearchRequest request = newSearchRequest(entryDN, SearchScope.BASE_OBJECT)
+ .addAttribute("entryuuid")
+ .addControl(new LDAPControl(OID_REAL_ATTRS_ONLY, true));
+ InternalSearchOperation searchOperation = getRootConnection().processSearch(request);
assertEquals(searchOperation.getSearchEntries().size(), 1);
Entry e = searchOperation.getSearchEntries().get(0);
@@ -384,26 +366,13 @@
* @throws Exception If an unexpected problem occurs.
*/
@Test(dataProvider = "testEntryDNs")
- public void testSearchEntryUUIDAttrVirtualAttrsOnly(DN entryDN)
- throws Exception
+ public void testSearchEntryUUIDAttrVirtualAttrsOnly(DN entryDN) throws Exception
{
- SearchFilter filter =
- SearchFilter.createFilterFromString("(objectClass=*)");
- LinkedHashSet<String> attrList = new LinkedHashSet<String>(1);
- attrList.add("entryuuid");
+ final SearchRequest request = newSearchRequest(entryDN, SearchScope.BASE_OBJECT)
+ .addAttribute("entryuuid")
+ .addControl(new LDAPControl(OID_VIRTUAL_ATTRS_ONLY, true));
- LinkedList<Control> requestControls = new LinkedList<Control>();
- requestControls.add(new LDAPControl(OID_VIRTUAL_ATTRS_ONLY, true));
-
- InternalClientConnection conn =
- InternalClientConnection.getRootConnection();
- InternalSearchOperation searchOperation =
- new InternalSearchOperation(conn, InternalClientConnection.nextOperationID(),
- InternalClientConnection.nextMessageID(), requestControls,
- entryDN, SearchScope.BASE_OBJECT,
- DereferenceAliasesPolicy.NEVER, 0,
- 0, false, filter, attrList, null);
- searchOperation.run();
+ InternalSearchOperation searchOperation = getRootConnection().processSearch(request);
assertEquals(searchOperation.getSearchEntries().size(), 1);
Entry e = searchOperation.getSearchEntries().get(0);
@@ -416,7 +385,7 @@
/**
* Tests the {@code isMultiValued} method.
*/
- @Test()
+ @Test
public void testIsMultiValued()
{
EntryUUIDVirtualAttributeProvider provider =
@@ -431,29 +400,16 @@
*
* @throws Exception If an unexpected problem occurs.
*/
- @Test()
- public void testGetValues()
- throws Exception
+ @Test
+ public void testGetValues() throws Exception
{
String uuidString = UUID.nameUUIDFromBytes(getBytes("o=test")).toString();
EntryUUIDVirtualAttributeProvider provider =
new EntryUUIDVirtualAttributeProvider();
- Entry entry = TestCaseUtils.makeEntry(
- "dn: o=test",
- "objectClass: top",
- "objectClass: organization",
- "o: test");
- entry.processVirtualAttributes();
-
- VirtualAttributeRule rule =
- new VirtualAttributeRule(entryUUIDType, provider,
- Collections.<DN>emptySet(), SearchScope.WHOLE_SUBTREE,
- Collections.<DN>emptySet(),
- Collections.<SearchFilter>emptySet(),
- VirtualAttributeCfgDefn.ConflictBehavior.
- VIRTUAL_OVERRIDES_REAL);
+ Entry entry = makeEntry();
+ VirtualAttributeRule rule = getRule(provider);
Attribute values = provider.getValues(entry, rule);
assertNotNull(values);
@@ -469,96 +425,70 @@
*
* @throws Exception If an unexpected problem occurs.
*/
- @Test()
- public void testHasAnyValue()
- throws Exception
+ @Test
+ public void testHasAnyValue() throws Exception
{
EntryUUIDVirtualAttributeProvider provider =
new EntryUUIDVirtualAttributeProvider();
- Entry entry = TestCaseUtils.makeEntry(
- "dn: o=test",
- "objectClass: top",
- "objectClass: organization",
- "o: test");
- entry.processVirtualAttributes();
-
- VirtualAttributeRule rule =
- new VirtualAttributeRule(entryUUIDType, provider,
- Collections.<DN>emptySet(), SearchScope.WHOLE_SUBTREE,
- Collections.<DN>emptySet(),
- Collections.<SearchFilter>emptySet(),
- VirtualAttributeCfgDefn.ConflictBehavior.
- VIRTUAL_OVERRIDES_REAL);
-
+ Entry entry = makeEntry();
+ VirtualAttributeRule rule = getRule(provider);
assertTrue(provider.hasValue(entry, rule));
}
-
-
/**
* Tests the {@code hasValue} method variant that takes a specific value when
* the provided value is a match.
*
* @throws Exception If an unexpected problem occurs.
*/
- @Test()
- public void testHasMatchingValue()
- throws Exception
+ @Test
+ public void testHasMatchingValue() throws Exception
{
String uuidString = UUID.nameUUIDFromBytes(getBytes("o=test")).toString();
EntryUUIDVirtualAttributeProvider provider =
new EntryUUIDVirtualAttributeProvider();
- Entry entry = TestCaseUtils.makeEntry(
- "dn: o=test",
- "objectClass: top",
- "objectClass: organization",
- "o: test");
- entry.processVirtualAttributes();
-
- VirtualAttributeRule rule =
- new VirtualAttributeRule(entryUUIDType, provider,
- Collections.<DN>emptySet(), SearchScope.WHOLE_SUBTREE,
- Collections.<DN>emptySet(),
- Collections.<SearchFilter>emptySet(),
- VirtualAttributeCfgDefn.ConflictBehavior.
- VIRTUAL_OVERRIDES_REAL);
-
+ Entry entry = makeEntry();
+ VirtualAttributeRule rule = getRule(provider);
assertTrue(provider.hasValue(entry, rule, ByteString.valueOf(uuidString)));
}
-
-
/**
* Tests the {@code hasValue} method variant that takes a specific value when
* the provided value is not a match.
*
* @throws Exception If an unexpected problem occurs.
*/
- @Test()
- public void testHasNonMatchingValue()
- throws Exception
+ @Test
+ public void testHasNonMatchingValue() throws Exception
{
EntryUUIDVirtualAttributeProvider provider =
new EntryUUIDVirtualAttributeProvider();
+ Entry entry = makeEntry();
+ VirtualAttributeRule rule = getRule(provider);
+ assertFalse(provider.hasValue(entry, rule, ByteString.valueOf("wrong")));
+ }
+
+ private Entry makeEntry() throws Exception
+ {
Entry entry = TestCaseUtils.makeEntry(
"dn: o=test",
"objectClass: top",
"objectClass: organization",
"o: test");
entry.processVirtualAttributes();
+ return entry;
+ }
- VirtualAttributeRule rule =
- new VirtualAttributeRule(entryUUIDType, provider,
- Collections.<DN>emptySet(), SearchScope.WHOLE_SUBTREE,
- Collections.<DN>emptySet(),
- Collections.<SearchFilter>emptySet(),
- VirtualAttributeCfgDefn.ConflictBehavior.
- VIRTUAL_OVERRIDES_REAL);
-
- assertFalse(provider.hasValue(entry, rule, ByteString.valueOf("wrong")));
+ private VirtualAttributeRule getRule(EntryUUIDVirtualAttributeProvider provider)
+ {
+ return new VirtualAttributeRule(entryUUIDType, provider,
+ Collections.<DN>emptySet(), SearchScope.WHOLE_SUBTREE,
+ Collections.<DN>emptySet(),
+ Collections.<SearchFilter>emptySet(),
+ VirtualAttributeCfgDefn.ConflictBehavior.VIRTUAL_OVERRIDES_REAL);
}
}
diff --git a/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/ExtensionTestUtils.java b/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/ExtensionTestUtils.java
index 9ca15c8..25e5bd4 100644
--- a/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/ExtensionTestUtils.java
+++ b/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/ExtensionTestUtils.java
@@ -28,13 +28,13 @@
import org.forgerock.opendj.ldap.SearchScope;
import org.opends.server.protocols.internal.InternalSearchOperation;
import org.opends.server.protocols.internal.SearchRequest;
-import static org.opends.server.protocols.internal.Requests.*;
import org.opends.server.schema.SchemaConstants;
import org.opends.server.types.AttributeType;
import org.opends.server.types.DN;
import org.opends.server.types.Entry;
import static org.opends.server.protocols.internal.InternalClientConnection.*;
+import static org.opends.server.protocols.internal.Requests.*;
import static org.testng.Assert.*;
/**
@@ -47,79 +47,54 @@
public static void testSearchEmptyAttrs(DN entryDN,
AttributeType attributeType) throws Exception
{
- final SearchRequest request = newSearchRequest(entryDN, SearchScope.BASE_OBJECT, "(objectClass=*)");
- InternalSearchOperation searchOperation = getRootConnection().processSearch(request);
- assertEquals(searchOperation.getSearchEntries().size(), 1);
-
- Entry e = searchOperation.getSearchEntries().get(0);
- assertNotNull(e);
- assertFalse(e.hasAttribute(attributeType));
+ final SearchRequest request = newSearchRequest(entryDN, SearchScope.BASE_OBJECT);
+ assertAttributeFound(request, attributeType, false);
}
public static void testSearchNoAttrs(DN entryDN, AttributeType attributeType)
throws Exception
{
- final SearchRequest request =
- newSearchRequest(entryDN, SearchScope.BASE_OBJECT, "(objectClass=*)")
- .addAttribute(SchemaConstants.NO_ATTRIBUTES);
- InternalSearchOperation searchOperation = getRootConnection().processSearch(request);
- assertEquals(searchOperation.getSearchEntries().size(), 1);
-
- Entry e = searchOperation.getSearchEntries().get(0);
- assertNotNull(e);
- assertFalse(e.hasAttribute(attributeType));
+ final SearchRequest request = newSearchRequest(entryDN, SearchScope.BASE_OBJECT)
+ .addAttribute(SchemaConstants.NO_ATTRIBUTES);
+ assertAttributeFound(request, attributeType, false);
}
public static void testSearchAllUserAttrs(DN entryDN,
AttributeType attributeType) throws Exception
{
- final SearchRequest request =
- newSearchRequest(entryDN, SearchScope.BASE_OBJECT, "(objectClass=*)").addAttribute("*");
- InternalSearchOperation searchOperation = getRootConnection().processSearch(request);
- assertEquals(searchOperation.getSearchEntries().size(), 1);
-
- Entry e = searchOperation.getSearchEntries().get(0);
- assertNotNull(e);
- assertFalse(e.hasAttribute(attributeType));
+ final SearchRequest request = newSearchRequest(entryDN, SearchScope.BASE_OBJECT).addAttribute("*");
+ assertAttributeFound(request, attributeType, false);
}
public static void testSearchAllOperationalAttrs(DN entryDN,
AttributeType attributeType) throws Exception
{
- final SearchRequest request =
- newSearchRequest(entryDN, SearchScope.BASE_OBJECT, "(objectClass=*)").addAttribute("+");
- InternalSearchOperation searchOperation = getRootConnection().processSearch(request);
- assertEquals(searchOperation.getSearchEntries().size(), 1);
-
- Entry e = searchOperation.getSearchEntries().get(0);
- assertNotNull(e);
- assertTrue(e.hasAttribute(attributeType));
+ final SearchRequest request = newSearchRequest(entryDN, SearchScope.BASE_OBJECT).addAttribute("+");
+ assertAttributeFound(request, attributeType, true);
}
public static void testSearchAttr(DN entryDN, String attrName,
AttributeType attributeType) throws Exception
{
- final SearchRequest request =
- newSearchRequest(entryDN, SearchScope.BASE_OBJECT, "(objectClass=*)").addAttribute(attrName);
- InternalSearchOperation searchOperation = getRootConnection().processSearch(request);
- assertEquals(searchOperation.getSearchEntries().size(), 1);
-
- Entry e = searchOperation.getSearchEntries().get(0);
- assertNotNull(e);
- assertTrue(e.hasAttribute(attributeType));
+ final SearchRequest request = newSearchRequest(entryDN, SearchScope.BASE_OBJECT).addAttribute(attrName);
+ assertAttributeFound(request, attributeType, true);
}
public static void testSearchExcludeAttr(DN entryDN,
AttributeType attributeType) throws Exception
{
- final SearchRequest request =
- newSearchRequest(entryDN, SearchScope.BASE_OBJECT, "(objectClass=*)").addAttribute("objectClass");
+ final SearchRequest request = newSearchRequest(entryDN, SearchScope.BASE_OBJECT).addAttribute("objectClass");
+ assertAttributeFound(request, attributeType, false);
+ }
+
+ private static void assertAttributeFound(final SearchRequest request, AttributeType attributeType, boolean expected)
+ {
InternalSearchOperation searchOperation = getRootConnection().processSearch(request);
assertEquals(searchOperation.getSearchEntries().size(), 1);
Entry e = searchOperation.getSearchEntries().get(0);
assertNotNull(e);
- assertFalse(e.hasAttribute(attributeType));
+ assertEquals(e.hasAttribute(attributeType), expected);
}
}
diff --git a/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/GoverningStructureRuleVirtualAttributeProviderTestCase.java b/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/GoverningStructureRuleVirtualAttributeProviderTestCase.java
index 44e6c5a..515e9e2 100644
--- a/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/GoverningStructureRuleVirtualAttributeProviderTestCase.java
+++ b/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/GoverningStructureRuleVirtualAttributeProviderTestCase.java
@@ -27,25 +27,20 @@
package org.opends.server.extensions;
import java.util.Collections;
-import java.util.LinkedHashSet;
-import java.util.LinkedList;
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.admin.std.meta.VirtualAttributeCfgDefn;
import org.opends.server.api.VirtualAttributeProvider;
import org.opends.server.core.DirectoryServer;
-import org.opends.server.protocols.internal.InternalClientConnection;
import org.opends.server.protocols.internal.InternalSearchOperation;
+import org.opends.server.protocols.internal.Requests;
import org.opends.server.protocols.internal.SearchRequest;
-import static org.opends.server.protocols.internal.Requests.*;
import org.opends.server.protocols.ldap.LDAPControl;
import org.opends.server.types.Attribute;
import org.opends.server.types.AttributeType;
-import org.opends.server.types.Control;
import org.opends.server.types.DN;
import org.opends.server.types.Entry;
import org.opends.server.types.SearchFilter;
@@ -56,6 +51,7 @@
import org.testng.annotations.Test;
import static org.opends.server.protocols.internal.InternalClientConnection.*;
+import static org.opends.server.protocols.internal.Requests.*;
import static org.opends.server.util.ServerConstants.*;
import static org.testng.Assert.*;
@@ -368,24 +364,10 @@
public void testSearchGovStructRuleAttrRealAttrsOnly(DN entryDN)
throws Exception
{
- SearchFilter filter =
- SearchFilter.createFilterFromString("(objectClass=*)");
- LinkedHashSet<String> attrList = new LinkedHashSet<String>(1);
- attrList.add("governingStructureRuleType");
-
- LinkedList<Control> requestControls = new LinkedList<Control>();
- requestControls.add(new LDAPControl(OID_REAL_ATTRS_ONLY, true));
-
- InternalClientConnection conn =
- InternalClientConnection.getRootConnection();
- InternalSearchOperation searchOperation =
- new InternalSearchOperation(conn, InternalClientConnection
- .nextOperationID(), InternalClientConnection
- .nextMessageID(), requestControls, entryDN,
- SearchScope.BASE_OBJECT,
- DereferenceAliasesPolicy.NEVER, 0, 0, false, filter,
- attrList, null);
- searchOperation.run();
+ final SearchRequest request = Requests.newSearchRequest(entryDN, SearchScope.BASE_OBJECT)
+ .addAttribute("governingStructureRuleType")
+ .addControl(new LDAPControl(OID_REAL_ATTRS_ONLY, true));
+ InternalSearchOperation searchOperation = getRootConnection().processSearch(request);
assertEquals(searchOperation.getSearchEntries().size(), 1);
Entry e = searchOperation.getSearchEntries().get(0);
@@ -409,24 +391,10 @@
public void testSearchGovStructRuleAttrVirtualAttrsOnly(DN entryDN)
throws Exception
{
- SearchFilter filter =
- SearchFilter.createFilterFromString("(objectClass=*)");
- LinkedHashSet<String> attrList = new LinkedHashSet<String>(1);
- attrList.add("governingStructureRule");
-
- LinkedList<Control> requestControls = new LinkedList<Control>();
- requestControls.add(new LDAPControl(OID_VIRTUAL_ATTRS_ONLY, true));
-
- InternalClientConnection conn =
- InternalClientConnection.getRootConnection();
- InternalSearchOperation searchOperation =
- new InternalSearchOperation(conn, InternalClientConnection
- .nextOperationID(), InternalClientConnection
- .nextMessageID(), requestControls, entryDN,
- SearchScope.BASE_OBJECT,
- DereferenceAliasesPolicy.NEVER, 0, 0, false, filter,
- attrList, null);
- searchOperation.run();
+ final SearchRequest request = Requests.newSearchRequest(entryDN, SearchScope.BASE_OBJECT)
+ .addAttribute("governingStructureRule")
+ .addControl(new LDAPControl(OID_VIRTUAL_ATTRS_ONLY, true));
+ InternalSearchOperation searchOperation = getRootConnection().processSearch(request);
assertEquals(searchOperation.getSearchEntries().size(), 1);
Entry e = searchOperation.getSearchEntries().get(0);
diff --git a/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/HasSubordinatesVirtualAttributeProviderTestCase.java b/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/HasSubordinatesVirtualAttributeProviderTestCase.java
index 19146ab..21916d6 100644
--- a/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/HasSubordinatesVirtualAttributeProviderTestCase.java
+++ b/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/HasSubordinatesVirtualAttributeProviderTestCase.java
@@ -397,7 +397,7 @@
public void testSearchhasSubordinatesAttrRealAttrsOnly(DN entryDN, boolean hasSubs)
throws Exception
{
- SearchRequest request = newSearchRequest(entryDN, SearchScope.BASE_OBJECT, "(objectClass=*)")
+ SearchRequest request = newSearchRequest(entryDN, SearchScope.BASE_OBJECT)
.addAttribute("hasSubordinates")
.addControl(new LDAPControl(OID_REAL_ATTRS_ONLY, true));
InternalSearchOperation searchOperation = getRootConnection().processSearch(request);
@@ -424,8 +424,7 @@
public void testSearchhasSubordinatesAttrVirtualAttrsOnly(DN entryDN, boolean hasSubs)
throws Exception
{
- SearchFilter filter =
- SearchFilter.createFilterFromString("(objectClass=*)");
+ SearchFilter filter = SearchFilter.objectClassPresent();
LinkedHashSet<String> attrList = new LinkedHashSet<String>(1);
attrList.add("hasSubordinates");
diff --git a/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/LDAPPassThroughAuthenticationPolicyTestCase.java b/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/LDAPPassThroughAuthenticationPolicyTestCase.java
index 3d25aee..3239ee3 100644
--- a/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/LDAPPassThroughAuthenticationPolicyTestCase.java
+++ b/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/LDAPPassThroughAuthenticationPolicyTestCase.java
@@ -2768,8 +2768,7 @@
try
{
connection = factory.getConnection();
- connection.search(searchBindDN, SearchScope.WHOLE_SUBTREE,
- SearchFilter.createFilterFromString("(objectClass=*)"));
+ connection.search(searchBindDN, SearchScope.WHOLE_SUBTREE, SearchFilter.objectClassPresent());
fail("Search attempt should have timed out");
}
catch (final DirectoryException e)
diff --git a/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/NumSubordinatesVirtualAttributeProviderTestCase.java b/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/NumSubordinatesVirtualAttributeProviderTestCase.java
index d86ee28..c383d5f 100644
--- a/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/NumSubordinatesVirtualAttributeProviderTestCase.java
+++ b/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/NumSubordinatesVirtualAttributeProviderTestCase.java
@@ -35,14 +35,17 @@
import org.opends.server.core.DirectoryServer;
import org.opends.server.protocols.internal.InternalSearchOperation;
import org.opends.server.protocols.internal.SearchRequest;
-import static org.opends.server.protocols.internal.Requests.*;
import org.opends.server.protocols.ldap.LDAPControl;
-import org.opends.server.types.*;
+import org.opends.server.types.Attribute;
+import org.opends.server.types.AttributeType;
+import org.opends.server.types.DN;
+import org.opends.server.types.Entry;
import org.testng.annotations.BeforeClass;
import org.testng.annotations.DataProvider;
import org.testng.annotations.Test;
import static org.opends.server.protocols.internal.InternalClientConnection.*;
+import static org.opends.server.protocols.internal.Requests.*;
import static org.opends.server.util.ServerConstants.*;
import static org.testng.Assert.*;
@@ -353,12 +356,7 @@
final SearchRequest request =
newSearchRequest(entryDN, SearchScope.BASE_OBJECT, "(numSubordinates=" + count + ")")
.addAttribute("numSubordinates");
- InternalSearchOperation searchOperation = getRootConnection().processSearch(request);
- assertEquals(searchOperation.getSearchEntries().size(), 1);
-
- Entry e = searchOperation.getSearchEntries().get(0);
- assertNotNull(e);
- assertTrue(e.hasAttribute(numSubordinatesType));
+ assertNumSubordinatesAttributeFound(request, true);
}
/**
@@ -395,19 +393,12 @@
public void testSearchnumSubordinatesAttrRealAttrsOnly(DN entryDN, int count)
throws Exception
{
- final SearchRequest request = newSearchRequest(entryDN, SearchScope.BASE_OBJECT, "(objectClass=*)")
+ final SearchRequest request = newSearchRequest(entryDN, SearchScope.BASE_OBJECT)
.addAttribute("numSubordinates")
.addControl(new LDAPControl(OID_REAL_ATTRS_ONLY, true));
- InternalSearchOperation searchOperation = getRootConnection().processSearch(request);
- assertEquals(searchOperation.getSearchEntries().size(), 1);
-
- Entry e = searchOperation.getSearchEntries().get(0);
- assertNotNull(e);
- assertFalse(e.hasAttribute(numSubordinatesType));
+ assertNumSubordinatesAttributeFound(request, false);
}
-
-
/**
* Performs an internal search to retrieve the specified entry, ensuring that
* the numSubordinates attribute is included when that attribute is specifically
@@ -422,15 +413,10 @@
public void testSearchnumSubordinatesAttrVirtualAttrsOnly(DN entryDN, int count)
throws Exception
{
- final SearchRequest request =
- newSearchRequest(entryDN, SearchScope.BASE_OBJECT, "(objectClass=*)").addAttribute("numSubordinates")
- .addControl(new LDAPControl(OID_VIRTUAL_ATTRS_ONLY, true));
- InternalSearchOperation searchOperation = getRootConnection().processSearch(request);
- assertEquals(searchOperation.getSearchEntries().size(), 1);
-
- Entry e = searchOperation.getSearchEntries().get(0);
- assertNotNull(e);
- assertTrue(e.hasAttribute(numSubordinatesType));
+ final SearchRequest request = newSearchRequest(entryDN, SearchScope.BASE_OBJECT)
+ .addAttribute("numSubordinates")
+ .addControl(new LDAPControl(OID_VIRTUAL_ATTRS_ONLY, true));
+ assertNumSubordinatesAttributeFound(request, true);
}
/**
@@ -450,12 +436,7 @@
final SearchRequest request =
newSearchRequest(entryDN, SearchScope.BASE_OBJECT, "(numSubordinates>=" + count + ")")
.addAttribute("numSubordinates");
- InternalSearchOperation searchOperation = getRootConnection().processSearch(request);
- assertEquals(searchOperation.getSearchEntries().size(), 1);
-
- Entry e = searchOperation.getSearchEntries().get(0);
- assertNotNull(e);
- assertTrue(e.hasAttribute(numSubordinatesType));
+ assertNumSubordinatesAttributeFound(request, true);
}
/**
@@ -475,19 +456,21 @@
final SearchRequest request =
newSearchRequest(entryDN, SearchScope.BASE_OBJECT, "(numSubordinates<=" + count + ")")
.addAttribute("numSubordinates");
+ assertNumSubordinatesAttributeFound(request, true);
+ }
+
+ private void assertNumSubordinatesAttributeFound(final SearchRequest request, boolean expected)
+ {
InternalSearchOperation searchOperation = getRootConnection().processSearch(request);
assertEquals(searchOperation.getSearchEntries().size(), 1);
Entry e = searchOperation.getSearchEntries().get(0);
assertNotNull(e);
- assertTrue(e.hasAttribute(numSubordinatesType));
+ assertEquals(e.hasAttribute(numSubordinatesType), expected);
}
-
- /**
- * Tests the {@code isMultiValued} method.
- */
- @Test()
+ /** Tests the {@code isMultiValued} method. */
+ @Test
public void testIsMultiValued()
{
assertFalse(new NumSubordinatesVirtualAttributeProvider().isMultiValued());
diff --git a/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/PasswordExpirationTimeVirtualAttributeProviderTestCase.java b/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/PasswordExpirationTimeVirtualAttributeProviderTestCase.java
index 0c37c94..f48866b 100644
--- a/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/PasswordExpirationTimeVirtualAttributeProviderTestCase.java
+++ b/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/PasswordExpirationTimeVirtualAttributeProviderTestCase.java
@@ -202,7 +202,7 @@
throws Exception
{
// Process the search request
- SearchRequest request = newSearchRequest(notExpired.getName(), SearchScope.BASE_OBJECT, "(objectclass=*)")
+ SearchRequest request = newSearchRequest(notExpired.getName(), SearchScope.BASE_OBJECT)
.addAttribute(attributeName, "pwdpolicysubentry");
InternalSearchOperation search = getRootConnection().processSearch(request);
assertEquals(search.getResultCode(), ResultCode.SUCCESS);
diff --git a/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/StructuralObjectClassVirtualAttributeProviderTestCase.java b/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/StructuralObjectClassVirtualAttributeProviderTestCase.java
index e55924d..47c6dbd 100644
--- a/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/StructuralObjectClassVirtualAttributeProviderTestCase.java
+++ b/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/StructuralObjectClassVirtualAttributeProviderTestCase.java
@@ -337,8 +337,7 @@
public void testSearchStructuralOCAttrRealAttrsOnly(DN entryDN)
throws Exception
{
- SearchFilter filter =
- SearchFilter.createFilterFromString("(objectClass=*)");
+ SearchFilter filter = SearchFilter.objectClassPresent();
LinkedHashSet<String> attrList = new LinkedHashSet<String>(1);
attrList.add("structuralObjectClass");
@@ -378,8 +377,7 @@
public void testSearchStructuralOCAttrVirtualAttrsOnly(DN entryDN)
throws Exception
{
- SearchFilter filter =
- SearchFilter.createFilterFromString("(objectClass=*)");
+ SearchFilter filter = SearchFilter.objectClassPresent();
LinkedHashSet<String> attrList = new LinkedHashSet<String>(1);
attrList.add("structuralObjectClass");
diff --git a/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/SubschemaSubentryVirtualAttributeProviderTestCase.java b/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/SubschemaSubentryVirtualAttributeProviderTestCase.java
index b6ef65e..16a208a 100644
--- a/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/SubschemaSubentryVirtualAttributeProviderTestCase.java
+++ b/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/SubschemaSubentryVirtualAttributeProviderTestCase.java
@@ -36,7 +36,6 @@
import org.opends.server.core.DirectoryServer;
import org.opends.server.protocols.internal.InternalSearchOperation;
import org.opends.server.protocols.internal.SearchRequest;
-import static org.opends.server.protocols.internal.Requests.*;
import org.opends.server.protocols.ldap.LDAPControl;
import org.opends.server.types.Attribute;
import org.opends.server.types.AttributeType;
@@ -49,6 +48,7 @@
import org.testng.annotations.Test;
import static org.opends.server.protocols.internal.InternalClientConnection.*;
+import static org.opends.server.protocols.internal.Requests.*;
import static org.opends.server.util.ServerConstants.*;
import static org.testng.Assert.*;
@@ -310,7 +310,7 @@
public void testSearchSubschemaSubentryAttrRealAttrsOnly(DN entryDN)
throws Exception
{
- final SearchRequest request = newSearchRequest(entryDN, SearchScope.BASE_OBJECT, "(objectClass=*)")
+ final SearchRequest request = newSearchRequest(entryDN, SearchScope.BASE_OBJECT)
.addAttribute("subschemaSubentry")
.addControl(new LDAPControl(OID_REAL_ATTRS_ONLY, true));
InternalSearchOperation searchOperation = getRootConnection().processSearch(request);
@@ -337,7 +337,7 @@
public void testSearchSubschemaSubentryAttrVirtualAttrsOnly(DN entryDN)
throws Exception
{
- final SearchRequest request = newSearchRequest(entryDN, SearchScope.BASE_OBJECT, "(objectClass=*)")
+ final SearchRequest request = newSearchRequest(entryDN, SearchScope.BASE_OBJECT)
.addAttribute("subschemaSubentry")
.addControl(new LDAPControl(OID_VIRTUAL_ATTRS_ONLY, true));
InternalSearchOperation searchOperation = getRootConnection().processSearch(request);
@@ -353,7 +353,7 @@
/**
* Tests the {@code isMultiValued} method.
*/
- @Test()
+ @Test
public void testIsMultiValued()
{
assertFalse(new SubschemaSubentryVirtualAttributeProvider().isMultiValued());
@@ -366,7 +366,7 @@
*
* @throws Exception If an unexpected problem occurs.
*/
- @Test()
+ @Test
public void testGetValues()
throws Exception
{
@@ -402,7 +402,7 @@
*
* @throws Exception If an unexpected problem occurs.
*/
- @Test()
+ @Test
public void testHasAnyValue()
throws Exception
{
@@ -435,7 +435,7 @@
*
* @throws Exception If an unexpected problem occurs.
*/
- @Test()
+ @Test
public void testHasMatchingValue()
throws Exception
{
@@ -468,9 +468,8 @@
*
* @throws Exception If an unexpected problem occurs.
*/
- @Test()
- public void testHasNonMatchingValue()
- throws Exception
+ @Test
+ public void testHasNonMatchingValue() throws Exception
{
SubschemaSubentryVirtualAttributeProvider provider =
new SubschemaSubentryVirtualAttributeProvider();
diff --git a/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/TraditionalWorkQueueTestCase.java b/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/TraditionalWorkQueueTestCase.java
index 43d8052..1a3e64c 100644
--- a/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/TraditionalWorkQueueTestCase.java
+++ b/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/TraditionalWorkQueueTestCase.java
@@ -191,10 +191,8 @@
{
TestCaseUtils.initializeTestBackend(true);
- List<Control> requestControls =
- DelayPreOpPlugin.createDelayControlList(5000);
- SearchFilter filter =
- SearchFilter.createFilterFromString("(objectClass=*)");
+ List<Control> requestControls = DelayPreOpPlugin.createDelayControlList(5000);
+ SearchFilter filter = SearchFilter.objectClassPresent();
LinkedHashSet<String> attrs = new LinkedHashSet<String>();
InternalClientConnection conn =
@@ -228,10 +226,8 @@
{
TestCaseUtils.initializeTestBackend(true);
- List<Control> requestControls =
- DelayPreOpPlugin.createDelayControlList(5000);
- SearchFilter filter =
- SearchFilter.createFilterFromString("(objectClass=*)");
+ List<Control> requestControls = DelayPreOpPlugin.createDelayControlList(5000);
+ SearchFilter filter = SearchFilter.objectClassPresent();
LinkedHashSet<String> attrs = new LinkedHashSet<String>();
InternalClientConnection conn =
diff --git a/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/UserDefinedVirtualAttributeProviderTestCase.java b/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/UserDefinedVirtualAttributeProviderTestCase.java
index 72bdf88..ffac805 100644
--- a/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/UserDefinedVirtualAttributeProviderTestCase.java
+++ b/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/UserDefinedVirtualAttributeProviderTestCase.java
@@ -38,13 +38,13 @@
import org.opends.server.protocols.internal.InternalClientConnection;
import org.opends.server.protocols.internal.InternalSearchOperation;
import org.opends.server.protocols.internal.SearchRequest;
-import static org.opends.server.protocols.internal.Requests.*;
import org.opends.server.tools.LDAPModify;
import org.opends.server.types.*;
import org.testng.annotations.BeforeClass;
import org.testng.annotations.Test;
import static org.opends.server.protocols.internal.InternalClientConnection.*;
+import static org.opends.server.protocols.internal.Requests.*;
import static org.testng.Assert.*;
/**
@@ -121,7 +121,7 @@
.nextMessageID(), null, DN.valueOf(ruleDN),
SearchScope.BASE_OBJECT,
DereferenceAliasesPolicy.NEVER, 0, 0, false,
- SearchFilter.createFilterFromString("(objectClass=*)"),
+ SearchFilter.objectClassPresent(),
null, null);
for (VirtualAttributeRule rule : DirectoryServer
@@ -187,7 +187,7 @@
.nextMessageID(), null, DN.valueOf(ruleDN),
SearchScope.BASE_OBJECT,
DereferenceAliasesPolicy.NEVER, 0, 0, false,
- SearchFilter.createFilterFromString("(objectClass=*)"),
+ SearchFilter.objectClassPresent(),
null, null);
for (VirtualAttributeRule rule : DirectoryServer
@@ -261,7 +261,7 @@
InternalClientConnection conn = getRootConnection();
try
{
- final SearchRequest request = newSearchRequest(userDN, SearchScope.BASE_OBJECT, "(objectClass=*)");
+ final SearchRequest request = newSearchRequest(DN.valueOf(userDN), SearchScope.BASE_OBJECT);
InternalSearchOperation searchOperation = conn.processSearch(request);
List<Attribute> attrList =
@@ -329,7 +329,7 @@
InternalClientConnection conn = getRootConnection();
try
{
- final SearchRequest request = newSearchRequest(userDN, SearchScope.BASE_OBJECT, "(objectClass=*)");
+ final SearchRequest request = newSearchRequest(DN.valueOf(userDN), SearchScope.BASE_OBJECT);
InternalSearchOperation searchOperation = conn.processSearch(request);
List<Attribute> attrList =
@@ -398,7 +398,7 @@
InternalClientConnection conn = getRootConnection();
try
{
- final SearchRequest request = newSearchRequest(userDN, SearchScope.BASE_OBJECT, "(objectClass=*)");
+ final SearchRequest request = newSearchRequest(DN.valueOf(userDN), SearchScope.BASE_OBJECT);
InternalSearchOperation searchOperation = conn.processSearch(request);
List<Attribute> attrList =
@@ -466,7 +466,7 @@
InternalClientConnection conn = getRootConnection();
try
{
- final SearchRequest request = newSearchRequest(userDN, SearchScope.BASE_OBJECT, "(objectClass=*)");
+ final SearchRequest request = newSearchRequest(DN.valueOf(userDN), SearchScope.BASE_OBJECT);
InternalSearchOperation searchOperation = conn.processSearch(request);
List<Attribute> attrList =
@@ -533,7 +533,7 @@
InternalClientConnection conn = getRootConnection();
try
{
- final SearchRequest request = newSearchRequest(userDN, SearchScope.BASE_OBJECT, "(objectClass=*)");
+ final SearchRequest request = newSearchRequest(DN.valueOf(userDN), SearchScope.BASE_OBJECT);
InternalSearchOperation searchOperation = conn.processSearch(request);
List<Attribute> attrList =
@@ -605,13 +605,11 @@
"userPassword: test",
"description: " + realValue);
- InternalClientConnection conn =
- InternalClientConnection.getRootConnection();
-
+ InternalClientConnection conn = getRootConnection();
try
{
final SearchRequest request =
- newSearchRequest(userDN, SearchScope.BASE_OBJECT, "(objectClass=*)").addAttribute("description");
+ newSearchRequest(DN.valueOf(userDN), SearchScope.BASE_OBJECT).addAttribute("description");
InternalSearchOperation searchOperation = conn.processSearch(request);
List<Attribute> attrList = searchOperation.getSearchEntries().get(0).getAttribute(descriptionType);
diff --git a/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/VirtualStaticGroupTestCase.java b/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/VirtualStaticGroupTestCase.java
index bb63422..6d6c492 100644
--- a/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/VirtualStaticGroupTestCase.java
+++ b/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/extensions/VirtualStaticGroupTestCase.java
@@ -42,13 +42,13 @@
import org.opends.server.protocols.internal.InternalClientConnection;
import org.opends.server.protocols.internal.InternalSearchOperation;
import org.opends.server.protocols.internal.SearchRequest;
-import static org.opends.server.protocols.internal.Requests.*;
import org.opends.server.types.*;
import org.testng.annotations.BeforeClass;
import org.testng.annotations.DataProvider;
import org.testng.annotations.Test;
import static org.opends.server.protocols.internal.InternalClientConnection.*;
+import static org.opends.server.protocols.internal.Requests.*;
import static org.testng.Assert.*;
/**
@@ -879,8 +879,8 @@
*/
private void cleanUp() throws Exception
{
- final SearchRequest request =
- newSearchRequest("ou=Groups,dc=example,dc=com", SearchScope.SINGLE_LEVEL, "(objectClass=*)");
+ DN dn = DN.valueOf("ou=Groups,dc=example,dc=com");
+ final SearchRequest request = newSearchRequest(dn, SearchScope.SINGLE_LEVEL);
InternalSearchOperation searchOperation = getRootConnection().processSearch(request);
for (Entry e : searchOperation.getSearchEntries())
{
diff --git a/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/monitors/InternalSearchMonitorTestCase.java b/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/monitors/InternalSearchMonitorTestCase.java
index 6957f18..71c95db 100644
--- a/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/monitors/InternalSearchMonitorTestCase.java
+++ b/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/monitors/InternalSearchMonitorTestCase.java
@@ -35,7 +35,7 @@
import org.opends.server.protocols.internal.InternalClientConnection;
import org.opends.server.protocols.internal.InternalSearchOperation;
import org.opends.server.protocols.internal.SearchRequest;
-import static org.opends.server.protocols.internal.Requests.*;
+import org.opends.server.types.DN;
import org.opends.server.types.SearchResultEntry;
import org.testng.annotations.AfterClass;
import org.testng.annotations.BeforeClass;
@@ -44,6 +44,7 @@
import static org.forgerock.opendj.ldap.SearchScope.*;
import static org.opends.server.protocols.internal.InternalClientConnection.*;
+import static org.opends.server.protocols.internal.Requests.*;
import static org.testng.Assert.*;
/**
@@ -78,8 +79,8 @@
@Test
public void testWithSubtreeMonitorSearch() throws Exception
{
- InternalSearchOperation op = getRootConnection().processSearch(
- "cn=monitor", WHOLE_SUBTREE, "(objectClass=*)");
+ SearchRequest request = newSearchRequest(DN.valueOf("cn=monitor"), WHOLE_SUBTREE);
+ InternalSearchOperation op = getRootConnection().processSearch(request);
assertEquals(op.getResultCode(), ResultCode.SUCCESS,
"Failed to search cn=monitor subtree. Got error message: " + op.getErrorMessage());
}
@@ -116,9 +117,8 @@
public void testWithBaseObjectMonitorSearch(String monitorName) throws Exception
{
// could be more than one level
- final String monitorDN = "cn="+monitorName+",cn=monitor";
- InternalSearchOperation op = getRootConnection().processSearch(
- monitorDN, BASE_OBJECT, "(objectClass=*)");
+ final DN monitorDN = DN.valueOf("cn=" + monitorName + ",cn=monitor");
+ InternalSearchOperation op = getRootConnection().processSearch(newSearchRequest(monitorDN, BASE_OBJECT));
assertEquals(op.getResultCode(), ResultCode.SUCCESS,
"Failed to read " + monitorDN + " entry. Got error message: " + op.getErrorMessage());
}
@@ -132,17 +132,17 @@
public void testWithSubtreeAndBaseMonitorSearch() throws Exception
{
final InternalClientConnection conn = getRootConnection();
- InternalSearchOperation op = conn.processSearch(
- "cn=monitor", WHOLE_SUBTREE, "(objectClass=*)");
+ final SearchRequest request = newSearchRequest(DN.valueOf("cn=monitor"), WHOLE_SUBTREE);
+ InternalSearchOperation op = getRootConnection().processSearch(request);
assertEquals(op.getResultCode(), ResultCode.SUCCESS,
"Failed to search cn=monitor subtree. Got error message: " + op.getErrorMessage());
for (SearchResultEntry sre : op.getSearchEntries())
{
- final SearchRequest request = newSearchRequest(sre.getName(), BASE_OBJECT, "(objectClass=*)");
- final InternalSearchOperation readOp = conn.processSearch(request);
- assertEquals(readOp.getResultCode(), ResultCode.SUCCESS,
- "Failed to read " + sre.getName() + " entry. Got error message: " + readOp.getErrorMessage());
+ final SearchRequest request2 = newSearchRequest(sre.getName(), BASE_OBJECT);
+ final InternalSearchOperation op2 = conn.processSearch(request2);
+ assertEquals(op2.getResultCode(), ResultCode.SUCCESS,
+ "Failed to read " + sre.getName() + " entry. Got error message: " + op2.getErrorMessage());
}
}
diff --git a/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/plugins/LDAPADListPluginTestCase.java b/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/plugins/LDAPADListPluginTestCase.java
index e839c0d..291d4f9 100644
--- a/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/plugins/LDAPADListPluginTestCase.java
+++ b/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/plugins/LDAPADListPluginTestCase.java
@@ -40,6 +40,7 @@
import org.opends.server.api.plugin.PluginType;
import org.opends.server.protocols.internal.InternalSearchOperation;
import org.opends.server.protocols.internal.SearchRequest;
+import org.opends.server.types.DN;
import org.opends.server.types.Entry;
import org.testng.annotations.BeforeClass;
import org.testng.annotations.DataProvider;
@@ -131,8 +132,7 @@
* @throws Exception If an unexpected problem occurs.
*/
@DataProvider(name = "invalidConfigs")
- public Object[][] getInvalidConfigs()
- throws Exception
+ public Object[][] getInvalidConfigs() throws Exception
{
ArrayList<Entry> entries = new ArrayList<Entry>();
Entry e = TestCaseUtils.makeEntry(
@@ -212,13 +212,8 @@
{
TestCaseUtils.initializeTestBackend(true);
- final SearchRequest request = newSearchRequest("o=test", SearchScope.BASE_OBJECT, "(objectClass=*)");
- InternalSearchOperation searchOperation = getRootConnection().processSearch(request);
- assertEquals(searchOperation.getResultCode(), ResultCode.SUCCESS);
- assertFalse(searchOperation.getSearchEntries().isEmpty());
-
- Entry e = searchOperation.getSearchEntries().get(0);
- assertNotNull(e.getAttribute("o"));
+ final SearchRequest request = newSearchRequest(DN.valueOf("o=test"), SearchScope.BASE_OBJECT);
+ assertAttributeOExists(request);
}
@@ -235,14 +230,9 @@
{
TestCaseUtils.initializeTestBackend(true);
- SearchRequest request = newSearchRequest("o=test", SearchScope.BASE_OBJECT, "(objectClass=*)")
+ SearchRequest request = newSearchRequest(DN.valueOf("o=test"), SearchScope.BASE_OBJECT)
.addAttribute("o");
- InternalSearchOperation searchOperation = getRootConnection().processSearch(request);
- assertEquals(searchOperation.getResultCode(), ResultCode.SUCCESS);
- assertFalse(searchOperation.getSearchEntries().isEmpty());
-
- Entry e = searchOperation.getSearchEntries().get(0);
- assertNotNull(e.getAttribute("o"));
+ assertAttributeOExists(request);
}
@@ -259,14 +249,9 @@
{
TestCaseUtils.initializeTestBackend(true);
- final SearchRequest request = newSearchRequest("o=test", SearchScope.BASE_OBJECT, "(objectClass=*)")
+ final SearchRequest request = newSearchRequest(DN.valueOf("o=test"), SearchScope.BASE_OBJECT)
.addAttribute("@organization");
- InternalSearchOperation searchOperation = getRootConnection().processSearch(request);
- assertEquals(searchOperation.getResultCode(), ResultCode.SUCCESS);
- assertFalse(searchOperation.getSearchEntries().isEmpty());
-
- Entry e = searchOperation.getSearchEntries().get(0);
- assertNotNull(e.getAttribute("o"));
+ assertAttributeOExists(request);
}
@@ -284,7 +269,12 @@
TestCaseUtils.initializeTestBackend(true);
final SearchRequest request =
- newSearchRequest("o=test", SearchScope.BASE_OBJECT, "(objectClass=*)").addAttribute("@undefined");
+ newSearchRequest(DN.valueOf("o=test"), SearchScope.BASE_OBJECT).addAttribute("@undefined");
+ assertAttributeOExists(request);
+ }
+
+ private void assertAttributeOExists(final SearchRequest request)
+ {
InternalSearchOperation searchOperation = getRootConnection().processSearch(request);
assertEquals(searchOperation.getResultCode(), ResultCode.SUCCESS);
assertFalse(searchOperation.getSearchEntries().isEmpty());
diff --git a/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/protocols/internal/InternalClientConnectionTestCase.java b/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/protocols/internal/InternalClientConnectionTestCase.java
index bcd9fc8..c9a4482 100644
--- a/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/protocols/internal/InternalClientConnectionTestCase.java
+++ b/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/protocols/internal/InternalClientConnectionTestCase.java
@@ -715,7 +715,7 @@
@Test
public void testProcessSearch1() throws Exception
{
- SearchRequest request = newSearchRequest(DN.rootDN(), SearchScope.BASE_OBJECT, "(objectClass=*)");
+ SearchRequest request = newSearchRequest(DN.rootDN(), SearchScope.BASE_OBJECT);
InternalSearchOperation searchOperation = getRootConnection().processSearch(request);
assertEquals(searchOperation.getResultCode(), ResultCode.SUCCESS);
assertFalse(searchOperation.getSearchEntries().isEmpty());
@@ -733,7 +733,7 @@
@Test
public void testProcessSearch2() throws Exception
{
- SearchRequest request = newSearchRequest(DN.rootDN(), SearchScope.BASE_OBJECT, "(objectClass=*)");
+ SearchRequest request = newSearchRequest(DN.rootDN(), SearchScope.BASE_OBJECT);
InternalSearchOperation searchOperation = getRootConnection().processSearch(request);
assertEquals(searchOperation.getResultCode(), ResultCode.SUCCESS);
assertFalse(searchOperation.getSearchEntries().isEmpty());
@@ -754,7 +754,7 @@
{
TestInternalSearchListener searchListener = new TestInternalSearchListener();
- SearchRequest request = newSearchRequest(DN.rootDN(), SearchScope.BASE_OBJECT, "(objectClass=*)");
+ SearchRequest request = newSearchRequest(DN.rootDN(), SearchScope.BASE_OBJECT);
InternalSearchOperation searchOperation = getRootConnection().processSearch(request, searchListener);
assertEquals(searchOperation.getResultCode(), ResultCode.SUCCESS);
assertFalse(searchListener.getSearchEntries().isEmpty());
@@ -772,7 +772,7 @@
@Test
public void testProcessSearch4() throws Exception
{
- final SearchRequest request = newSearchRequest(DN.rootDN(), SearchScope.BASE_OBJECT, "(objectClass=*)");
+ final SearchRequest request = newSearchRequest(DN.rootDN(), SearchScope.BASE_OBJECT);
InternalSearchOperation searchOperation = getRootConnection().processSearch(request);
assertEquals(searchOperation.getResultCode(), ResultCode.SUCCESS);
assertFalse(searchOperation.getSearchEntries().isEmpty());
@@ -790,7 +790,7 @@
@Test
public void testProcessSearch5() throws Exception
{
- final SearchRequest request = newSearchRequest(DN.rootDN(), SearchScope.BASE_OBJECT, "(objectClass=*)");
+ final SearchRequest request = newSearchRequest(DN.rootDN(), SearchScope.BASE_OBJECT);
InternalSearchOperation searchOperation = getRootConnection().processSearch(request);
assertEquals(searchOperation.getResultCode(), ResultCode.SUCCESS);
assertFalse(searchOperation.getSearchEntries().isEmpty());
@@ -812,7 +812,7 @@
TestInternalSearchListener searchListener =
new TestInternalSearchListener();
- final SearchRequest request = newSearchRequest(DN.rootDN(), SearchScope.BASE_OBJECT, "(objectClass=*)");
+ final SearchRequest request = newSearchRequest(DN.rootDN(), SearchScope.BASE_OBJECT);
InternalSearchOperation searchOperation = getRootConnection().processSearch(request, searchListener);
assertEquals(searchOperation.getResultCode(), ResultCode.SUCCESS);
assertFalse(searchListener.getSearchEntries().isEmpty());
@@ -831,7 +831,8 @@
throws Exception
{
InternalClientConnection conn = getRootConnection();
- InternalSearchOperation searchOperation = conn.processSearch("", SearchScope.BASE_OBJECT, "(objectClass=*)");
+ InternalSearchOperation searchOperation =
+ conn.processSearch(newSearchRequest(DN.rootDN(), SearchScope.BASE_OBJECT));
assertEquals(searchOperation.getResultCode(), ResultCode.SUCCESS);
assertFalse(searchOperation.getSearchEntries().isEmpty());
assertTrue(searchOperation.getSearchReferences().isEmpty());
diff --git a/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/protocols/internal/InternalLDAPSocketTestCase.java b/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/protocols/internal/InternalLDAPSocketTestCase.java
index b1e72c9..439a5b7 100644
--- a/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/protocols/internal/InternalLDAPSocketTestCase.java
+++ b/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/protocols/internal/InternalLDAPSocketTestCase.java
@@ -602,7 +602,7 @@
SearchScope.BASE_OBJECT,
DereferenceAliasesPolicy.NEVER,
0, 0, false,
- LDAPFilter.decode("(objectClass=*)"),
+ LDAPFilter.objectClassPresent(),
new LinkedHashSet<String>());
writer.writeMessage(new LDAPMessage(2, searchRequest));
diff --git a/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/protocols/internal/InternalSearchOperationTestCase.java b/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/protocols/internal/InternalSearchOperationTestCase.java
index cd0378a..5b91b68 100644
--- a/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/protocols/internal/InternalSearchOperationTestCase.java
+++ b/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/protocols/internal/InternalSearchOperationTestCase.java
@@ -78,7 +78,7 @@
nextMessageID(), new ArrayList<Control>(),
ByteString.empty(), SearchScope.BASE_OBJECT,
DereferenceAliasesPolicy.NEVER, 0, 0,
- false, LDAPFilter.decode("(objectClass=*)"),
+ false, LDAPFilter.objectClassPresent(),
new LinkedHashSet<String>(), null);
}
@@ -99,7 +99,7 @@
nextMessageID(), new ArrayList<Control>(),
ByteString.empty(), SearchScope.BASE_OBJECT,
DereferenceAliasesPolicy.NEVER, 0, 0,
- false, LDAPFilter.decode("(objectClass=*)"),
+ false, LDAPFilter.objectClassPresent(),
new LinkedHashSet<String>(),
new TestInternalSearchListener());
}
@@ -116,15 +116,12 @@
public void testConstructor2WithoutListener()
throws Exception
{
- SearchFilter searchFilter =
- SearchFilter.createFilterFromString("(objectClass=*)");
-
InternalClientConnection conn = getRootConnection();
new InternalSearchOperation(conn, nextOperationID(),
nextMessageID(), new ArrayList<Control>(),
DN.rootDN(), SearchScope.BASE_OBJECT,
- DereferenceAliasesPolicy.NEVER, 0, 0,
- false, searchFilter,
+ DereferenceAliasesPolicy.NEVER, 0, 0, false,
+ SearchFilter.objectClassPresent(),
new LinkedHashSet<String>(), null);
}
@@ -140,15 +137,12 @@
public void testConstructor2WithListener()
throws Exception
{
- SearchFilter searchFilter =
- SearchFilter.createFilterFromString("(objectClass=*)");
-
InternalClientConnection conn = getRootConnection();
new InternalSearchOperation(conn, nextOperationID(),
nextMessageID(), new ArrayList<Control>(),
DN.rootDN(), SearchScope.BASE_OBJECT,
DereferenceAliasesPolicy.NEVER, 0, 0,
- false, searchFilter,
+ false, SearchFilter.objectClassPresent(),
new LinkedHashSet<String>(),
new TestInternalSearchListener());
}
@@ -164,7 +158,7 @@
@Test()
public void testGetSearchEntriesAndReferences() throws Exception
{
- SearchRequest request = Requests.newSearchRequest(DN.rootDN(), SearchScope.BASE_OBJECT, "(objectClass=*)");
+ SearchRequest request = Requests.newSearchRequest(DN.rootDN(), SearchScope.BASE_OBJECT);
InternalSearchOperation searchOperation = getRootConnection().processSearch(request);
assertEquals(searchOperation.getResultCode(), ResultCode.SUCCESS);
assertFalse(searchOperation.getSearchEntries().isEmpty());
@@ -188,9 +182,8 @@
new ArrayList<Control>(),
ByteString.empty(),
SearchScope.BASE_OBJECT,
- DereferenceAliasesPolicy.NEVER, 0,
- 0, false,
- LDAPFilter.decode("(objectClass=*)"),
+ DereferenceAliasesPolicy.NEVER, 0, 0, false,
+ LDAPFilter.objectClassPresent(),
new LinkedHashSet<String>(), null);
Entry e = TestCaseUtils.makeEntry("dn: ",
@@ -217,9 +210,8 @@
new ArrayList<Control>(),
ByteString.empty(),
SearchScope.BASE_OBJECT,
- DereferenceAliasesPolicy.NEVER, 0,
- 0, false,
- LDAPFilter.decode("(objectClass=*)"),
+ DereferenceAliasesPolicy.NEVER, 0, 0, false,
+ LDAPFilter.objectClassPresent(),
new LinkedHashSet<String>(),
new TestInternalSearchListener());
@@ -247,9 +239,8 @@
new ArrayList<Control>(),
ByteString.empty(),
SearchScope.BASE_OBJECT,
- DereferenceAliasesPolicy.NEVER, 0,
- 0, false,
- LDAPFilter.decode("(objectClass=*)"),
+ DereferenceAliasesPolicy.NEVER, 0, 0, false,
+ LDAPFilter.objectClassPresent(),
new LinkedHashSet<String>(), null);
SearchResultReference reference =
@@ -275,9 +266,8 @@
new ArrayList<Control>(),
ByteString.empty(),
SearchScope.BASE_OBJECT,
- DereferenceAliasesPolicy.NEVER, 0,
- 0, false,
- LDAPFilter.decode("(objectClass=*)"),
+ DereferenceAliasesPolicy.NEVER, 0, 0, false,
+ LDAPFilter.objectClassPresent(),
new LinkedHashSet<String>(),
new TestInternalSearchListener());
diff --git a/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/protocols/jmx/JmxPrivilegeTestCase.java b/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/protocols/jmx/JmxPrivilegeTestCase.java
index 65f044f..fffe578 100644
--- a/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/protocols/jmx/JmxPrivilegeTestCase.java
+++ b/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/protocols/jmx/JmxPrivilegeTestCase.java
@@ -482,10 +482,8 @@
assertEquals(conn.hasPrivilege(Privilege.JMX_READ, null), hasPrivilege);
ByteString dn = ByteString.valueOf("cn=config");
- LDAPFilter filter = new LDAPFilter(SearchFilter
- .createFilterFromString("(objectClass=*)"));
- InternalSearchOperation searchOperation = conn.processSearch(dn,
- SearchScope.BASE_OBJECT, filter);
+ LDAPFilter filter = LDAPFilter.objectClassPresent();
+ InternalSearchOperation searchOperation = conn.processSearch(dn, SearchScope.BASE_OBJECT, filter);
if (hasPrivilege)
{
assertEquals(searchOperation.getResultCode(), ResultCode.SUCCESS);
@@ -1257,7 +1255,7 @@
conn.nextMessageID(), controls, targetDN,
SearchScope.BASE_OBJECT,
DereferenceAliasesPolicy.NEVER, 0, 0, false,
- SearchFilter.createFilterFromString("(objectClass=*)"), null,
+ SearchFilter.objectClassPresent(), null,
null);
searchOperation.run();
@@ -1464,7 +1462,7 @@
conn.nextMessageID(), controls, targetDN,
SearchScope.BASE_OBJECT,
DereferenceAliasesPolicy.NEVER, 0, 0, false,
- SearchFilter.createFilterFromString("(objectClass=*)"), null,
+ SearchFilter.objectClassPresent(), null,
null);
searchOperation.run();
diff --git a/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/protocols/ldap/LDAPv2TestCase.java b/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/protocols/ldap/LDAPv2TestCase.java
index aee5049..9f1dd46 100644
--- a/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/protocols/ldap/LDAPv2TestCase.java
+++ b/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/protocols/ldap/LDAPv2TestCase.java
@@ -482,7 +482,7 @@
new SearchRequestProtocolOp(ByteString.empty(),
SearchScope.BASE_OBJECT,
DereferenceAliasesPolicy.NEVER, 0, 0, false,
- LDAPFilter.decode("(objectClass=*)"), null);
+ LDAPFilter.objectClassPresent(), null);
ArrayList<Control> controls = new ArrayList<Control>(1);
controls.add(new LDAPControl(OID_MANAGE_DSAIT_CONTROL, true));
message = new LDAPMessage(2, searchRequest, controls);
diff --git a/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/protocols/ldap/TestSearchProtocolOp.java b/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/protocols/ldap/TestSearchProtocolOp.java
index 68b3528..bd97c90 100644
--- a/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/protocols/ldap/TestSearchProtocolOp.java
+++ b/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/protocols/ldap/TestSearchProtocolOp.java
@@ -34,8 +34,8 @@
import org.forgerock.opendj.io.ASN1Writer;
import org.forgerock.opendj.ldap.ByteString;
import org.forgerock.opendj.ldap.ByteStringBuilder;
-import org.forgerock.opendj.ldap.SearchScope;
import org.forgerock.opendj.ldap.DereferenceAliasesPolicy;
+import org.forgerock.opendj.ldap.SearchScope;
import org.opends.server.types.LDAPException;
import org.testng.annotations.Test;
@@ -55,15 +55,10 @@
private int sizeLimit = Integer.MAX_VALUE;
private int timeLimit = Integer.MAX_VALUE;
private boolean typesOnly = true;
- private LDAPFilter filter;
+ private LDAPFilter filter = LDAPFilter.objectClassPresent();
private LinkedHashSet<String> attributes = new LinkedHashSet<String>(
Arrays.asList("description", "cn", "cn;optionA"));
- public TestSearchProtocolOp() throws Exception
- {
- filter = LDAPFilter.decode("(objectClass=*)");
- }
-
/**
* Create a test search request protocol op.
* @return A test search request protocol op.
diff --git a/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/replication/InitOnLineTest.java b/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/replication/InitOnLineTest.java
index fc36654..89213cf 100644
--- a/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/replication/InitOnLineTest.java
+++ b/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/replication/InitOnLineTest.java
@@ -266,7 +266,7 @@
long startMillisecs = System.currentTimeMillis();
do
{
- final SearchRequest request = newSearchRequest(taskEntry.getName(), SearchScope.BASE_OBJECT, "(objectclass=*)");
+ final SearchRequest request = newSearchRequest(taskEntry.getName(), SearchScope.BASE_OBJECT);
InternalSearchOperation searchOperation = connection.processSearch(request);
Entry resultEntry = searchOperation.getSearchEntries().getFirst();
diff --git a/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/replication/ProtocolWindowTest.java b/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/replication/ProtocolWindowTest.java
index f1e0bd1..fca2db0 100644
--- a/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/replication/ProtocolWindowTest.java
+++ b/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/replication/ProtocolWindowTest.java
@@ -27,12 +27,13 @@
package org.opends.server.replication;
import java.net.SocketTimeoutException;
-import org.forgerock.i18n.slf4j.LocalizedLogger;
import java.util.List;
import java.util.NoSuchElementException;
import org.assertj.core.api.Assertions;
import org.forgerock.i18n.LocalizableMessage;
+import org.forgerock.i18n.slf4j.LocalizedLogger;
+import org.forgerock.opendj.ldap.ResultCode;
import org.opends.server.TestCaseUtils;
import org.opends.server.core.AddOperation;
import org.opends.server.core.DeleteOperation;
@@ -44,14 +45,18 @@
import org.opends.server.replication.server.ReplServerFakeConfiguration;
import org.opends.server.replication.server.ReplicationServer;
import org.opends.server.replication.service.ReplicationBroker;
-import org.opends.server.types.*;
-import org.forgerock.opendj.ldap.ResultCode;
+import org.opends.server.types.DN;
+import org.opends.server.types.Entry;
+import org.opends.server.types.Modification;
+import org.opends.server.types.Operation;
+import org.opends.server.types.OperationType;
import org.testng.annotations.AfterClass;
import org.testng.annotations.BeforeClass;
import org.testng.annotations.Test;
-import static org.opends.server.TestCaseUtils.*;
import static org.forgerock.opendj.ldap.SearchScope.*;
+import static org.opends.server.TestCaseUtils.*;
+import static org.opends.server.protocols.internal.Requests.*;
import static org.testng.Assert.*;
/**
@@ -195,7 +200,7 @@
private int searchNbMonitorEntries(String filterString) throws Exception
{
- InternalSearchOperation op = connection.processSearch("cn=monitor", WHOLE_SUBTREE, filterString);
+ InternalSearchOperation op = connection.processSearch(newSearchRequest("cn=monitor", WHOLE_SUBTREE, filterString));
assertEquals(op.getResultCode(), ResultCode.SUCCESS);
return op.getEntriesSent();
}
diff --git a/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/replication/ReplicationTestCase.java b/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/replication/ReplicationTestCase.java
index 89dc52a..31b8753 100644
--- a/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/replication/ReplicationTestCase.java
+++ b/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/replication/ReplicationTestCase.java
@@ -458,7 +458,7 @@
throws Exception
{
// Search for matching entries in config backend
- InternalSearchOperation op = connection.processSearch("cn=config", WHOLE_SUBTREE, filter);
+ InternalSearchOperation op = connection.processSearch(newSearchRequest("cn=config", WHOLE_SUBTREE, filter));
assertEquals(op.getResultCode(), ResultCode.SUCCESS, op.getErrorMessage() .toString());
// Check that no entries have been found
@@ -517,7 +517,7 @@
{
if (count++>0)
Thread.sleep(100);
- op = connection.processSearch("cn=replication,cn=monitor", WHOLE_SUBTREE, monitorFilter);
+ op = connection.processSearch(newSearchRequest("cn=replication,cn=monitor", WHOLE_SUBTREE, monitorFilter));
}
while (op.getSearchEntries().isEmpty() && (count<100));
assertFalse(op.getSearchEntries().isEmpty(), "Could not read monitoring information");
@@ -652,7 +652,7 @@
long startMillisecs = System.currentTimeMillis();
do
{
- final SearchRequest request = newSearchRequest(taskEntry.getName(), SearchScope.BASE_OBJECT, "(objectclass=*)");
+ final SearchRequest request = newSearchRequest(taskEntry.getName(), SearchScope.BASE_OBJECT);
InternalSearchOperation searchOperation = connection.processSearch(request);
if (searchOperation.getSearchEntries().isEmpty())
{
@@ -748,7 +748,7 @@
TaskState taskState = null;
do
{
- final SearchRequest request = newSearchRequest(taskEntry.getName(), SearchScope.BASE_OBJECT, "(objectclass=*)");
+ final SearchRequest request = newSearchRequest(taskEntry.getName(), SearchScope.BASE_OBJECT);
InternalSearchOperation searchOperation = connection.processSearch(request);
resultEntry = searchOperation.getSearchEntries().getFirst();
diff --git a/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/tasks/TasksTestCase.java b/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/tasks/TasksTestCase.java
index bfad9b2..1857e85 100644
--- a/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/tasks/TasksTestCase.java
+++ b/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/tasks/TasksTestCase.java
@@ -39,7 +39,6 @@
import org.opends.server.protocols.internal.InternalClientConnection;
import org.opends.server.protocols.internal.InternalSearchOperation;
import org.opends.server.protocols.internal.SearchRequest;
-import static org.opends.server.protocols.internal.Requests.*;
import org.opends.server.types.AttributeParser;
import org.opends.server.types.DN;
import org.opends.server.types.Entry;
@@ -47,6 +46,7 @@
import static org.opends.server.config.ConfigConstants.*;
import static org.opends.server.protocols.internal.InternalClientConnection.*;
+import static org.opends.server.protocols.internal.Requests.*;
import static org.testng.Assert.*;
/**
@@ -73,7 +73,7 @@
"Add of the task definition was not successful");
// Wait until the task completes.
- final SearchRequest request = newSearchRequest(taskEntry.getName(), SearchScope.BASE_OBJECT, "(objectclass=*)");
+ final SearchRequest request = newSearchRequest(taskEntry.getName(), SearchScope.BASE_OBJECT);
Entry resultEntry = null;
String completionTime = null;
long startMillisecs = System.currentTimeMillis();
diff --git a/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/types/PrivilegeTestCase.java b/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/types/PrivilegeTestCase.java
index a93a4d7..c8347b9 100644
--- a/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/types/PrivilegeTestCase.java
+++ b/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/types/PrivilegeTestCase.java
@@ -67,6 +67,8 @@
import org.opends.server.core.SchemaConfigManager;
import org.opends.server.protocols.internal.InternalClientConnection;
import org.opends.server.protocols.internal.InternalSearchOperation;
+import org.opends.server.protocols.internal.Requests;
+import org.opends.server.protocols.internal.SearchRequest;
import org.opends.server.protocols.ldap.BindRequestProtocolOp;
import org.opends.server.protocols.ldap.BindResponseProtocolOp;
import org.opends.server.protocols.ldap.LDAPMessage;
@@ -82,6 +84,7 @@
import static org.forgerock.opendj.ldap.ResultCode.*;
import static org.opends.server.protocols.internal.InternalClientConnection.*;
+import static org.opends.server.protocols.internal.Requests.*;
import static org.testng.Assert.*;
/**
@@ -372,8 +375,8 @@
{
assertEquals(conn.hasPrivilege(Privilege.CONFIG_READ, null), hasPrivilege);
- InternalSearchOperation searchOperation = conn.processSearch(
- "cn=config", SearchScope.BASE_OBJECT, "(objectClass=*)");
+ SearchRequest request = Requests.newSearchRequest(DN.valueOf("cn=config"), SearchScope.BASE_OBJECT);
+ InternalSearchOperation searchOperation = conn.processSearch(request);
assertPrivilege(searchOperation.getResultCode(), hasPrivilege);
}
@@ -395,8 +398,8 @@
{
assertEquals(conn.hasPrivilege(Privilege.UNINDEXED_SEARCH, null), hasPrivilege);
- InternalSearchOperation searchOperation = conn.processSearch(
- "dc=unindexed,dc=jeb", SearchScope.WHOLE_SUBTREE, "(carLicense=test*)");
+ SearchRequest request = newSearchRequest("dc=unindexed,dc=jeb", SearchScope.WHOLE_SUBTREE, "(carLicense=test*)");
+ InternalSearchOperation searchOperation = conn.processSearch(request);
assertPrivilege(searchOperation.getResultCode(), hasPrivilege);
}
@@ -1287,7 +1290,7 @@
nextOperationID(), nextMessageID(), controls, targetDN,
SearchScope.BASE_OBJECT,
DereferenceAliasesPolicy.NEVER, 0, 0, false,
- SearchFilter.createFilterFromString("(objectClass=*)"), null,
+ SearchFilter.objectClassPresent(), null,
null);
searchOperation.run();
assertProxyPrivilege(searchOperation.getResultCode(), hasProxyPrivilege);
@@ -1438,7 +1441,7 @@
nextMessageID(), controls, targetDN,
SearchScope.BASE_OBJECT,
DereferenceAliasesPolicy.NEVER, 0, 0, false,
- SearchFilter.createFilterFromString("(objectClass=*)"), null,
+ SearchFilter.objectClassPresent(), null,
null);
searchOperation.run();
assertProxyPrivilege(searchOperation.getResultCode(), hasProxyPrivilege);
diff --git a/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/types/VirtualAttributeRuleTestCase.java b/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/types/VirtualAttributeRuleTestCase.java
index 6e2a69c..4db18ea 100644
--- a/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/types/VirtualAttributeRuleTestCase.java
+++ b/opendj-sdk/opendj3-server-dev/tests/unit-tests-testng/src/server/org/opends/server/types/VirtualAttributeRuleTestCase.java
@@ -111,7 +111,7 @@
LinkedHashSet<SearchFilter> filterSet1 = new LinkedHashSet<SearchFilter>(1);
- filterSet1.add(SearchFilter.createFilterFromString("(objectClass=*)"));
+ filterSet1.add(SearchFilter.objectClassPresent());
LinkedHashSet<SearchFilter> filterSet2 = new LinkedHashSet<SearchFilter>(1);
filterSet2.add(SearchFilter.createFilterFromString("(o=test)"));
--
Gitblit v1.10.0