camunda-workflow 0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/CONTRIBUTING.md +20 -0
- data/LICENSE.md +31 -0
- data/README.md +209 -0
- data/lib/camunda.rb +54 -0
- data/lib/camunda/bpmn_xml.rb +52 -0
- data/lib/camunda/deployment.rb +29 -0
- data/lib/camunda/external_task.rb +83 -0
- data/lib/camunda/external_task_job.rb +35 -0
- data/lib/camunda/incident.rb +3 -0
- data/lib/camunda/matchers.rb +20 -0
- data/lib/camunda/model.rb +26 -0
- data/lib/camunda/poller.rb +8 -0
- data/lib/camunda/process_definition.rb +29 -0
- data/lib/camunda/process_instance.rb +21 -0
- data/lib/camunda/signal.rb +9 -0
- data/lib/camunda/task.rb +28 -0
- data/lib/camunda/variable_serialization.rb +48 -0
- data/lib/camunda/workflow.rb +39 -0
- data/lib/generators/camunda/bpmn_classes/USAGE +10 -0
- data/lib/generators/camunda/bpmn_classes/bpmn_classes_generator.rb +67 -0
- data/lib/generators/camunda/bpmn_classes/templates/bpmn_class.rb.template +10 -0
- data/lib/generators/camunda/bpmn_classes/templates/bpmn_module.rb.template +5 -0
- data/lib/generators/camunda/install/USAGE +10 -0
- data/lib/generators/camunda/install/install_generator.rb +11 -0
- data/lib/generators/camunda/install/templates/camunda_job.rb +7 -0
- data/lib/generators/camunda/spring_boot/USAGE +12 -0
- data/lib/generators/camunda/spring_boot/spring_boot_generator.rb +69 -0
- data/lib/generators/camunda/spring_boot/templates/Camunda.java +28 -0
- data/lib/generators/camunda/spring_boot/templates/ProcessScenarioTest.java +85 -0
- data/lib/generators/camunda/spring_boot/templates/application.properties +48 -0
- data/lib/generators/camunda/spring_boot/templates/camunda.cfg.xml +20 -0
- data/lib/generators/camunda/spring_boot/templates/pom.xml +173 -0
- data/lib/generators/camunda/spring_boot/templates/sample.bpmn +94 -0
- metadata +230 -0
@@ -0,0 +1,28 @@
|
|
1
|
+
package camunda;
|
2
|
+
/*
|
3
|
+
* Copyright Camunda Services GmbH and/or licensed to Camunda Services GmbH
|
4
|
+
* under one or more contributor license agreements. See the NOTICE file
|
5
|
+
* distributed with this work for additional information regarding copyright
|
6
|
+
* ownership. Camunda licenses this file to you under the Apache License,
|
7
|
+
* Version 2.0; you may not use this file except in compliance with the License.
|
8
|
+
* You may obtain a copy of the License at
|
9
|
+
*
|
10
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
11
|
+
*
|
12
|
+
* Unless required by applicable law or agreed to in writing, software
|
13
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
14
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
15
|
+
* See the License for the specific language governing permissions and
|
16
|
+
* limitations under the License.
|
17
|
+
*/
|
18
|
+
import org.camunda.bpm.spring.boot.starter.annotation.EnableProcessApplication;
|
19
|
+
import org.springframework.boot.SpringApplication;
|
20
|
+
import org.springframework.boot.autoconfigure.SpringBootApplication;
|
21
|
+
|
22
|
+
@SpringBootApplication
|
23
|
+
@EnableProcessApplication("camunda-bpm-springboot")
|
24
|
+
public class Camunda {
|
25
|
+
public static void main(String... args) {
|
26
|
+
SpringApplication.run(Camunda.class, args);
|
27
|
+
}
|
28
|
+
}
|
@@ -0,0 +1,85 @@
|
|
1
|
+
package example;
|
2
|
+
|
3
|
+
import org.apache.ibatis.logging.LogFactory;
|
4
|
+
import org.camunda.bpm.engine.ProcessEngine;
|
5
|
+
import org.camunda.bpm.engine.test.Deployment;
|
6
|
+
import org.camunda.bpm.engine.test.ProcessEngineRule;
|
7
|
+
import org.camunda.bpm.scenario.ProcessScenario;
|
8
|
+
import org.camunda.bpm.spring.boot.starter.test.helper.StandaloneInMemoryTestConfiguration;
|
9
|
+
import org.junit.Before;
|
10
|
+
import org.junit.ClassRule;
|
11
|
+
import org.junit.Rule;
|
12
|
+
import org.junit.Test;
|
13
|
+
import org.junit.runner.RunWith;
|
14
|
+
import org.mockito.Mock;
|
15
|
+
import org.mockito.MockitoAnnotations;
|
16
|
+
import org.springframework.beans.factory.annotation.Autowired;
|
17
|
+
import org.springframework.boot.test.context.SpringBootTest;
|
18
|
+
import org.springframework.boot.test.context.SpringBootTest.WebEnvironment;
|
19
|
+
import org.springframework.test.context.junit4.SpringRunner;
|
20
|
+
import org.camunda.bpm.extension.process_test_coverage.junit.rules.TestCoverageProcessEngineRuleBuilder;
|
21
|
+
|
22
|
+
import javax.annotation.PostConstruct;
|
23
|
+
|
24
|
+
import static org.mockito.Matchers.*;
|
25
|
+
import static org.mockito.Mockito.*;
|
26
|
+
|
27
|
+
import static org.junit.Assert.*;
|
28
|
+
import static org.assertj.core.api.Assertions.*;
|
29
|
+
import static org.camunda.bpm.engine.test.assertions.ProcessEngineTests.*;
|
30
|
+
|
31
|
+
/**
|
32
|
+
* Test case starting an in-memory database-backed Process Engine.
|
33
|
+
*/
|
34
|
+
@RunWith(SpringRunner.class)
|
35
|
+
@SpringBootTest(webEnvironment = WebEnvironment.NONE)
|
36
|
+
public class ProcessScenarioTest {
|
37
|
+
|
38
|
+
private static final String PROCESS_DEFINITION_KEY = "timer";
|
39
|
+
|
40
|
+
static {
|
41
|
+
LogFactory.useSlf4jLogging(); // MyBatis
|
42
|
+
}
|
43
|
+
|
44
|
+
@Autowired
|
45
|
+
ProcessEngine processEngine;
|
46
|
+
|
47
|
+
@Rule
|
48
|
+
@ClassRule
|
49
|
+
public static ProcessEngineRule rule;
|
50
|
+
|
51
|
+
@Before
|
52
|
+
public void setup() {
|
53
|
+
MockitoAnnotations.initMocks(this);
|
54
|
+
}
|
55
|
+
|
56
|
+
@Mock
|
57
|
+
private ProcessScenario process;
|
58
|
+
|
59
|
+
@PostConstruct
|
60
|
+
void initRule() {
|
61
|
+
rule = TestCoverageProcessEngineRuleBuilder.create(processEngine).build();
|
62
|
+
}
|
63
|
+
|
64
|
+
@Test
|
65
|
+
public void testHappyPath() {
|
66
|
+
// Define scenarios by using camunda-bpm-assert-scenario:
|
67
|
+
|
68
|
+
//ExecutableRunner starter = Scenario.run(myProcess) //
|
69
|
+
// .startByKey(PROCESS_DEFINITION_KEY);
|
70
|
+
|
71
|
+
// when(myProcess.waitsAtReceiveTask(anyString())).thenReturn((messageSubscription) -> {
|
72
|
+
// messageSubscription.receive();
|
73
|
+
// });
|
74
|
+
// when(myProcess.waitsAtUserTask(anyString())).thenReturn((task) -> {
|
75
|
+
// task.complete();
|
76
|
+
// });
|
77
|
+
|
78
|
+
// OK - everything prepared - let's go and execute the scenario
|
79
|
+
//Scenario scenario = starter.execute();
|
80
|
+
|
81
|
+
// now you can do some assertions
|
82
|
+
//verify(myProcess).hasFinished("EndEvent");
|
83
|
+
}
|
84
|
+
|
85
|
+
}
|
@@ -0,0 +1,48 @@
|
|
1
|
+
#spring.datasource.url=jdbc:h2:./camunda-db;DB_CLOSE_ON_EXIT=false
|
2
|
+
|
3
|
+
|
4
|
+
|
5
|
+
spring.datasource.url=jdbc:h2:mem:camunda
|
6
|
+
spring.datasource.username=sa
|
7
|
+
spring.datasource.password=sa
|
8
|
+
spring.datasource.driverClassName=org.h2.Driver
|
9
|
+
|
10
|
+
|
11
|
+
#POSTGRESQL PROPERTIES LOCALHOST
|
12
|
+
# camunda.bpm.database.type=postgres
|
13
|
+
|
14
|
+
# spring.datasource.url=jdbc:postgresql://${CAMUNDA_DB_HOST:localhost}:${CAMUNDA_DB_PORT:5432}/${CAMUNDA_DB:camunda}
|
15
|
+
|
16
|
+
# spring.datasource.username=postgres
|
17
|
+
# spring.datasource.password=postgres
|
18
|
+
|
19
|
+
# spring.jpa.properties.hibernate.dialect=org.hibernate.dialect.PostgreSQLDialect
|
20
|
+
# spring.datasource.driver-class-name=org.postgresql.Driver
|
21
|
+
# camunda.bpm.database.schema-update=true
|
22
|
+
# camunda.bpm.job-execution.active = true
|
23
|
+
|
24
|
+
|
25
|
+
# These are not supported when auto-creating the schema
|
26
|
+
#camunda.bpm.database.schema-name=camunda
|
27
|
+
#camunda.bpm.database.table-prefix=camunda.
|
28
|
+
|
29
|
+
|
30
|
+
#spring.jpa.show-sql=true
|
31
|
+
#spring.jpa.generate-ddl=true
|
32
|
+
#spring.jpa.hibernate.ddl-auto=create-drop
|
33
|
+
#spring.jpa.hibernate.naming-strategy=org.hibernate.cfg.ImprovedNamingStrategy
|
34
|
+
|
35
|
+
#spring.cloud.stream.bindings.output.destination=flowing-retail
|
36
|
+
#spring.cloud.stream.bindings.output.content-type=application/json
|
37
|
+
#spring.cloud.stream.bindings.input.destination=flowing-retail
|
38
|
+
#spring.cloud.stream.bindings.input.content-type=application/json
|
39
|
+
#spring.cloud.stream.bindings.input.group=order
|
40
|
+
#spring.cloud.stream.kafka.binder.zkNodes=localhost:2181
|
41
|
+
#spring.cloud.stream.kafka.binder.brokers=localhost:9092
|
42
|
+
|
43
|
+
#camunda.bpm.admin-user.id=demo
|
44
|
+
#camunda.bpm.admin-user.password=demo
|
45
|
+
#camunda.bpm.filter.create=All
|
46
|
+
#camunda.bpm.license-file=file:${user.home}/.camunda/license.txt
|
47
|
+
|
48
|
+
server.port=${CAMUNDA_PORT:8080}
|
@@ -0,0 +1,20 @@
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
2
|
+
|
3
|
+
<beans xmlns="http://www.springframework.org/schema/beans"
|
4
|
+
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
5
|
+
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">
|
6
|
+
|
7
|
+
<bean id="processEngineConfiguration"
|
8
|
+
class="org.camunda.bpm.extension.process_test_coverage.junit.rules.ProcessCoverageInMemProcessEngineConfiguration">
|
9
|
+
<property name="history" value="full"/>
|
10
|
+
<property name="jobExecutorActivate" value="true"/>
|
11
|
+
<property name="expressionManager">
|
12
|
+
<bean class="org.camunda.bpm.engine.test.mock.MockExpressionManager"/>
|
13
|
+
</property>
|
14
|
+
<property name="processEnginePlugins">
|
15
|
+
<list>
|
16
|
+
<bean class="org.camunda.spin.plugin.impl.SpinProcessEnginePlugin"/>
|
17
|
+
</list>
|
18
|
+
</property>
|
19
|
+
</bean>
|
20
|
+
</beans>
|
@@ -0,0 +1,173 @@
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
2
|
+
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
3
|
+
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
|
4
|
+
<modelVersion>4.0.0</modelVersion>
|
5
|
+
|
6
|
+
<groupId>camunda.bpm</groupId>
|
7
|
+
<artifactId>camunda-bpm-springboot</artifactId>
|
8
|
+
<version>0.0.1-SNAPSHOT</version>
|
9
|
+
<packaging>jar</packaging>
|
10
|
+
|
11
|
+
<name>Camunda BPM Process Application</name>
|
12
|
+
<description>A Process Application for [Camunda BPM](http://docs.camunda.org).</description>
|
13
|
+
|
14
|
+
<properties>
|
15
|
+
<camunda.version>7.12.0-alpha3</camunda.version>
|
16
|
+
<!--
|
17
|
+
Adjust if you want to use Camunda Enterprise Edition (EE):
|
18
|
+
<camunda.version>7.11.0-ee</camunda.version>
|
19
|
+
Make sure you also switch to the ee webapp dependency
|
20
|
+
and EE repository below
|
21
|
+
-->
|
22
|
+
<camundaSpringBoot.version>3.3.1</camundaSpringBoot.version>
|
23
|
+
<springBoot.version>2.1.5.RELEASE</springBoot.version>
|
24
|
+
|
25
|
+
<maven.compiler.source>1.8</maven.compiler.source>
|
26
|
+
<maven.compiler.target>1.8</maven.compiler.target>
|
27
|
+
<version.java>1.8</version.java>
|
28
|
+
<start-class>camunda.Camunda</start-class>
|
29
|
+
|
30
|
+
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
31
|
+
<failOnMissingWebXml>false</failOnMissingWebXml>
|
32
|
+
</properties>
|
33
|
+
|
34
|
+
<dependencyManagement>
|
35
|
+
<dependencies>
|
36
|
+
<dependency>
|
37
|
+
<groupId>org.camunda.bpm</groupId>
|
38
|
+
<artifactId>camunda-bom</artifactId>
|
39
|
+
<version>${camunda.version}</version>
|
40
|
+
<scope>import</scope>
|
41
|
+
<type>pom</type>
|
42
|
+
</dependency>
|
43
|
+
<dependency>
|
44
|
+
<groupId>org.springframework.boot</groupId>
|
45
|
+
<artifactId>spring-boot-dependencies</artifactId>
|
46
|
+
<version>${springBoot.version}</version>
|
47
|
+
<type>pom</type>
|
48
|
+
<scope>import</scope>
|
49
|
+
</dependency>
|
50
|
+
</dependencies>
|
51
|
+
</dependencyManagement>
|
52
|
+
|
53
|
+
<dependencies>
|
54
|
+
<dependency>
|
55
|
+
<groupId>org.camunda.bpm.springboot</groupId>
|
56
|
+
<artifactId>camunda-bpm-spring-boot-starter-webapp</artifactId>
|
57
|
+
<version>${camundaSpringBoot.version}</version>
|
58
|
+
<exclusions>
|
59
|
+
<exclusion>
|
60
|
+
<groupId>org.camunda.bpm</groupId>
|
61
|
+
<artifactId>camunda-engine-rest-core</artifactId>
|
62
|
+
</exclusion>
|
63
|
+
</exclusions>
|
64
|
+
</dependency>
|
65
|
+
|
66
|
+
<dependency>
|
67
|
+
<groupId>org.camunda.bpm.springboot</groupId>
|
68
|
+
<artifactId>camunda-bpm-spring-boot-starter-rest</artifactId>
|
69
|
+
<version>${camundaSpringBoot.version}</version>
|
70
|
+
</dependency>
|
71
|
+
|
72
|
+
<dependency>
|
73
|
+
<groupId>org.camunda.bpm.springboot</groupId>
|
74
|
+
<artifactId>camunda-bpm-spring-boot-starter-test</artifactId>
|
75
|
+
<version>${camundaSpringBoot.version}</version>
|
76
|
+
</dependency>
|
77
|
+
|
78
|
+
<dependency>
|
79
|
+
<groupId>com.h2database</groupId>
|
80
|
+
<artifactId>h2</artifactId>
|
81
|
+
</dependency>
|
82
|
+
<dependency>
|
83
|
+
<groupId>org.postgresql</groupId>
|
84
|
+
<artifactId>postgresql</artifactId>
|
85
|
+
<version>42.2.7</version>
|
86
|
+
</dependency>
|
87
|
+
|
88
|
+
<dependency>
|
89
|
+
<groupId>org.springframework.boot</groupId>
|
90
|
+
<artifactId>spring-boot-starter-jdbc</artifactId>
|
91
|
+
</dependency>
|
92
|
+
|
93
|
+
<!-- Required to use Spin dataformat support -->
|
94
|
+
<dependency>
|
95
|
+
<groupId>org.camunda.spin</groupId>
|
96
|
+
<artifactId>camunda-spin-dataformat-all</artifactId>
|
97
|
+
</dependency>
|
98
|
+
<dependency>
|
99
|
+
<groupId>org.camunda.bpm</groupId>
|
100
|
+
<artifactId>camunda-engine-plugin-spin</artifactId>
|
101
|
+
</dependency>
|
102
|
+
|
103
|
+
<dependency>
|
104
|
+
<groupId>org.springframework.boot</groupId>
|
105
|
+
<artifactId>spring-boot-starter-test</artifactId>
|
106
|
+
<scope>test</scope>
|
107
|
+
</dependency>
|
108
|
+
|
109
|
+
<dependency>
|
110
|
+
<groupId>org.camunda.bpm.extension</groupId>
|
111
|
+
<artifactId>camunda-bpm-assert-scenario</artifactId>
|
112
|
+
<version>0.2</version>
|
113
|
+
<scope>test</scope>
|
114
|
+
</dependency>
|
115
|
+
<dependency>
|
116
|
+
<!-- Used to generate test coverage reports, see https://github.com/camunda/camunda-consulting/tree/master/snippets/camunda-bpm-process-test-coverage -->
|
117
|
+
<groupId>org.camunda.bpm.extension</groupId>
|
118
|
+
<artifactId>camunda-bpm-process-test-coverage</artifactId>
|
119
|
+
<version>0.3.2</version>
|
120
|
+
<scope>test</scope>
|
121
|
+
</dependency>
|
122
|
+
<!-- java util logging => slf4j -->
|
123
|
+
<dependency>
|
124
|
+
<groupId>org.slf4j</groupId>
|
125
|
+
<artifactId>jul-to-slf4j</artifactId>
|
126
|
+
<scope>test</scope>
|
127
|
+
</dependency>
|
128
|
+
|
129
|
+
<!-- Add your own dependencies here, if in compile scope, they are added to the jar -->
|
130
|
+
|
131
|
+
</dependencies>
|
132
|
+
|
133
|
+
<repositories>
|
134
|
+
<repository>
|
135
|
+
<id>camunda-bpm-nexus</id>
|
136
|
+
<name>Camunda Maven Repository</name>
|
137
|
+
<url>https://app.camunda.com/nexus/content/groups/public</url>
|
138
|
+
</repository>
|
139
|
+
<!-- enable this for EE dependencies (requires credentials in ~/.m2/settings.xml)
|
140
|
+
<repository>
|
141
|
+
<id>camunda-bpm-nexus-ee</id>
|
142
|
+
<name>Camunda Enterprise Maven Repository</name>
|
143
|
+
<url>https://app.camunda.com/nexus/content/repositories/camunda-bpm-ee</url>
|
144
|
+
</repository>
|
145
|
+
-->
|
146
|
+
</repositories>
|
147
|
+
|
148
|
+
<build>
|
149
|
+
<finalName>${project.artifactId}</finalName>
|
150
|
+
<plugins>
|
151
|
+
<plugin>
|
152
|
+
<groupId>org.springframework.boot</groupId>
|
153
|
+
<artifactId>spring-boot-maven-plugin</artifactId>
|
154
|
+
<version>${springBoot.version}</version>
|
155
|
+
<configuration>
|
156
|
+
<layout>ZIP</layout>
|
157
|
+
</configuration>
|
158
|
+
<executions>
|
159
|
+
<execution>
|
160
|
+
<goals>
|
161
|
+
<goal>repackage</goal>
|
162
|
+
</goals>
|
163
|
+
</execution>
|
164
|
+
</executions>
|
165
|
+
</plugin>
|
166
|
+
<plugin>
|
167
|
+
<groupId>org.codehaus.mojo</groupId>
|
168
|
+
<artifactId>exec-maven-plugin</artifactId>
|
169
|
+
<version>1.6.0</version>
|
170
|
+
</plugin>
|
171
|
+
</plugins>
|
172
|
+
</build>
|
173
|
+
</project>
|
@@ -0,0 +1,94 @@
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
2
|
+
<bpmn:definitions xmlns:bpmn="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:di="http://www.omg.org/spec/DD/20100524/DI" xmlns:dc="http://www.omg.org/spec/DD/20100524/DC" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:camunda="http://camunda.org/schema/1.0/bpmn" id="Definitions_1" targetNamespace="http://bpmn.io/schema/bpmn" exporter="Camunda Modeler" exporterVersion="3.3.5">
|
3
|
+
<bpmn:process id="CamundaWorkflow" name="camunda-bpm-servlet-project" isExecutable="true">
|
4
|
+
<bpmn:startEvent id="StartEventProcessStarted" name="Process started">
|
5
|
+
<bpmn:outgoing>SequenceFlow1</bpmn:outgoing>
|
6
|
+
</bpmn:startEvent>
|
7
|
+
<bpmn:endEvent id="EndEventProcessEnded" name="Process ended">
|
8
|
+
<bpmn:incoming>SequenceFlow_1o8pywg</bpmn:incoming>
|
9
|
+
</bpmn:endEvent>
|
10
|
+
<bpmn:sequenceFlow id="SequenceFlow1" sourceRef="StartEventProcessStarted" targetRef="ExclusiveGateway_0si3l52" />
|
11
|
+
<bpmn:sequenceFlow id="SequenceFlow_07flmy9" sourceRef="ExclusiveGateway_0si3l52" targetRef="UserTask" />
|
12
|
+
<bpmn:serviceTask id="DoSomething" name="Do Something" camunda:type="external" camunda:topic="CamundaWorkflow">
|
13
|
+
<bpmn:incoming>SequenceFlow_1jruu78</bpmn:incoming>
|
14
|
+
<bpmn:outgoing>SequenceFlow_1cuiwcp</bpmn:outgoing>
|
15
|
+
</bpmn:serviceTask>
|
16
|
+
<bpmn:sequenceFlow id="SequenceFlow_17eprda" sourceRef="UserTask" targetRef="ExclusiveGateway_0zchwar" />
|
17
|
+
<bpmn:userTask id="UserTask" name="User Task">
|
18
|
+
<bpmn:incoming>SequenceFlow_07flmy9</bpmn:incoming>
|
19
|
+
<bpmn:outgoing>SequenceFlow_17eprda</bpmn:outgoing>
|
20
|
+
</bpmn:userTask>
|
21
|
+
<bpmn:parallelGateway id="ExclusiveGateway_0si3l52">
|
22
|
+
<bpmn:incoming>SequenceFlow1</bpmn:incoming>
|
23
|
+
<bpmn:outgoing>SequenceFlow_07flmy9</bpmn:outgoing>
|
24
|
+
<bpmn:outgoing>SequenceFlow_1jruu78</bpmn:outgoing>
|
25
|
+
</bpmn:parallelGateway>
|
26
|
+
<bpmn:sequenceFlow id="SequenceFlow_1o8pywg" sourceRef="ExclusiveGateway_0zchwar" targetRef="EndEventProcessEnded" />
|
27
|
+
<bpmn:parallelGateway id="ExclusiveGateway_0zchwar">
|
28
|
+
<bpmn:incoming>SequenceFlow_17eprda</bpmn:incoming>
|
29
|
+
<bpmn:incoming>SequenceFlow_1cuiwcp</bpmn:incoming>
|
30
|
+
<bpmn:outgoing>SequenceFlow_1o8pywg</bpmn:outgoing>
|
31
|
+
</bpmn:parallelGateway>
|
32
|
+
<bpmn:sequenceFlow id="SequenceFlow_1jruu78" sourceRef="ExclusiveGateway_0si3l52" targetRef="DoSomething" />
|
33
|
+
<bpmn:sequenceFlow id="SequenceFlow_1cuiwcp" sourceRef="DoSomething" targetRef="ExclusiveGateway_0zchwar" />
|
34
|
+
</bpmn:process>
|
35
|
+
<bpmndi:BPMNDiagram id="BPMNDiagram_1">
|
36
|
+
<bpmndi:BPMNPlane id="BPMNPlane_1" bpmnElement="CamundaWorkflow">
|
37
|
+
<bpmndi:BPMNShape id="_BPMNShape_StartEvent_2" bpmnElement="StartEventProcessStarted">
|
38
|
+
<dc:Bounds x="173" y="212" width="36" height="36" />
|
39
|
+
<bpmndi:BPMNLabel>
|
40
|
+
<dc:Bounds x="171" y="248" width="40" height="27" />
|
41
|
+
</bpmndi:BPMNLabel>
|
42
|
+
</bpmndi:BPMNShape>
|
43
|
+
<bpmndi:BPMNShape id="EndEvent_0fkea3f_di" bpmnElement="EndEventProcessEnded">
|
44
|
+
<dc:Bounds x="752" y="212" width="36" height="36" />
|
45
|
+
<bpmndi:BPMNLabel>
|
46
|
+
<dc:Bounds x="750" y="248" width="40" height="27" />
|
47
|
+
</bpmndi:BPMNLabel>
|
48
|
+
</bpmndi:BPMNShape>
|
49
|
+
<bpmndi:BPMNEdge id="SequenceFlow_08va5r8_di" bpmnElement="SequenceFlow1">
|
50
|
+
<di:waypoint x="209" y="230" />
|
51
|
+
<di:waypoint x="265" y="230" />
|
52
|
+
<bpmndi:BPMNLabel>
|
53
|
+
<dc:Bounds x="337.5" y="110" width="90" height="20" />
|
54
|
+
</bpmndi:BPMNLabel>
|
55
|
+
</bpmndi:BPMNEdge>
|
56
|
+
<bpmndi:BPMNEdge id="SequenceFlow_07flmy9_di" bpmnElement="SequenceFlow_07flmy9">
|
57
|
+
<di:waypoint x="290" y="205" />
|
58
|
+
<di:waypoint x="290" y="120" />
|
59
|
+
<di:waypoint x="410" y="120" />
|
60
|
+
</bpmndi:BPMNEdge>
|
61
|
+
<bpmndi:BPMNShape id="ServiceTask_0vzc2vr_di" bpmnElement="DoSomething">
|
62
|
+
<dc:Bounds x="400" y="300" width="100" height="80" />
|
63
|
+
</bpmndi:BPMNShape>
|
64
|
+
<bpmndi:BPMNEdge id="SequenceFlow_17eprda_di" bpmnElement="SequenceFlow_17eprda">
|
65
|
+
<di:waypoint x="510" y="120" />
|
66
|
+
<di:waypoint x="630" y="120" />
|
67
|
+
<di:waypoint x="630" y="205" />
|
68
|
+
</bpmndi:BPMNEdge>
|
69
|
+
<bpmndi:BPMNShape id="UserTask_1w736wx_di" bpmnElement="UserTask">
|
70
|
+
<dc:Bounds x="410" y="80" width="100" height="80" />
|
71
|
+
</bpmndi:BPMNShape>
|
72
|
+
<bpmndi:BPMNShape id="ParallelGateway_0afz9x3_di" bpmnElement="ExclusiveGateway_0si3l52">
|
73
|
+
<dc:Bounds x="265" y="205" width="50" height="50" />
|
74
|
+
</bpmndi:BPMNShape>
|
75
|
+
<bpmndi:BPMNEdge id="SequenceFlow_1o8pywg_di" bpmnElement="SequenceFlow_1o8pywg">
|
76
|
+
<di:waypoint x="655" y="230" />
|
77
|
+
<di:waypoint x="752" y="230" />
|
78
|
+
</bpmndi:BPMNEdge>
|
79
|
+
<bpmndi:BPMNShape id="ParallelGateway_0rz1ckz_di" bpmnElement="ExclusiveGateway_0zchwar">
|
80
|
+
<dc:Bounds x="605" y="205" width="50" height="50" />
|
81
|
+
</bpmndi:BPMNShape>
|
82
|
+
<bpmndi:BPMNEdge id="SequenceFlow_1jruu78_di" bpmnElement="SequenceFlow_1jruu78">
|
83
|
+
<di:waypoint x="290" y="255" />
|
84
|
+
<di:waypoint x="290" y="340" />
|
85
|
+
<di:waypoint x="400" y="340" />
|
86
|
+
</bpmndi:BPMNEdge>
|
87
|
+
<bpmndi:BPMNEdge id="SequenceFlow_1cuiwcp_di" bpmnElement="SequenceFlow_1cuiwcp">
|
88
|
+
<di:waypoint x="500" y="340" />
|
89
|
+
<di:waypoint x="630" y="340" />
|
90
|
+
<di:waypoint x="630" y="255" />
|
91
|
+
</bpmndi:BPMNEdge>
|
92
|
+
</bpmndi:BPMNPlane>
|
93
|
+
</bpmndi:BPMNDiagram>
|
94
|
+
</bpmn:definitions>
|