public void restoreOriginalModels() { LOG.info("Starting to restore models after demo data generation"); try { DeploymentBuilder deploymentBuilder = engine.getRepositoryService().createDeployment(); for (Entry<String, String> model : originalModels.entrySet()) { deploymentBuilder.addInputStream(model.getKey(), new ByteArrayInputStream(model.getValue().getBytes("UTF-8"))); } Deployment deployment = deploymentBuilder.deploy(); if (originalProcessApplication != null) { engine.getManagementService().registerProcessApplication(deployment.getId(), originalProcessApplication); } LOG.info("Restored original modes after demo data generation with deployment " + deployment.getId()); } catch (Exception ex) { throw new RuntimeException("Could not restore original models", ex); } }
public String deployTweakedModels() { LOG.info("Starting deployment of tweaked models for demo data generation"); try { DeploymentBuilder deploymentBuilder = engine.getRepositoryService().createDeployment(); for (Entry<String, String> model : tweakedModels.entrySet()) { deploymentBuilder.addInputStream(model.getKey(), new ByteArrayInputStream(model.getValue().getBytes("UTF-8"))); } Deployment deployment = deploymentBuilder.deploy(); if (simulatingProcessApplication != null) { engine.getManagementService().registerProcessApplication(deployment.getId(), simulatingProcessApplication); } LOG.info("Deployed tweaked modes for demo data generation with deployment " + deployment.getId()); return deployment.getId(); } catch (Exception ex) { throw new RuntimeException("Could not deploy tweaked process definition", ex); } }
public void addAdditionalModels(String... additionalModelKeys) { for (String key : additionalModelKeys) { ProcessDefinition pd = engine.getRepositoryService().createProcessDefinitionQuery().processDefinitionKey(key).latestVersion().singleResult(); if (pd != null) { addBpmn(key); } else { LOG.warn("Model key '{}' is not a BPMN model - ignoring", key); } } }
ProcessDefinition processDefinition = engine.getRepositoryService().createProcessDefinitionQuery() // BpmnModelInstance bpmn = engine.getRepositoryService().getBpmnModelInstance(processDefinition.getId()); Process process = bpmn.getModelElementById(processDefinitionKey); Collection<StartEvent> startEvents = process.getChildElementsByType(StartEvent.class);