Multiple user referentials working with IPA.
[lgpl/argeo-commons.git] / org.argeo.util / src / org / argeo / osgi / useradmin / OsUserDirectory.java
index 466563a4d1a17bdad5a0ef2651bd944cae05b7dc..5d7e97ddeea487975ebd64609f63167a0720656d 100644 (file)
@@ -6,7 +6,6 @@ import java.util.List;
 import javax.naming.NameNotFoundException;
 import javax.naming.NamingException;
 import javax.naming.directory.Attributes;
-import javax.naming.directory.BasicAttributes;
 import javax.naming.ldap.LdapName;
 
 import org.argeo.util.directory.HierarchyUnit;
@@ -27,9 +26,9 @@ public class OsUserDirectory extends AbstractLdapDirectoryDao {
                try {
                        osUserDn = new LdapName(LdapAttrs.uid.name() + "=" + osUsername + "," + directory.getUserBaseRdn() + ","
                                        + directory.getBaseDn());
-                       Attributes attributes = new BasicAttributes();
-                       attributes.put(LdapAttrs.uid.name(), osUsername);
-                       osUser = newUser(osUserDn, attributes);
+//                     Attributes attributes = new BasicAttributes();
+//                     attributes.put(LdapAttrs.uid.name(), osUsername);
+                       osUser = newUser(osUserDn);
                } catch (NamingException e) {
                        throw new IllegalStateException("Cannot create system user", e);
                }
@@ -41,10 +40,15 @@ public class OsUserDirectory extends AbstractLdapDirectoryDao {
        }
 
        @Override
-       public Boolean entryExists(LdapName dn) {
+       public boolean entryExists(LdapName dn) {
                return osUserDn.equals(dn);
        }
 
+       @Override
+       public boolean checkConnection() {
+               return true;
+       }
+
        @Override
        public LdapEntry doGetEntry(LdapName key) throws NameNotFoundException {
                if (osUserDn.equals(key))
@@ -86,13 +90,13 @@ public class OsUserDirectory extends AbstractLdapDirectoryDao {
        @Override
        public void init() {
                // TODO Auto-generated method stub
-               
+
        }
 
        @Override
        public void destroy() {
                // TODO Auto-generated method stub
-               
+
        }
 
        @Override
@@ -103,5 +107,5 @@ public class OsUserDirectory extends AbstractLdapDirectoryDao {
                        throw new IllegalStateException(name + " doe not exist in " + getDirectory().getBaseDn(), e);
                }
        }
-       
+
 }