2 * Copyright (C) 2007 EDIT
3 * European Distributed Institute of Taxonomy
4 * http://www.e-taxonomy.eu
6 * The contents of this file are subject to the Mozilla Public License Version 1.1
7 * See LICENSE.TXT at the top of this package for the full license terms.
10 package eu
.etaxonomy
.taxeditor
.bulkeditor
.referencingobjects
;
12 import org
.apache
.commons
.lang
.StringUtils
;
13 import org
.apache
.log4j
.Logger
;
14 import org
.eclipse
.jface
.viewers
.ITableLabelProvider
;
15 import org
.eclipse
.jface
.viewers
.LabelProvider
;
16 import org
.eclipse
.swt
.graphics
.Image
;
18 import eu
.etaxonomy
.cdm
.hibernate
.HibernateProxyHelper
;
19 import eu
.etaxonomy
.cdm
.model
.common
.CdmBase
;
20 import eu
.etaxonomy
.taxeditor
.bulkeditor
.l10n
.Messages
;
21 import eu
.etaxonomy
.taxeditor
.model
.DescriptionHelper
;
24 * Requires an <code>IReferencingObjectsService</code> to translate the label
25 * elements into displayable text.
31 public class ReferencingObjectsLabelProvider
extends LabelProvider
implements ITableLabelProvider
{
32 private static final Logger logger
= Logger
33 .getLogger(ReferencingObjectsLabelProvider
.class);
36 * <p>Constructor for ReferencingObjectsLabelProvider.</p>
38 public ReferencingObjectsLabelProvider() {
44 public Image
getColumnImage(Object element
, int columnIndex
) {
50 public String
getColumnText(Object element
, int columnIndex
) {
53 Object deproxiedElement
= HibernateProxyHelper
.deproxy(element
);
55 if (columnIndex
== 0) {
56 text
= DescriptionHelper
.getObjectClassname(deproxiedElement
);
57 }else if (columnIndex
== 1) {
58 text
= DescriptionHelper
.getObjectDescription(deproxiedElement
);
59 }else if (columnIndex
== 2) {
60 if(element
instanceof CdmBase
){
61 text
= ((CdmBase
) element
).getUuid().toString();
63 }else if (columnIndex
== 3) {
64 if(element
instanceof CdmBase
){
65 text
= ((CdmBase
) element
).getId() + ""; //$NON-NLS-1$
69 return (StringUtils
.isBlank(text
)) ? Messages
.ReferencingObjectsLabelProvider_No_description_available
: text
;