X-Git-Url: https://git.argeo.org/?a=blobdiff_plain;f=org.argeo.cms%2Fsrc%2Forg%2Fargeo%2Fcms%2Fauth%2FUserAdminUtils.java;h=eed38cc3285aa17de5ca6563f556c0f0e21027c3;hb=6862cee138ca8ed2bbf6427b20b389a56b5df32f;hp=326b0f4da3bc62ee6486e3b556397473b8479433;hpb=b7c2f2cc2f6f74762031567e9e636ff277ebc7c7;p=lgpl%2Fargeo-commons.git diff --git a/org.argeo.cms/src/org/argeo/cms/auth/UserAdminUtils.java b/org.argeo.cms/src/org/argeo/cms/auth/UserAdminUtils.java index 326b0f4da..eed38cc32 100644 --- a/org.argeo.cms/src/org/argeo/cms/auth/UserAdminUtils.java +++ b/org.argeo.cms/src/org/argeo/cms/auth/UserAdminUtils.java @@ -6,9 +6,8 @@ import javax.naming.InvalidNameException; import javax.naming.ldap.LdapName; import javax.naming.ldap.Rdn; -import org.argeo.cms.CmsException; -import org.argeo.naming.LdapAttrs; -import org.argeo.node.NodeConstants; +import org.argeo.api.cms.CmsConstants; +import org.argeo.util.naming.LdapAttrs; import org.osgi.service.useradmin.Role; import org.osgi.service.useradmin.User; import org.osgi.service.useradmin.UserAdmin; @@ -59,7 +58,7 @@ public class UserAdminUtils { || last.getType().toLowerCase().equals(LdapAttrs.cn.name())) return (String) last.getValue(); else - throw new CmsException("Cannot retrieve user local id, non valid dn: " + dn); + throw new IllegalArgumentException("Cannot retrieve user local id, non valid dn: " + dn); } /** @@ -129,16 +128,16 @@ public class UserAdminUtils { try { return new LdapName(dn); } catch (InvalidNameException e) { - throw new CmsException("Cannot parse LDAP name " + dn, e); + throw new IllegalArgumentException("Cannot parse LDAP name " + dn, e); } } /** Simply retrieves a display name of the relevant domain */ public final static String getDomainName(User user) { String dn = user.getName(); - if (dn.endsWith(NodeConstants.ROLES_BASEDN)) + if (dn.endsWith(CmsConstants.ROLES_BASEDN)) return "System roles"; - if (dn.endsWith(NodeConstants.TOKENS_BASEDN)) + if (dn.endsWith(CmsConstants.TOKENS_BASEDN)) return "Tokens"; try { // FIXME deal with non-DC @@ -148,7 +147,8 @@ public class UserAdminUtils { int i = 0; loop: while (i < rdns.size()) { Rdn currrRdn = rdns.get(i); - if (!LdapAttrs.dc.name().equals(currrRdn.getType())) + if (LdapAttrs.uid.name().equals(currrRdn.getType()) || LdapAttrs.cn.name().equals(currrRdn.getType()) + || LdapAttrs.ou.name().equals(currrRdn.getType())) break loop; else { String currVal = (String) currrRdn.getValue(); @@ -158,7 +158,7 @@ public class UserAdminUtils { } return dname; } catch (InvalidNameException e) { - throw new CmsException("Unable to get domain name for " + dn, e); + throw new IllegalArgumentException("Unable to get domain name for " + dn, e); } }