]> git.argeo.org Git - lgpl/argeo-commons.git/blob - useradmin/LdifUser.java
Prepare next development cycle
[lgpl/argeo-commons.git] / useradmin / LdifUser.java
1 package org.argeo.cms.osgi.useradmin;
2
3 import javax.naming.ldap.LdapName;
4
5 import org.argeo.api.acr.ldap.LdapAttr;
6 import org.argeo.cms.auth.UserAdminUtils;
7 import org.argeo.cms.directory.ldap.AbstractLdapDirectory;
8 import org.argeo.cms.directory.ldap.DefaultLdapEntry;
9 import org.argeo.cms.util.LangUtils;
10
11 /** Directory user implementation */
12 class LdifUser extends DefaultLdapEntry implements CmsOsgiUser {
13 LdifUser(AbstractLdapDirectory userAdmin, LdapName dn) {
14 super(userAdmin, dn);
15 }
16
17 @Override
18 public String getName() {
19 return getDn().toString();
20 }
21
22 @Override
23 public int getType() {
24 return USER;
25 }
26
27 public String getDisplayName() {
28 String dName = getPropertyAsString(LdapAttr.displayName);
29 if (LangUtils.isEmpty(dName))
30 dName = getPropertyAsString(LdapAttr.cn);
31 if (LangUtils.isEmpty(dName))
32 dName = getPropertyAsString(LdapAttr.uid);
33 if (LangUtils.isEmpty(dName))
34 dName = UserAdminUtils.getUserLocalId(getName());
35 return dName;
36 }
37
38 }