X-Git-Url: http://git.argeo.org/?p=lgpl%2Fargeo-commons.git;a=blobdiff_plain;f=org.argeo.cms%2Fsrc%2Forg%2Fargeo%2Fcms%2Fosgi%2Fuseradmin%2FLdifUser.java;fp=org.argeo.cms%2Fsrc%2Forg%2Fargeo%2Fcms%2Fosgi%2Fuseradmin%2FLdifUser.java;h=de383bde8a4f46a726f1ed2a1906f60047c434e4;hp=e48869a0113cc149f4bb59d48414457f5fa9bbc6;hb=654cb2ca43dd4513a4d6a5bbe81762eaf6675496;hpb=a00a744d8ada0bbbeadc2b99fa56033856506e68 diff --git a/org.argeo.cms/src/org/argeo/cms/osgi/useradmin/LdifUser.java b/org.argeo.cms/src/org/argeo/cms/osgi/useradmin/LdifUser.java index e48869a01..de383bde8 100644 --- a/org.argeo.cms/src/org/argeo/cms/osgi/useradmin/LdifUser.java +++ b/org.argeo.cms/src/org/argeo/cms/osgi/useradmin/LdifUser.java @@ -2,12 +2,14 @@ package org.argeo.cms.osgi.useradmin; import javax.naming.ldap.LdapName; -import org.argeo.api.cms.directory.CmsUser; +import org.argeo.api.acr.ldap.LdapAttr; +import org.argeo.cms.auth.UserAdminUtils; import org.argeo.cms.directory.ldap.AbstractLdapDirectory; import org.argeo.cms.directory.ldap.DefaultLdapEntry; +import org.argeo.cms.util.LangUtils; /** Directory user implementation */ -class LdifUser extends DefaultLdapEntry implements CmsUser { +class LdifUser extends DefaultLdapEntry implements CmsOsgiUser { LdifUser(AbstractLdapDirectory userAdmin, LdapName dn) { super(userAdmin, dn); } @@ -22,4 +24,15 @@ class LdifUser extends DefaultLdapEntry implements CmsUser { return USER; } + public String getDisplayName() { + String dName = getPropertyAsString(LdapAttr.displayName); + if (LangUtils.isEmpty(dName)) + dName = getPropertyAsString(LdapAttr.cn); + if (LangUtils.isEmpty(dName)) + dName = getPropertyAsString(LdapAttr.uid); + if (LangUtils.isEmpty(dName)) + dName = UserAdminUtils.getUserLocalId(getName()); + return dName; + } + }