Add object class to new users.
[lgpl/argeo-commons.git] / org.argeo.security.core / src / org / argeo / osgi / useradmin / AbstractUserDirectory.java
index a80c1c53359640f5e024fbc7575e212b4f9a5d50..d034e2233e90edfd4a55159dd39645042570f8ae 100644 (file)
@@ -252,18 +252,19 @@ public abstract class AbstractUserDirectory implements UserAdmin {
                LdifUser newRole;
                BasicAttribute objectClass = new BasicAttribute("objectClass");
                if (type == Role.USER) {
-                       newRole = new LdifUser(this, dn, attrs);
                        objectClass.add("inetOrgPerson");
                        objectClass.add("organizationalPerson");
                        objectClass.add("person");
                        objectClass.add("top");
+                       attrs.put(objectClass);
+                       newRole = new LdifUser(this, dn, attrs);
                } else if (type == Role.GROUP) {
-                       newRole = new LdifGroup(this, dn, attrs);
                        objectClass.add("groupOfNames");
                        objectClass.add("top");
+                       attrs.put(objectClass);
+                       newRole = new LdifGroup(this, dn, attrs);
                } else
                        throw new UserDirectoryException("Unsupported type " + type);
-               newRole.getAttributes().put(objectClass);
                return newRole;
        }