X-Git-Url: https://git.argeo.org/?a=blobdiff_plain;f=org.argeo.enterprise%2Fsrc%2Forg%2Fargeo%2Fosgi%2Fuseradmin%2FLdifUserAdmin.java;h=aab96dd7ad4cf7c319e34da4fe1c15a9517c003e;hb=340143248684eb5fd4d45f7924b9afa3442cd86c;hp=8ec967b7007a73c8875e557b6e8ecee6c0305105;hpb=db7aecc7170c024e0e39135cf6b8aa6ce7569ccb;p=lgpl%2Fargeo-commons.git diff --git a/org.argeo.enterprise/src/org/argeo/osgi/useradmin/LdifUserAdmin.java b/org.argeo.enterprise/src/org/argeo/osgi/useradmin/LdifUserAdmin.java index 8ec967b70..aab96dd7a 100644 --- a/org.argeo.enterprise/src/org/argeo/osgi/useradmin/LdifUserAdmin.java +++ b/org.argeo.enterprise/src/org/argeo/osgi/useradmin/LdifUserAdmin.java @@ -8,6 +8,7 @@ import java.io.FileOutputStream; import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; +import java.net.URI; import java.util.ArrayList; import java.util.Dictionary; import java.util.HashSet; @@ -17,6 +18,7 @@ import java.util.Set; import java.util.SortedMap; import java.util.TreeMap; +import javax.naming.NameNotFoundException; import javax.naming.NamingEnumeration; import javax.naming.directory.Attributes; import javax.naming.ldap.LdapName; @@ -41,11 +43,16 @@ public class LdifUserAdmin extends AbstractUserDirectory { } public LdifUserAdmin(Dictionary properties) { - super(properties); + super(null, properties); } + public LdifUserAdmin(URI uri, Dictionary properties) { + super(uri, properties); + } + + @Deprecated public LdifUserAdmin(InputStream in) { - super(new Hashtable()); + super(null, new Hashtable()); load(in); } @@ -148,14 +155,16 @@ public class LdifUserAdmin extends AbstractUserDirectory { groups = null; } - protected DirectoryUser daoGetRole(LdapName key) { + @Override + protected DirectoryUser daoGetRole(LdapName key) throws NameNotFoundException { if (groups.containsKey(key)) return groups.get(key); if (users.containsKey(key)) return users.get(key); - return null; + throw new NameNotFoundException(key + " not persisted"); } + @Override protected Boolean daoHasRole(LdapName dn) { return users.containsKey(dn) || groups.containsKey(dn); }