From 994aade8f6eee89d18ed76128feb18447f797ce4 Mon Sep 17 00:00:00 2001
From: matthew_swift <matthew_swift@localhost>
Date: Sun, 02 Sep 2007 16:30:55 +0000
Subject: [PATCH] Minor refactoring of the admin driver API. Remove the hasManagedObject methods and replace them with a single managedObjectExists method. This will be more useful and more simple for dependency call-backs.

---
 opendj-sdk/opends/src/server/org/opends/server/admin/client/ldap/LDAPManagedObject.java |    9 ++++++---
 1 files changed, 6 insertions(+), 3 deletions(-)

diff --git a/opendj-sdk/opends/src/server/org/opends/server/admin/client/ldap/LDAPManagedObject.java b/opendj-sdk/opends/src/server/org/opends/server/admin/client/ldap/LDAPManagedObject.java
index fbdf4df..e74232a 100644
--- a/opendj-sdk/opends/src/server/org/opends/server/admin/client/ldap/LDAPManagedObject.java
+++ b/opendj-sdk/opends/src/server/org/opends/server/admin/client/ldap/LDAPManagedObject.java
@@ -45,6 +45,7 @@
 import org.opends.server.admin.InstantiableRelationDefinition;
 import org.opends.server.admin.ManagedObjectAlreadyExistsException;
 import org.opends.server.admin.ManagedObjectDefinition;
+import org.opends.server.admin.ManagedObjectNotFoundException;
 import org.opends.server.admin.ManagedObjectPath;
 import org.opends.server.admin.PropertyDefinition;
 import org.opends.server.admin.PropertyOption;
@@ -133,11 +134,13 @@
     // First make sure that the parent managed object still exists.
     ManagedObjectPath<?, ?> path = getManagedObjectPath();
     ManagedObjectPath<?, ?> parent = path.parent();
-    if (!parent.isEmpty()) {
-      LdapName dn = LDAPNameBuilder.create(parent, driver.getLDAPProfile());
-      if (!driver.entryExists(dn)) {
+
+    try {
+      if (!driver.managedObjectExists(parent)) {
         throw new ConcurrentModificationException();
       }
+    } catch (ManagedObjectNotFoundException e) {
+      throw new ConcurrentModificationException();
     }
 
     // We may need to create the parent "relation" entry if this is a

--
Gitblit v1.10.0