View Javadoc
1   package org.argeo.people.ui.providers;
2   
3   import javax.jcr.Node;
4   import javax.jcr.Property;
5   
6   import org.argeo.connect.resources.ResourcesService;
7   import org.argeo.connect.util.ConnectJcrUtils;
8   import org.argeo.connect.util.ConnectUtils;
9   import org.argeo.eclipse.ui.EclipseUiUtils;
10  import org.argeo.people.PeopleNames;
11  import org.argeo.people.PeopleService;
12  import org.argeo.people.ui.PeopleUiSnippets;
13  import org.eclipse.jface.viewers.LabelProvider;
14  
15  /** Label provider for organisations single column lists */
16  public class OrgListLabelProvider extends LabelProvider implements PeopleNames {
17  	private static final long serialVersionUID = -579265588183299317L;
18  
19  	private final ResourcesService resourcesService;
20  	private final PeopleService peopleService;
21  
22  	/**
23  	 * 
24  	 * @param resourcesService
25  	 * @param peopleService
26  	 */
27  	public OrgListLabelProvider(ResourcesService resourcesService, PeopleService peopleService) {
28  		this.resourcesService = resourcesService;
29  		this.peopleService = peopleService;
30  	}
31  
32  	@Override
33  	public String getText(Object element) {
34  		Node orga = (Node) element;
35  		StringBuilder builder = new StringBuilder();
36  		builder.append("<b>");
37  		builder.append(ConnectJcrUtils.get(orga, Property.JCR_TITLE));
38  		builder.append("</b> ");
39  
40  		String local = PeopleUiSnippets.getLocalisationInfo(resourcesService, peopleService, orga);
41  		if (EclipseUiUtils.notEmpty(local))
42  			builder.append(local);
43  		String result = ConnectUtils.replaceAmpersand(builder.toString());
44  		return result;
45  	}
46  }