package com.tibco.as.spacebar.ui.adapter; import org.eclipse.jface.resource.ImageDescriptor; import org.eclipse.ui.model.WorkbenchAdapter; import com.tibco.as.spacebar.ui.Image; import com.tibco.as.spacebar.ui.SpaceBarPlugin; import com.tibco.as.spacebar.ui.model.Field; import com.tibco.as.spacebar.ui.model.IElement; import com.tibco.as.spacebar.ui.model.Index; import com.tibco.as.spacebar.ui.model.Indexes; import com.tibco.as.spacebar.ui.model.Metaspace; import com.tibco.as.spacebar.ui.model.Space; import com.tibco.as.spacebar.ui.model.SpaceFields; public class ElementAdapter extends WorkbenchAdapter { @Override public Object[] getChildren(Object o) { return ((IElement) o).getChildren().toArray(); } @Override public ImageDescriptor getImageDescriptor(Object object) { SpaceBarPlugin activator = SpaceBarPlugin.getDefault(); if (object instanceof Field) { return activator.getImageDescriptor(Image.FIELD); } if (object instanceof Metaspace) { Metaspace metaspace = (Metaspace) object; if (metaspace.isConnected()) { return activator.getImageDescriptor(Image.METASPACE_CONNECTED); } return activator.getImageDescriptor(Image.METASPACE_DISCONNECTED); } if (object instanceof Space) { return activator.getImageDescriptor(Image.SPACE); } if (object instanceof SpaceFields) { return activator.getImageDescriptor(Image.FIELDS); } if (object instanceof Indexes) { return activator.getImageDescriptor(Image.INDEXES); } if (object instanceof Index) { return activator.getImageDescriptor(Image.INDEX); } return null; } public String getLabel(Object o) { return ((IElement) o).getName(); } }