From 160f2cacf471475fbfce7d9ec0573a224adf1a4c Mon Sep 17 00:00:00 2001
From: neil_a_wilson <neil_a_wilson@localhost>
Date: Fri, 08 Dec 2006 00:12:35 +0000
Subject: [PATCH] Add a new ds-monitor-entry objectclass to all monitor entries so that they include a structural objectclass.
---
opends/resource/schema/02-config.ldif | 3 ++-
opends/src/server/org/opends/server/backends/MonitorBackend.java | 19 +++++++------------
opends/src/server/org/opends/server/util/ServerConstants.java | 8 ++++++++
3 files changed, 17 insertions(+), 13 deletions(-)
diff --git a/opends/resource/schema/02-config.ldif b/opends/resource/schema/02-config.ldif
index 4eea314..4688e6e 100644
--- a/opends/resource/schema/02-config.ldif
+++ b/opends/resource/schema/02-config.ldif
@@ -1367,5 +1367,6 @@
SUP ds-cfg-account-status-notification-handler STRUCTURAL
MUST ds-cfg-account-status-notification-type
X-ORIGIN 'OpenDS Directory Server' )
-
+objectClasses: ( 1.3.6.1.4.1.26027.1.2.77 NAME 'ds-monitor-entry' SUP top
+ STRUCTURAL MUST cn X-ORIGIN 'OpenDS Directory Server' )
diff --git a/opends/src/server/org/opends/server/backends/MonitorBackend.java b/opends/src/server/org/opends/server/backends/MonitorBackend.java
index 15b1089..9e4850e 100644
--- a/opends/src/server/org/opends/server/backends/MonitorBackend.java
+++ b/opends/src/server/org/opends/server/backends/MonitorBackend.java
@@ -222,21 +222,16 @@
// Construct the set of objectclasses to include in the base monitor entry.
- monitorObjectClasses = new HashMap<ObjectClass,String>(2);
- ObjectClass topOC = DirectoryServer.getObjectClass(OC_TOP);
- if (topOC == null)
- {
- topOC = DirectoryServer.getDefaultObjectClass(OC_TOP);
- }
+ monitorObjectClasses = new LinkedHashMap<ObjectClass,String>(3);
+ ObjectClass topOC = DirectoryServer.getObjectClass(OC_TOP, true);
monitorObjectClasses.put(topOC, OC_TOP);
+ ObjectClass monitorOC = DirectoryServer.getObjectClass(OC_MONITOR_ENTRY,
+ true);
+ monitorObjectClasses.put(monitorOC, OC_MONITOR_ENTRY);
+
ObjectClass extensibleObjectOC =
- DirectoryServer.getObjectClass(OC_EXTENSIBLE_OBJECT);
- if (extensibleObjectOC == null)
- {
- extensibleObjectOC =
- DirectoryServer.getDefaultObjectClass(OC_EXTENSIBLE_OBJECT);
- }
+ DirectoryServer.getObjectClass(OC_EXTENSIBLE_OBJECT_LC, true);
monitorObjectClasses.put(extensibleObjectOC, OC_EXTENSIBLE_OBJECT);
diff --git a/opends/src/server/org/opends/server/util/ServerConstants.java b/opends/src/server/org/opends/server/util/ServerConstants.java
index 34bf7c6..3cb85e8 100644
--- a/opends/src/server/org/opends/server/util/ServerConstants.java
+++ b/opends/src/server/org/opends/server/util/ServerConstants.java
@@ -536,6 +536,14 @@
/**
+ * The name of the objectclass that will be used as the structural class for
+ * monitor entries.
+ */
+ public static final String OC_MONITOR_ENTRY = "ds-monitor-entry";
+
+
+
+ /**
* The name of the standard objectclass, formatted in all lowercase, that is
* used to indicate that an entry describes an organization.
*/
--
Gitblit v1.10.0