@Override public String getDescription() { return (String) getProperty(BpmnParse.PROPERTYNAME_DOCUMENTATION); }
@Override public String getDescription() { return (String) getProperty(BpmnParse.PROPERTYNAME_DOCUMENTATION); }
@SuppressWarnings("unchecked") protected void addTimerDeclarations(ProcessDefinitionEntity processDefinition) { List<TimerDeclarationImpl> timerDeclarations = (List<TimerDeclarationImpl>) processDefinition.getProperty(BpmnParse.PROPERTYNAME_START_TIMER); if (timerDeclarations!=null) { for (TimerDeclarationImpl timerDeclaration : timerDeclarations) { String deploymentId = processDefinition.getDeploymentId(); timerDeclaration.createStartTimerInstance(deploymentId); } } }
@SuppressWarnings("unchecked") protected void addTimerDeclarations(ProcessDefinitionEntity processDefinition) { List<TimerDeclarationImpl> timerDeclarations = (List<TimerDeclarationImpl>) processDefinition.getProperty(BpmnParse.PROPERTYNAME_START_TIMER); if (timerDeclarations!=null) { for (TimerDeclarationImpl timerDeclaration : timerDeclarations) { String deploymentId = processDefinition.getDeploymentId(); timerDeclaration.createStartTimerInstance(deploymentId); } } }
@SuppressWarnings("unchecked") protected void parseTimerStartEventDefinition(Element timerEventDefinition, ActivityImpl timerActivity, ProcessDefinitionEntity processDefinition) { timerActivity.getProperties().set(BpmnProperties.TYPE, ActivityTypes.START_EVENT_TIMER); TimerDeclarationImpl timerDeclaration = parseTimer(timerEventDefinition, timerActivity, TimerStartEventJobHandler.TYPE); timerDeclaration.setRawJobHandlerConfiguration(processDefinition.getKey()); List<TimerDeclarationImpl> timerDeclarations = (List<TimerDeclarationImpl>) processDefinition.getProperty(PROPERTYNAME_START_TIMER); if (timerDeclarations == null) { timerDeclarations = new ArrayList<TimerDeclarationImpl>(); processDefinition.setProperty(PROPERTYNAME_START_TIMER, timerDeclarations); } timerDeclarations.add(timerDeclaration); }
@SuppressWarnings("unchecked") protected void parseTimerStartEventDefinition(Element timerEventDefinition, ActivityImpl timerActivity, ProcessDefinitionEntity processDefinition) { timerActivity.getProperties().set(BpmnProperties.TYPE, ActivityTypes.START_EVENT_TIMER); TimerDeclarationImpl timerDeclaration = parseTimer(timerEventDefinition, timerActivity, TimerStartEventJobHandler.TYPE); timerDeclaration.setRawJobHandlerConfiguration(processDefinition.getKey()); List<TimerDeclarationImpl> timerDeclarations = (List<TimerDeclarationImpl>) processDefinition.getProperty(PROPERTYNAME_START_TIMER); if (timerDeclarations == null) { timerDeclarations = new ArrayList<TimerDeclarationImpl>(); processDefinition.setProperty(PROPERTYNAME_START_TIMER, timerDeclarations); } timerDeclarations.add(timerDeclaration); }
@Override public String getDescription() { return (String) getProperty(BpmnParse.PROPERTYNAME_DOCUMENTATION); }
@SuppressWarnings("unchecked") protected void addTimerDeclarations(ProcessDefinitionEntity processDefinition) { List<TimerDeclarationImpl> timerDeclarations = (List<TimerDeclarationImpl>) processDefinition.getProperty(BpmnParse.PROPERTYNAME_START_TIMER); if (timerDeclarations!=null) { for (TimerDeclarationImpl timerDeclaration : timerDeclarations) { String deploymentId = processDefinition.getDeploymentId(); timerDeclaration.createStartTimerInstance(deploymentId); } } }
@Test public void testProcessWithoutConditionalEvent() { //given BpmnModelInstance modelInstance = Bpmn.createExecutableProcess(CONDITIONAL_EVENT_PROCESS_KEY) .startEvent() .serviceTask() .camundaClass(CheckNoDelayedVariablesDelegate.class.getName()) .userTask() .endEvent() .done(); //when process is deployed and instance created rule.manageDeployment(rule.getRepositoryService().createDeployment().addModelInstance(CONDITIONAL_MODEL, modelInstance).deploy()); ProcessInstanceWithVariablesImpl processInstance = (ProcessInstanceWithVariablesImpl) rule.getRuntimeService().startProcessInstanceByKey(CONDITIONAL_EVENT_PROCESS_KEY); //then process definition contains no property which indicates that conditional events exists Object property = processInstance.getExecutionEntity().getProcessDefinition().getProperty(BpmnParse.PROPERTYNAME_HAS_CONDITIONAL_EVENTS); assertNull(property); } }
@Test public void testProcessWithIntermediateConditionalEvent() { //given BpmnModelInstance modelInstance = Bpmn.createExecutableProcess(CONDITIONAL_EVENT_PROCESS_KEY) .startEvent() .serviceTask() .camundaClass(CheckDelayedVariablesDelegate.class.getName()) .intermediateCatchEvent() .conditionalEventDefinition() .condition("${var==1}") .conditionalEventDefinitionDone() .endEvent() .done(); //when process is deployed and instance created rule.manageDeployment(rule.getRepositoryService().createDeployment().addModelInstance(CONDITIONAL_MODEL, modelInstance).deploy()); ProcessInstanceWithVariablesImpl processInstance = (ProcessInstanceWithVariablesImpl) rule.getRuntimeService().startProcessInstanceByKey(CONDITIONAL_EVENT_PROCESS_KEY); //then process definition contains property which indicates that conditional events exists Object property = processInstance.getExecutionEntity().getProcessDefinition().getProperty(BpmnParse.PROPERTYNAME_HAS_CONDITIONAL_EVENTS); assertNotNull(property); assertEquals(Boolean.TRUE, property); }
@SuppressWarnings("unchecked") protected void parseTimerStartEventDefinition(Element timerEventDefinition, ActivityImpl timerActivity, ProcessDefinitionEntity processDefinition) { timerActivity.getProperties().set(BpmnProperties.TYPE, ActivityTypes.START_EVENT_TIMER); TimerDeclarationImpl timerDeclaration = parseTimer(timerEventDefinition, timerActivity, TimerStartEventJobHandler.TYPE); timerDeclaration.setRawJobHandlerConfiguration(processDefinition.getKey()); List<TimerDeclarationImpl> timerDeclarations = (List<TimerDeclarationImpl>) processDefinition.getProperty(PROPERTYNAME_START_TIMER); if (timerDeclarations == null) { timerDeclarations = new ArrayList<TimerDeclarationImpl>(); processDefinition.setProperty(PROPERTYNAME_START_TIMER, timerDeclarations); } timerDeclarations.add(timerDeclaration); }
@Test public void testProcessWithBoundaryConditionalEvent() { //given BpmnModelInstance modelInstance = Bpmn.createExecutableProcess(CONDITIONAL_EVENT_PROCESS_KEY) .startEvent() .serviceTask() .camundaClass(CheckDelayedVariablesDelegate.class.getName()) .userTask(TASK_WITH_CONDITION_ID) .endEvent() .done(); modelInstance = modify(modelInstance).userTaskBuilder(TASK_WITH_CONDITION_ID) .boundaryEvent() .conditionalEventDefinition() .condition("${var==1}") .conditionalEventDefinitionDone() .endEvent() .done(); //when process is deployed and instance created rule.manageDeployment(rule.getRepositoryService().createDeployment().addModelInstance(CONDITIONAL_MODEL, modelInstance).deploy()); ProcessInstanceWithVariablesImpl processInstance = (ProcessInstanceWithVariablesImpl) rule.getRuntimeService().startProcessInstanceByKey(CONDITIONAL_EVENT_PROCESS_KEY); //then process definition contains property which indicates that conditional events exists Object property = processInstance.getExecutionEntity().getProcessDefinition().getProperty(BpmnParse.PROPERTYNAME_HAS_CONDITIONAL_EVENTS); assertNotNull(property); assertEquals(Boolean.TRUE, property); }
@Test public void testProcessWithEventSubProcessConditionalEvent() { //given BpmnModelInstance modelInstance = Bpmn.createExecutableProcess(CONDITIONAL_EVENT_PROCESS_KEY) .startEvent() .serviceTask() .camundaClass(CheckDelayedVariablesDelegate.class.getName()) .userTask() .endEvent() .done(); modelInstance = modify(modelInstance).addSubProcessTo(CONDITIONAL_EVENT_PROCESS_KEY) .triggerByEvent() .embeddedSubProcess() .startEvent() .conditionalEventDefinition() .condition("${var==1}") .conditionalEventDefinitionDone() .endEvent() .done(); //when process is deployed and instance created rule.manageDeployment(rule.getRepositoryService().createDeployment().addModelInstance(CONDITIONAL_MODEL, modelInstance).deploy()); ProcessInstanceWithVariablesImpl processInstance = (ProcessInstanceWithVariablesImpl) rule.getRuntimeService().startProcessInstanceByKey(CONDITIONAL_EVENT_PROCESS_KEY); //then process definition contains property which indicates that conditional events exists Object property = processInstance.getExecutionEntity().getProcessDefinition().getProperty(BpmnParse.PROPERTYNAME_HAS_CONDITIONAL_EVENTS); assertNotNull(property); assertEquals(Boolean.TRUE, property); }
@Test public void testProcessWithoutConditionalEvent() { //given BpmnModelInstance modelInstance = Bpmn.createExecutableProcess(CONDITIONAL_EVENT_PROCESS_KEY) .startEvent() .serviceTask() .camundaClass(CheckNoDelayedVariablesDelegate.class.getName()) .userTask() .endEvent() .done(); //when process is deployed and instance created rule.manageDeployment(rule.getRepositoryService().createDeployment().addModelInstance(CONDITIONAL_MODEL, modelInstance).deploy()); ProcessInstanceWithVariablesImpl processInstance = (ProcessInstanceWithVariablesImpl) rule.getRuntimeService().startProcessInstanceByKey(CONDITIONAL_EVENT_PROCESS_KEY); //then process definition contains no property which indicates that conditional events exists Object property = processInstance.getExecutionEntity().getProcessDefinition().getProperty(BpmnParse.PROPERTYNAME_HAS_CONDITIONAL_EVENTS); assertNull(property); } }
@Test public void testProcessWithIntermediateConditionalEvent() { //given BpmnModelInstance modelInstance = Bpmn.createExecutableProcess(CONDITIONAL_EVENT_PROCESS_KEY) .startEvent() .serviceTask() .camundaClass(CheckDelayedVariablesDelegate.class.getName()) .intermediateCatchEvent() .conditionalEventDefinition() .condition("${var==1}") .conditionalEventDefinitionDone() .endEvent() .done(); //when process is deployed and instance created rule.manageDeployment(rule.getRepositoryService().createDeployment().addModelInstance(CONDITIONAL_MODEL, modelInstance).deploy()); ProcessInstanceWithVariablesImpl processInstance = (ProcessInstanceWithVariablesImpl) rule.getRuntimeService().startProcessInstanceByKey(CONDITIONAL_EVENT_PROCESS_KEY); //then process definition contains property which indicates that conditional events exists Object property = processInstance.getExecutionEntity().getProcessDefinition().getProperty(BpmnParse.PROPERTYNAME_HAS_CONDITIONAL_EVENTS); assertNotNull(property); assertEquals(Boolean.TRUE, property); }
@Test public void testProcessWithBoundaryConditionalEvent() { //given BpmnModelInstance modelInstance = Bpmn.createExecutableProcess(CONDITIONAL_EVENT_PROCESS_KEY) .startEvent() .serviceTask() .camundaClass(CheckDelayedVariablesDelegate.class.getName()) .userTask(TASK_WITH_CONDITION_ID) .endEvent() .done(); modelInstance = modify(modelInstance).userTaskBuilder(TASK_WITH_CONDITION_ID) .boundaryEvent() .conditionalEventDefinition() .condition("${var==1}") .conditionalEventDefinitionDone() .endEvent() .done(); //when process is deployed and instance created rule.manageDeployment(rule.getRepositoryService().createDeployment().addModelInstance(CONDITIONAL_MODEL, modelInstance).deploy()); ProcessInstanceWithVariablesImpl processInstance = (ProcessInstanceWithVariablesImpl) rule.getRuntimeService().startProcessInstanceByKey(CONDITIONAL_EVENT_PROCESS_KEY); //then process definition contains property which indicates that conditional events exists Object property = processInstance.getExecutionEntity().getProcessDefinition().getProperty(BpmnParse.PROPERTYNAME_HAS_CONDITIONAL_EVENTS); assertNotNull(property); assertEquals(Boolean.TRUE, property); }
@Test public void testProcessWithEventSubProcessConditionalEvent() { //given BpmnModelInstance modelInstance = Bpmn.createExecutableProcess(CONDITIONAL_EVENT_PROCESS_KEY) .startEvent() .serviceTask() .camundaClass(CheckDelayedVariablesDelegate.class.getName()) .userTask() .endEvent() .done(); modelInstance = modify(modelInstance).addSubProcessTo(CONDITIONAL_EVENT_PROCESS_KEY) .triggerByEvent() .embeddedSubProcess() .startEvent() .conditionalEventDefinition() .condition("${var==1}") .conditionalEventDefinitionDone() .endEvent() .done(); //when process is deployed and instance created rule.manageDeployment(rule.getRepositoryService().createDeployment().addModelInstance(CONDITIONAL_MODEL, modelInstance).deploy()); ProcessInstanceWithVariablesImpl processInstance = (ProcessInstanceWithVariablesImpl) rule.getRuntimeService().startProcessInstanceByKey(CONDITIONAL_EVENT_PROCESS_KEY); //then process definition contains property which indicates that conditional events exists Object property = processInstance.getExecutionEntity().getProcessDefinition().getProperty(BpmnParse.PROPERTYNAME_HAS_CONDITIONAL_EVENTS); assertNotNull(property); assertEquals(Boolean.TRUE, property); }