public EventSubProcessBuilder eventSubProcess(String id) { // Create a subprocess, triggered by an event, and add it to modelInstance SubProcess subProcess = createChild(SubProcess.class, id); subProcess.setTriggeredByEvent(true); // Create Bpmn shape so subprocess will be drawn BpmnShape targetBpmnShape = createBpmnShape(subProcess); //find the lowest shape in the process // place event sub process underneath setEventSubProcessCoordinates(targetBpmnShape); resizeSubProcess(targetBpmnShape); // Return the eventSubProcessBuilder EventSubProcessBuilder eventSubProcessBuilder = new EventSubProcessBuilder(modelInstance, subProcess); return eventSubProcessBuilder; }
public void testInterruptingWithDurationExpressionInEventSubprocess() { // given ProcessBuilder processBuilder = Bpmn.createExecutableProcess("process"); BpmnModelInstance modelInstance = processBuilder .startEvent() .userTask() .endEvent() .done(); processBuilder.eventSubProcess() .startEvent().timerWithDuration("${duration}") .userTask("taskInSubprocess") .endEvent(); deploymentId = repositoryService.createDeployment() .addModelInstance("process.bpmn", modelInstance).deploy() .getId(); // when runtimeService.startProcessInstanceByKey("process", Variables.createVariables() .putValue("duration", "PT60S")); String jobId = managementService.createJobQuery() .singleResult() .getId(); managementService.executeJob(jobId); // then assertEquals(1, taskService.createTaskQuery().taskName("taskInSubprocess").list().size()); }
public void testNonInterruptingWithDurationExpressionInEventSubprocess() { // given ProcessBuilder processBuilder = Bpmn.createExecutableProcess("process"); BpmnModelInstance modelInstance = processBuilder .startEvent() .userTask() .endEvent().done(); processBuilder.eventSubProcess() .startEvent().interrupting(false).timerWithDuration("${duration}") .userTask("taskInSubprocess") .endEvent(); deploymentId = repositoryService.createDeployment() .addModelInstance("process.bpmn", modelInstance).deploy() .getId(); // when runtimeService.startProcessInstanceByKey("process", Variables.createVariables() .putValue("duration", "PT60S")); String jobId = managementService.createJobQuery() .singleResult() .getId(); managementService.executeJob(jobId); // then assertEquals(1, taskService.createTaskQuery().taskName("taskInSubprocess").list().size()); }
public EventSubProcessBuilder eventSubProcess(String id) { // Create a subprocess, triggered by an event, and add it to modelInstance SubProcess subProcess = subProcessBuilder.createChild(SubProcess.class, id); subProcess.setTriggeredByEvent(true); // Create Bpmn shape so subprocess will be drawn BpmnShape targetBpmnShape = subProcessBuilder.createBpmnShape(subProcess); //find the lowest shape in the process // place event sub process underneath setCoordinates(targetBpmnShape); subProcessBuilder.resizeSubProcess(targetBpmnShape); // Return the eventSubProcessBuilder EventSubProcessBuilder eventSubProcessBuilder = new EventSubProcessBuilder(subProcessBuilder.modelInstance, subProcess); return eventSubProcessBuilder; }
public SagaBuilder triggerCompensationOnAnyError() { process.eventSubProcess() .startEvent("ErrorCatched").error("java.lang.Throwable") .intermediateThrowEvent("ToBeCompensated").compensateEventDefinition().compensateEventDefinitionDone() .endEvent("ErrorHandled"); return this; }
public EventSubProcessBuilder eventSubProcess(String id) { // Create a subprocess, triggered by an event, and add it to modelInstance SubProcess subProcess = subProcessBuilder.createChild(SubProcess.class, id); subProcess.setTriggeredByEvent(true); // Create Bpmn shape so subprocess will be drawn BpmnShape targetBpmnShape = subProcessBuilder.createBpmnShape(subProcess); //find the lowest shape in the process // place event sub process underneath setCoordinates(targetBpmnShape); subProcessBuilder.resizeSubProcess(targetBpmnShape); // Return the eventSubProcessBuilder EventSubProcessBuilder eventSubProcessBuilder = new EventSubProcessBuilder(subProcessBuilder.modelInstance, subProcess); return eventSubProcessBuilder; }
public void testInterruptingWithDurationExpressionInEventSubprocess() { // given ProcessBuilder processBuilder = Bpmn.createExecutableProcess("process"); BpmnModelInstance modelInstance = processBuilder .startEvent() .userTask() .endEvent() .done(); processBuilder.eventSubProcess() .startEvent().timerWithDuration("${duration}") .userTask("taskInSubprocess") .endEvent(); deploymentId = repositoryService.createDeployment() .addModelInstance("process.bpmn", modelInstance).deploy() .getId(); // when runtimeService.startProcessInstanceByKey("process", Variables.createVariables() .putValue("duration", "PT60S")); String jobId = managementService.createJobQuery() .singleResult() .getId(); managementService.executeJob(jobId); // then assertEquals(1, taskService.createTaskQuery().taskName("taskInSubprocess").list().size()); }
public EventSubProcessBuilder eventSubProcess(String id) { // Create a subprocess, triggered by an event, and add it to modelInstance SubProcess subProcess = createChild(SubProcess.class, id); subProcess.setTriggeredByEvent(true); // Create Bpmn shape so subprocess will be drawn BpmnShape targetBpmnShape = createBpmnShape(subProcess); //find the lowest shape in the process // place event sub process underneath setEventSubProcessCoordinates(targetBpmnShape); resizeSubProcess(targetBpmnShape); // Return the eventSubProcessBuilder EventSubProcessBuilder eventSubProcessBuilder = new EventSubProcessBuilder(modelInstance, subProcess); return eventSubProcessBuilder; }
public void testNonInterruptingWithDurationExpressionInEventSubprocess() { // given ProcessBuilder processBuilder = Bpmn.createExecutableProcess("process"); BpmnModelInstance modelInstance = processBuilder .startEvent() .userTask() .endEvent().done(); processBuilder.eventSubProcess() .startEvent().interrupting(false).timerWithDuration("${duration}") .userTask("taskInSubprocess") .endEvent(); deploymentId = repositoryService.createDeployment() .addModelInstance("process.bpmn", modelInstance).deploy() .getId(); // when runtimeService.startProcessInstanceByKey("process", Variables.createVariables() .putValue("duration", "PT60S")); String jobId = managementService.createJobQuery() .singleResult() .getId(); managementService.executeJob(jobId); // then assertEquals(1, taskService.createTaskQuery().taskName("taskInSubprocess").list().size()); }
public EventSubProcessBuilder eventSubProcess(String id) { // Create a subprocess, triggered by an event, and add it to modelInstance SubProcess subProcess = createChild(SubProcess.class, id); subProcess.setTriggeredByEvent(true); // Create Bpmn shape so subprocess will be drawn BpmnShape targetBpmnShape = createBpmnShape(subProcess); //find the lowest shape in the process // place event sub process underneath setEventSubProcessCoordinates(targetBpmnShape); resizeSubProcess(targetBpmnShape); // Return the eventSubProcessBuilder EventSubProcessBuilder eventSubProcessBuilder = new EventSubProcessBuilder(modelInstance, subProcess); return eventSubProcessBuilder; }
.startEvent().error("java.lang.Throwable") .intermediateThrowEvent().compensateEventDefinition().compensateEventDefinitionDone() .endEvent();
public EventSubProcessBuilder eventSubProcess(String id) { // Create a subprocess, triggered by an event, and add it to modelInstance SubProcess subProcess = subProcessBuilder.createChild(SubProcess.class, id); subProcess.setTriggeredByEvent(true); // Create Bpmn shape so subprocess will be drawn BpmnShape targetBpmnShape = subProcessBuilder.createBpmnShape(subProcess); //find the lowest shape in the process // place event sub process underneath setCoordinates(targetBpmnShape); subProcessBuilder.resizeSubProcess(targetBpmnShape); // Return the eventSubProcessBuilder EventSubProcessBuilder eventSubProcessBuilder = new EventSubProcessBuilder(subProcessBuilder.modelInstance, subProcess); return eventSubProcessBuilder; }