package org.jboss.tools.smooks.configuration.editors.javabean12; import java.util.Collection; import org.eclipse.jface.viewers.LabelProvider; import org.eclipse.swt.graphics.Image; import org.jboss.tools.smooks.configuration.SmooksConfigurationActivator; import org.jboss.tools.smooks.configuration.editors.GraphicsConstants; public class JavabeanlabelProvider extends LabelProvider { public Image getJavaObjectImage() { return SmooksConfigurationActivator.getDefault().getImageRegistry().get( GraphicsConstants.IMAGE_JAVA_OBJECT); } public Image getJavaAttributeImage() { return SmooksConfigurationActivator.getDefault().getImageRegistry().get( GraphicsConstants.IMAGE_JAVA_ATTRIBUTE); } public String getText(Object element) { if (element instanceof JavaBeanModel) { String name = ((JavaBeanModel) element).getName(); if (name == null) name = "<nonamed>"; //$NON-NLS-1$ Object error = ((JavaBeanModel) element).getError(); if (error != null) { name = name + " " + "<" + error.toString() + ">"; //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ return name; } Class<?> typeRef = ((JavaBeanModel) element).getBeanClass(); String typeStr = ""; //$NON-NLS-1$ if (typeRef != null) { if (typeRef.isArray()) { typeRef = typeRef.getComponentType(); typeStr = typeRef.getName() + "[]"; //$NON-NLS-1$ } else { typeStr = typeRef.getName(); } } if (!typeStr.equals("")) { //$NON-NLS-1$ name = name + " " + typeStr; //$NON-NLS-1$ } return name; } return ""; //$NON-NLS-1$ } @Override public Image getImage(Object element) { if (element instanceof JavaBeanModel) { Object error = ((JavaBeanModel) element).getError(); if (error != null) { return SmooksConfigurationActivator.getDefault().getImageRegistry().get( GraphicsConstants.IMAGE_ERROR); } if (((JavaBeanModel) element).isPrimitive()) { return this.getJavaAttributeImage(); } else { Class<?> typeRef = ((JavaBeanModel) element).getBeanClass(); if (typeRef != null) { if (typeRef.isArray()) { return SmooksConfigurationActivator.getDefault().getImageRegistry().get( GraphicsConstants.IMAGE_JAVA_ARRAY); } if (Collection.class.isAssignableFrom(typeRef)) { return SmooksConfigurationActivator.getDefault().getImageRegistry().get( GraphicsConstants.IMAGE_JAVA_COLLECTION); } if (typeRef.isInterface()) { return SmooksConfigurationActivator.getDefault().getImageRegistry().get( GraphicsConstants.IMAGE_JAVA_INTERFACE); } } return this.getJavaObjectImage(); } } return super.getImage(element); } }