View Javadoc
1   package org.argeo.cms.ui.workbench.internal.useradmin.providers;
2   
3   import org.argeo.cms.ui.workbench.internal.useradmin.SecurityAdminImages;
4   import org.argeo.cms.util.UserAdminUtils;
5   import org.argeo.naming.LdapAttrs;
6   import org.argeo.node.NodeConstants;
7   import org.argeo.node.NodeInstance;
8   import org.eclipse.swt.graphics.Image;
9   import org.osgi.service.useradmin.Role;
10  import org.osgi.service.useradmin.User;
11  
12  /** Provide a bundle specific image depending on the current user type */
13  public class RoleIconLP extends UserAdminAbstractLP {
14  	private static final long serialVersionUID = 6550449442061090388L;
15  
16  	@Override
17  	public String getText(User user) {
18  		return "";
19  	}
20  
21  	@Override
22  	public Image getImage(Object element) {
23  		User user = (User) element;
24  		String dn = user.getName();
25  		if (dn.endsWith(NodeConstants.ROLES_BASEDN))
26  			return SecurityAdminImages.ICON_ROLE;
27  		else if (user.getType() == Role.GROUP) {
28  			String businessCategory = UserAdminUtils.getProperty(user, LdapAttrs.businessCategory);
29  			if (businessCategory != null && businessCategory.equals(NodeInstance.WORKGROUP))
30  				return SecurityAdminImages.ICON_WORKGROUP;
31  			return SecurityAdminImages.ICON_GROUP;
32  		} else
33  			return SecurityAdminImages.ICON_USER;
34  	}
35  }