package org.activiti.designer.features;
import java.util.List;
import org.activiti.designer.ActivitiImageProvider;
import org.activiti.designer.property.extension.CustomServiceTaskContext;
import org.activiti.designer.property.extension.util.ExtensionUtil;
import org.activiti.designer.util.eclipse.ActivitiUiUtil;
import org.eclipse.emf.ecore.EObject;
import org.eclipse.graphiti.features.IFeatureProvider;
public class AddServiceTaskFeature extends AddTaskFeature {
public AddServiceTaskFeature(IFeatureProvider fp) {
super(fp);
}
protected String getIcon(EObject bo) {
if (ExtensionUtil.isCustomServiceTask(bo)) {
final List<CustomServiceTaskContext> customServiceTaskContexts = ExtensionUtil.getCustomServiceTaskContexts(ActivitiUiUtil
.getProjectFromDiagram(getDiagram()));
for (CustomServiceTaskContext customServiceTaskContext : customServiceTaskContexts) {
if (customServiceTaskContext.getServiceTask().getId().equals(ExtensionUtil.getCustomServiceTaskId(bo))) {
return customServiceTaskContext.getShapeImageKey();
}
}
}
return ActivitiImageProvider.IMG_SERVICETASK;
}
}