From f4d58cd99b8fc03b348841066672d1236ca37264 Mon Sep 17 00:00:00 2001
From: Jean-Noël Rouvignac <jean-noel.rouvignac@forgerock.com>
Date: Mon, 07 Mar 2016 15:10:36 +0000
Subject: [PATCH] OPENDJ-1342 Migrate AVA, RDN, and DN classes: Fix change in behaviour for DN.parent()

---
 opendj-server-legacy/src/test/java/org/opends/server/types/TestDN.java                                             |    4 ++--
 opendj-server-legacy/src/main/java/org/opends/server/core/SubentryManager.java                                     |    4 ++--
 opendj-server-legacy/src/main/java/org/opends/server/workflowelement/localbackend/LocalBackendWorkflowElement.java |    2 +-
 3 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/opendj-server-legacy/src/main/java/org/opends/server/core/SubentryManager.java b/opendj-server-legacy/src/main/java/org/opends/server/core/SubentryManager.java
index 684a4eb..c788120 100644
--- a/opendj-server-legacy/src/main/java/org/opends/server/core/SubentryManager.java
+++ b/opendj-server-legacy/src/main/java/org/opends/server/core/SubentryManager.java
@@ -405,7 +405,7 @@
     try
     {
       List<SubEntry> subentries = new ArrayList<>();
-      for (DN subDN = dn; subDN != null; subDN = subDN.parent())
+      for (DN subDN = dn; subDN != null && !subDN.isRootDN(); subDN = subDN.parent())
       {
         List<SubEntry> subList = subEntryMap.get(subDN);
         if (subList != null)
@@ -452,7 +452,7 @@
     try
     {
       List<SubEntry> subentries = new ArrayList<>();
-      for (DN subDN = entry.getName(); subDN != null; subDN = subDN.parent())
+      for (DN subDN = entry.getName(); subDN != null && !subDN.isRootDN(); subDN = subDN.parent())
       {
         List<SubEntry> subList = subEntryMap.get(subDN);
         if (subList != null)
diff --git a/opendj-server-legacy/src/main/java/org/opends/server/workflowelement/localbackend/LocalBackendWorkflowElement.java b/opendj-server-legacy/src/main/java/org/opends/server/workflowelement/localbackend/LocalBackendWorkflowElement.java
index 854a50b..0ca7cc7 100644
--- a/opendj-server-legacy/src/main/java/org/opends/server/workflowelement/localbackend/LocalBackendWorkflowElement.java
+++ b/opendj-server-legacy/src/main/java/org/opends/server/workflowelement/localbackend/LocalBackendWorkflowElement.java
@@ -905,7 +905,7 @@
       {
         return workflow;
       }
-      entryDN = entryDN.parent();
+      entryDN = DirectoryServer.getParentDNInSuffix(entryDN);
     }
     return null;
   }
diff --git a/opendj-server-legacy/src/test/java/org/opends/server/types/TestDN.java b/opendj-server-legacy/src/test/java/org/opends/server/types/TestDN.java
index 67ca277..0527c23 100644
--- a/opendj-server-legacy/src/test/java/org/opends/server/types/TestDN.java
+++ b/opendj-server-legacy/src/test/java/org/opends/server/types/TestDN.java
@@ -395,11 +395,11 @@
    *
    * @return The array of test DN strings.
    */
-  @DataProvider(name = "createParentAndRDNTestData")
+  @DataProvider
   public Object[][] createParentAndRDNTestData() {
     return new Object[][] {
         { "", null, null },
-        { "dc=com", null, "dc=com" },
+        { "dc=com", "", "dc=com" },
         { "dc=opends,dc=com", "dc=com", "dc=opends" },
         { "dc=world,dc=opends,dc=com", "dc=opends,dc=com", "dc=world" },
         { "dc=hello,dc=world,dc=opends,dc=com",

--
Gitblit v1.10.0