diff options
Diffstat (limited to 'base/common/src/com/netscape/cmscore/dbs')
-rw-r--r-- | base/common/src/com/netscape/cmscore/dbs/DBRegistry.java | 15 |
1 files changed, 5 insertions, 10 deletions
diff --git a/base/common/src/com/netscape/cmscore/dbs/DBRegistry.java b/base/common/src/com/netscape/cmscore/dbs/DBRegistry.java index 63b00b6bf..2b6a63a62 100644 --- a/base/common/src/com/netscape/cmscore/dbs/DBRegistry.java +++ b/base/common/src/com/netscape/cmscore/dbs/DBRegistry.java @@ -457,25 +457,20 @@ public class DBRegistry implements IDBRegistry, ISubsystem { * Creates object from attribute set. */ public IDBObj createObject(LDAPAttributeSet attrs) - throws EBaseException { + throws EDBException { // map object class attribute to object LDAPAttribute attr = attrs.getAttribute("objectclass"); + if (attr == null) { + throw new EDBException(CMS.getLogMessage("CMS_DBS_MISSING_OBJECT_CLASS")); + } //CMS.debug("createObject: attrs " + attrs.toString()); attrs.remove("objectclass"); // sort the object class values - @SuppressWarnings("unchecked") - Enumeration<String> vals = attr.getStringValues(); - Vector<String> v = new Vector<String>(); - - while (vals.hasMoreElements()) { - v.addElement(vals.nextElement()); - } - String s[] = new String[v.size()]; - v.copyInto(s); + String[] s = attr.getStringValueArray(); String sorted = sortAndConcate(s).toLowerCase(); NameAndObject no = mOCldapNames.get(sorted); |