package com.tibco.as.spacebar.ui.adapter; import java.util.ArrayList; import java.util.List; import java.util.Map; import org.eclipse.ui.views.properties.IPropertyDescriptor; import org.eclipse.ui.views.properties.IPropertySource; import org.eclipse.ui.views.properties.PropertyDescriptor; import com.tibco.as.util.Property; import com.tibco.as.spacebar.ui.SpaceBarPlugin; import com.tibco.as.spacebar.ui.model.Space; public class SpacePropertySource implements IPropertySource { private Space space; private Map<Property, List<Property>> properties; public SpacePropertySource(Space space) { this.space = space; this.properties = SpaceBarPlugin.getDefault() .getSpaceDefProperties(); } @Override public IPropertyDescriptor[] getPropertyDescriptors() { List<IPropertyDescriptor> descriptors = new ArrayList<IPropertyDescriptor>(); for (Property label : properties.keySet()) { String displayName = label.getDisplayName().getValue(); descriptors.add(new PropertyDescriptor(label, displayName)); } return descriptors.toArray(new IPropertyDescriptor[descriptors.size()]); } @Override public Object getPropertyValue(Object name) { return new SpacePropertyGroup(space.getSpaceDef(), properties.get(name)); } @Override public Object getEditableValue() { return null; } @Override public boolean isPropertySet(Object id) { return false; } @Override public void resetPropertyValue(Object id) { } @Override public void setPropertyValue(Object id, Object value) { } }