View Javadoc
1   package org.argeo.people.web.providers;
2   
3   import javax.jcr.Node;
4   
5   import org.argeo.connect.resources.ResourcesService;
6   import org.argeo.connect.util.ConnectJcrUtils;
7   import org.argeo.connect.util.ConnectUtils;
8   import org.argeo.people.PeopleService;
9   import org.argeo.people.PeopleTypes;
10  import org.argeo.people.web.PeopleWebConstants;
11  import org.eclipse.jface.viewers.ILabelProvider;
12  import org.eclipse.jface.viewers.ILabelProviderListener;
13  import org.eclipse.swt.graphics.Image;
14  
15  /** Simple label provider for Org and Person Viewers */
16  public class EntitySingleLineLabelProvider implements ILabelProvider {
17  
18  	private static final long serialVersionUID = 1L;
19  	private PeopleService peopleService;
20  
21  	private final PersonOverviewLP personOLP;
22  	private final OrgOverviewLP orgOLP;
23  
24  	public EntitySingleLineLabelProvider(ResourcesService resourceService, PeopleService peopleService) {
25  		this.peopleService = peopleService;
26  		this.personOLP = new PersonOverviewLP(resourceService, peopleService,
27  				PeopleWebConstants.OVERVIEW_TYPE_SINGLE_LINE_LIST);
28  		orgOLP = new OrgOverviewLP(resourceService, peopleService, PeopleWebConstants.OVERVIEW_TYPE_SINGLE_LINE_LIST);
29  	}
30  
31  	public String getText(Object element) {
32  		Node entity = (Node) element;
33  		if (ConnectJcrUtils.isNodeType(entity, PeopleTypes.PEOPLE_PERSON))
34  			return personOLP.getText(entity);
35  		else if (ConnectJcrUtils.isNodeType(entity, PeopleTypes.PEOPLE_ORG))
36  			return orgOLP.getText(entity);
37  		else {
38  			StringBuilder builder = new StringBuilder();
39  			builder.append("<b>");
40  			builder.append(peopleService.getDisplayName(entity));
41  			builder.append("</b>");
42  			return ConnectUtils.replaceAmpersand(builder.toString());
43  		}
44  	}
45  
46  	@Override
47  	public void addListener(ILabelProviderListener listener) {
48  	}
49  
50  	@Override
51  	public void dispose() {
52  	}
53  
54  	@Override
55  	public boolean isLabelProperty(Object element, String property) {
56  		return false;
57  	}
58  
59  	@Override
60  	public void removeListener(ILabelProviderListener listener) {
61  	}
62  
63  	@Override
64  	public Image getImage(Object element) {
65  		return null;
66  	}
67  }