X-Git-Url: https://git.argeo.org/?a=blobdiff_plain;f=org.argeo.cms%2Fsrc%2Forg%2Fargeo%2Fcms%2Finternal%2Fauth%2FCmsUserManagerImpl.java;h=84562ebd16660a860df397778421037581f9ba64;hb=e168383bac50637131fef8c41e119db7eb2284a7;hp=19136606da492a3f5d6029bc5f526a5907aa03fd;hpb=b71546ddc74d6ca49d252806aafd491c75dfe1fb;p=lgpl%2Fargeo-commons.git diff --git a/org.argeo.cms/src/org/argeo/cms/internal/auth/CmsUserManagerImpl.java b/org.argeo.cms/src/org/argeo/cms/internal/auth/CmsUserManagerImpl.java index 19136606d..84562ebd1 100644 --- a/org.argeo.cms/src/org/argeo/cms/internal/auth/CmsUserManagerImpl.java +++ b/org.argeo.cms/src/org/argeo/cms/internal/auth/CmsUserManagerImpl.java @@ -17,6 +17,7 @@ import java.util.LinkedHashMap; import java.util.List; import java.util.Map; import java.util.Set; +import java.util.TreeSet; import java.util.UUID; import javax.naming.InvalidNameException; @@ -229,7 +230,7 @@ public class CmsUserManagerImpl implements CmsUserManager { Map dns = new HashMap(); for (UserDirectory userDirectory : userDirectories.keySet()) { Boolean readOnly = userDirectory.isReadOnly(); - String baseDn = userDirectory.getBaseDn().toString(); + String baseDn = userDirectory.getBasePath(); if (onlyWritable && readOnly) continue; @@ -243,6 +244,12 @@ public class CmsUserManagerImpl implements CmsUserManager { return dns; } + public Set getUserDirectories() { + TreeSet res = new TreeSet<>((o1, o2) -> o1.getBasePath().compareTo(o2.getBasePath())); + res.addAll(userDirectories.keySet()); + return res; + } + public String buildDistinguishedName(String localId, String baseDn, int type) { Map dns = getKnownBaseDns(true); Dictionary props = UserAdminConf.uriAsProperties(dns.get(baseDn));