package org.activiti.designer.util.editor; import java.util.ArrayList; import java.util.List; import org.activiti.bpmn.model.Artifact; import org.activiti.bpmn.model.BpmnModel; import org.activiti.bpmn.model.FlowElement; import org.activiti.bpmn.model.Process; import org.apache.commons.lang.StringUtils; import org.eclipse.core.resources.IFile; import org.eclipse.graphiti.features.IFeatureProvider; public class Bpmn2MemoryModel { protected IFeatureProvider featureProvider; protected IFile modelFile; protected List<FlowElement> clipboard = new ArrayList<FlowElement>(); protected BpmnModel bpmnModel; public Bpmn2MemoryModel(IFeatureProvider featureProvider, IFile modelFile) { this.featureProvider = featureProvider; this.modelFile = modelFile; } public void addMainProcess() { Process process = new Process(); process.setName("My process"); process.setId("myProcess"); bpmnModel.addProcess(process); } public FlowElement getFlowElement(String ref) { FlowElement element = null; if (bpmnModel != null && StringUtils.isNotEmpty(ref)) { element = bpmnModel.getFlowElement(ref); } return element; } public Artifact getArtifact(String ref) { Artifact artifact = null; if (bpmnModel != null && StringUtils.isNotEmpty(ref)) { artifact = bpmnModel.getArtifact(ref); } return artifact; } public IFeatureProvider getFeatureProvider() { return featureProvider; } public void setFeatureProvider(IFeatureProvider featureProvider) { this.featureProvider = featureProvider; } public List<FlowElement> getClipboard() { return clipboard; } public void setClipboard(List<FlowElement> clipboard) { this.clipboard = clipboard; } public IFile getModelFile() { return modelFile; } public BpmnModel getBpmnModel() { return bpmnModel; } public void setBpmnModel(BpmnModel bpmnModel) { this.bpmnModel = bpmnModel; } }