private static List<String> extractProcessDefinitionKeys(List<String> deployableFileNames) { ArrayList<String> keys = new ArrayList<String>(); for (String file : deployableFileNames) { if(file.endsWith(".bpmn") || file.endsWith(".bpmn20.xml")) { BpmnModelInstance modelInstance = Bpmn.readModelFromFile(new File(file)); Collection<Process> processes = modelInstance.getModelElementsByType(Process.class); for (Process process : processes) { if(process.isExecutable()) { keys.add(process.getId()); } } } } return keys; }
protected Set<String> retrieveProcessKeysFromResources(Map<String, ResourceEntity> resources) { Set<String> keys = new HashSet<String>(); for (ResourceEntity resource : resources.values()) { if (isBpmnResource(resource)) { ByteArrayInputStream byteStream = new ByteArrayInputStream(resource.getBytes()); BpmnModelInstance model = Bpmn.readModelFromStream(byteStream); for (Process process : model.getDefinitions().getChildElementsByType(Process.class)) { keys.add(process.getId()); } } else if (isCmmnResource(resource)) { ByteArrayInputStream byteStream = new ByteArrayInputStream(resource.getBytes()); CmmnModelInstance model = Cmmn.readModelFromStream(byteStream); for (Case cmmnCase : model.getDefinitions().getCases()) { keys.add(cmmnCase.getId()); } } } return keys; }
protected Set<String> retrieveProcessKeysFromResources(Map<String, ResourceEntity> resources) { Set<String> keys = new HashSet<String>(); for (ResourceEntity resource : resources.values()) { if (isBpmnResource(resource)) { ByteArrayInputStream byteStream = new ByteArrayInputStream(resource.getBytes()); BpmnModelInstance model = Bpmn.readModelFromStream(byteStream); for (Process process : model.getDefinitions().getChildElementsByType(Process.class)) { keys.add(process.getId()); } } else if (isCmmnResource(resource)) { ByteArrayInputStream byteStream = new ByteArrayInputStream(resource.getBytes()); CmmnModelInstance model = Cmmn.readModelFromStream(byteStream); for (Case cmmnCase : model.getDefinitions().getCases()) { keys.add(cmmnCase.getId()); } } } return keys; }
private void assertModelInstance() { BpmnModelInstance modelInstance = ModelExecutionContextTaskListener.modelInstance; assertNotNull(modelInstance); Collection<ModelElementInstance> events = modelInstance.getModelElementsByType(modelInstance.getModel().getType(Event.class)); assertEquals(2, events.size()); Collection<ModelElementInstance> tasks = modelInstance.getModelElementsByType(modelInstance.getModel().getType(Task.class)); assertEquals(1, tasks.size()); Process process = (Process) modelInstance.getDefinitions().getRootElements().iterator().next(); assertEquals(PROCESS_ID, process.getId()); assertTrue(process.isExecutable()); }
public void testJavaDelegateModelExecutionContext() { deploy(); runtimeService.startProcessInstanceByKey(PROCESS_ID); BpmnModelInstance modelInstance = ModelExecutionContextServiceTask.modelInstance; assertNotNull(modelInstance); Model model = modelInstance.getModel(); Collection<ModelElementInstance> events = modelInstance.getModelElementsByType(model.getType(Event.class)); assertEquals(2, events.size()); Collection<ModelElementInstance> tasks = modelInstance.getModelElementsByType(model.getType(Task.class)); assertEquals(1, tasks.size()); Process process = (Process) modelInstance.getDefinitions().getRootElements().iterator().next(); assertEquals(PROCESS_ID, process.getId()); assertTrue(process.isExecutable()); ServiceTask serviceTask = ModelExecutionContextServiceTask.serviceTask; assertNotNull(serviceTask); assertEquals(ModelExecutionContextServiceTask.class.getName(), serviceTask.getCamundaClass()); }
/** * Map for getting bpmn reference by process id * * @param paths * @return */ private static Map<String, String> createProcessIdToPathMap(final Set<String> paths) { final Map<String, String> keyToPathMap = new HashMap<String, String>(); for (final String path : paths) { // read bpmn file BpmnModelInstance modelInstance = null; try { modelInstance = Bpmn.readModelFromFile(new File(ConfigConstants.BASEPATH + path)); } catch (final BpmnModelException ex) { throw new RuntimeException("bpmn model couldn't be read", ex); } // if bpmn file could read if (modelInstance != null) { // find process final Collection<Process> processes = modelInstance.getModelElementsByType(Process.class); if (processes != null) { for (final Process process : processes) { // save path for each process keyToPathMap.put(process.getId(), path); } } } } return keyToPathMap; }
protected Set<String> retrieveProcessKeysFromResources(Map<String, ResourceEntity> resources) { Set<String> keys = new HashSet<String>(); for (ResourceEntity resource : resources.values()) { if (isBpmnResource(resource)) { ByteArrayInputStream byteStream = new ByteArrayInputStream(resource.getBytes()); BpmnModelInstance model = Bpmn.readModelFromStream(byteStream); for (Process process : model.getDefinitions().getChildElementsByType(Process.class)) { keys.add(process.getId()); } } else if (isCmmnResource(resource)) { ByteArrayInputStream byteStream = new ByteArrayInputStream(resource.getBytes()); CmmnModelInstance model = Cmmn.readModelFromStream(byteStream); for (Case cmmnCase : model.getDefinitions().getCases()) { keys.add(cmmnCase.getId()); } } } return keys; }
final IGraph graph = new Graph(process.getId()); final Collection<FlowElement> elements = process.getFlowElements(); final Collection<SequenceFlow> flows = new ArrayList<SequenceFlow>();
private void assertModelInstance() { BpmnModelInstance modelInstance = ModelExecutionContextTaskListener.modelInstance; assertNotNull(modelInstance); Collection<ModelElementInstance> events = modelInstance.getModelElementsByType(modelInstance.getModel().getType(Event.class)); assertEquals(2, events.size()); Collection<ModelElementInstance> tasks = modelInstance.getModelElementsByType(modelInstance.getModel().getType(Task.class)); assertEquals(1, tasks.size()); Process process = (Process) modelInstance.getDefinitions().getRootElements().iterator().next(); assertEquals(PROCESS_ID, process.getId()); assertTrue(process.isExecutable()); }
bpmn.getModelElementsByType(bpmn.getModel().getType(Process.class)).forEach(instance -> tweakedProcessKeys.add((((Process) instance).getId())));
public void testJavaDelegateModelExecutionContext() { deploy(); runtimeService.startProcessInstanceByKey(PROCESS_ID); BpmnModelInstance modelInstance = ModelExecutionContextServiceTask.modelInstance; assertNotNull(modelInstance); Model model = modelInstance.getModel(); Collection<ModelElementInstance> events = modelInstance.getModelElementsByType(model.getType(Event.class)); assertEquals(2, events.size()); Collection<ModelElementInstance> tasks = modelInstance.getModelElementsByType(model.getType(Task.class)); assertEquals(1, tasks.size()); Process process = (Process) modelInstance.getDefinitions().getRootElements().iterator().next(); assertEquals(PROCESS_ID, process.getId()); assertTrue(process.isExecutable()); ServiceTask serviceTask = ModelExecutionContextServiceTask.serviceTask; assertNotNull(serviceTask); assertEquals(ModelExecutionContextServiceTask.class.getName(), serviceTask.getCamundaClass()); }