-
- /** returns the local name of the current connected user */
- public final static String getUsername(UserAdmin userAdmin) {
- LdapName dn = getLdapName();
- return getUsername(getUser(userAdmin, dn));
- }
-
- public final static boolean isCurrentUser(User user) {
- String userName = getProperty(user, LdifName.dn.name());
- try {
- LdapName selfUserName = UiAdminUtils.getLdapName();
- LdapName userLdapName = new LdapName(userName);
- if (userLdapName.equals(selfUserName))
- return true;
- else
- return false;
- } catch (InvalidNameException e) {
- throw new ArgeoException("User " + user + " has an unvalid dn: "
- + userName, e);
- }
- }
-
- public final static LdapName getLdapName() {
- Subject subject = Subject.getSubject(AccessController.getContext());
- String name = subject.getPrincipals(X500Principal.class).iterator()
- .next().toString();
- LdapName dn;
- try {
- dn = new LdapName(name);
- } catch (InvalidNameException e) {
- throw new ArgeoException("Invalid user dn " + name, e);
- }
- return dn;
- }
-
- public final static User getUser(UserAdmin userAdmin, LdapName dn) {
- User user = userAdmin.getUser(LdifName.dn.name(), dn.toString());
- return user;
- }
-
- public final static String getUsername(User user) {
- String cn = getProperty(user, LdifName.dn.name());
- if (isEmpty(cn))
- cn = getProperty(user, LdifName.uid.name());
- return cn;
- }
-
- public final static String getProperty(Role role, String key) {
- Object obj = role.getProperties().get(key);
- if (obj != null)
- return (String) obj;
- else
- return "";
- }
-
- public final static String getDefaultCn(String firstName, String lastName) {
- return (firstName.trim() + " " + lastName.trim() + " ").trim();
- }
-