From 735d2983e4e881054bc4a7deda2ee92c7708eaaa Mon Sep 17 00:00:00 2001
From: Jean-Noël Rouvignac <jean-noel.rouvignac@forgerock.com>
Date: Mon, 30 May 2016 10:43:11 +0000
Subject: [PATCH] OPENDJ-2987 Default ObjectClassType is STRUCTURAL

---
 opendj-core/src/main/java/org/forgerock/opendj/ldap/schema/SchemaBuilder.java |   15 ++++++++-------
 1 files changed, 8 insertions(+), 7 deletions(-)

diff --git a/opendj-core/src/main/java/org/forgerock/opendj/ldap/schema/SchemaBuilder.java b/opendj-core/src/main/java/org/forgerock/opendj/ldap/schema/SchemaBuilder.java
index 9ec7161..7d48981 100644
--- a/opendj-core/src/main/java/org/forgerock/opendj/ldap/schema/SchemaBuilder.java
+++ b/opendj-core/src/main/java/org/forgerock/opendj/ldap/schema/SchemaBuilder.java
@@ -1340,14 +1340,15 @@
                 addObjectClass(newExtensibleObjectObjectClass(
                     ocBuilder.getDescription(), ocBuilder.getExtraProperties(), this), overwrite);
                 return this;
-            } else {
-                if (ocType == STRUCTURAL && superiorClasses.isEmpty()) {
-                    superiorClasses = singleton(TOP_OBJECTCLASS_NAME);
-                }
-                ocBuilder.superiorObjectClasses(superiorClasses)
-                         .type(ocType);
-                return ocBuilder.addToSchema(overwrite);
             }
+
+            ocType = ocType != null ? ocType : STRUCTURAL;
+            if (ocType == STRUCTURAL && superiorClasses.isEmpty()) {
+                superiorClasses = singleton(TOP_OBJECTCLASS_NAME);
+            }
+            ocBuilder.superiorObjectClasses(superiorClasses)
+                     .type(ocType);
+            return ocBuilder.addToSchema(overwrite);
         } catch (final DecodeException e) {
             throw new LocalizedIllegalArgumentException(
                 ERR_ATTR_SYNTAX_OBJECTCLASS_INVALID1.get(definition, e.getMessageObject()), e.getCause());

--
Gitblit v1.10.0