This repository has been archived by the owner on Sep 6, 2020. It is now read-only.
forked from camunda-consulting/camunda-7-code-examples
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Add example for process resume with modification
- Loading branch information
1 parent
ebe67b8
commit 538fb18
Showing
12 changed files
with
569 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,5 @@ | ||
## How it works | ||
|
||
This example shows how you can resume the normal process flow after having it interrupted by an event based sub process. | ||
|
||
It uses Camunda's [process instance modification API](https://docs.camunda.org/manual/7.10/user-guide/process-engine/process-instance-modification/). |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,189 @@ | ||
<?xml version="1.0" encoding="UTF-8"?> | ||
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" | ||
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> | ||
<modelVersion>4.0.0</modelVersion> | ||
|
||
<groupId>com.camunda.demo</groupId> | ||
<artifactId>event-subprocess-resume</artifactId> | ||
<version>1.0-SNAPSHOT</version> | ||
|
||
<name>Camunda Spring Boot Application</name> | ||
<description>Spring Boot Application using [Camunda](http://docs.camunda.org). [The project has been generated by the Maven archetype 'camunda-archetype-spring-boot-7.10.0']</description> | ||
|
||
<properties> | ||
<camunda.version>7.10.0-ee</camunda.version> | ||
<!-- | ||
Adjust if you want to use Camunda Enterprise Edition (EE): | ||
<camunda.version>7.10.0-ee</camunda.version> | ||
Make sure you also switch to the ee webapp dependency | ||
and EE repository below | ||
--> | ||
<camundaSpringBoot.version>3.2.0</camundaSpringBoot.version> | ||
<springBoot.version>2.1.1.RELEASE</springBoot.version> | ||
|
||
<maven.compiler.source>1.8</maven.compiler.source> | ||
<maven.compiler.target>1.8</maven.compiler.target> | ||
<version.java>1.8</version.java> | ||
|
||
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> | ||
<failOnMissingWebXml>false</failOnMissingWebXml> | ||
</properties> | ||
|
||
<dependencyManagement> | ||
<dependencies> | ||
<dependency> | ||
<groupId>org.camunda.bpm</groupId> | ||
<artifactId>camunda-bom</artifactId> | ||
<version>${camunda.version}</version> | ||
<scope>import</scope> | ||
<type>pom</type> | ||
</dependency> | ||
<dependency> | ||
<groupId>org.camunda.bpm.dmn</groupId> | ||
<artifactId>camunda-engine-dmn-bom</artifactId> | ||
<version>${camunda.version}</version> | ||
<type>pom</type> | ||
<scope>import</scope> | ||
</dependency> | ||
<dependency> | ||
<groupId>org.springframework.boot</groupId> | ||
<artifactId>spring-boot-dependencies</artifactId> | ||
<version>${springBoot.version}</version> | ||
<type>pom</type> | ||
<scope>import</scope> | ||
</dependency> | ||
</dependencies> | ||
</dependencyManagement> | ||
|
||
<dependencies> | ||
<dependency> | ||
<groupId>org.camunda.bpm.springboot</groupId> | ||
<artifactId>camunda-bpm-spring-boot-starter-webapp-ee</artifactId> | ||
<!-- | ||
Adjust if you want to use EE: | ||
<artifactId>camunda-bpm-spring-boot-starter-webapp-ee</artifactId> | ||
Make sure you also use an EE version of Camunda - see above | ||
--> | ||
<version>${camundaSpringBoot.version}</version> | ||
</dependency> | ||
|
||
<dependency> | ||
<groupId>org.camunda.bpm.springboot</groupId> | ||
<artifactId>camunda-bpm-spring-boot-starter-rest</artifactId> | ||
<version>${camundaSpringBoot.version}</version> | ||
</dependency> | ||
|
||
<dependency> | ||
<groupId>com.h2database</groupId> | ||
<artifactId>h2</artifactId> | ||
</dependency> | ||
|
||
<!-- required to use H2 as a file based database (Otherwise it's In-Memory) --> | ||
<dependency> | ||
<groupId>org.springframework.boot</groupId> | ||
<artifactId>spring-boot-starter-jdbc</artifactId> | ||
</dependency> | ||
|
||
<!-- Required to use Spin dataformat support --> | ||
<dependency> | ||
<groupId>org.camunda.spin</groupId> | ||
<artifactId>camunda-spin-dataformat-all</artifactId> | ||
</dependency> | ||
<dependency> | ||
<groupId>org.camunda.bpm</groupId> | ||
<artifactId>camunda-engine-plugin-spin</artifactId> | ||
</dependency> | ||
|
||
<dependency> | ||
<groupId>org.springframework.boot</groupId> | ||
<artifactId>spring-boot-starter-test</artifactId> | ||
<scope>test</scope> | ||
</dependency> | ||
<dependency> | ||
<groupId>org.camunda.bpm.extension</groupId> | ||
<artifactId>camunda-bpm-assert</artifactId> | ||
<version>1.2</version> | ||
<scope>test</scope> | ||
</dependency> | ||
<dependency> | ||
<!-- version 1.7.0 currently required by camunda-bpm-assert --> | ||
<groupId>org.assertj</groupId> | ||
<artifactId>assertj-core</artifactId> | ||
<version>1.7.0</version> | ||
<scope>test</scope> | ||
</dependency> | ||
<dependency> | ||
<groupId>org.camunda.bpm.extension</groupId> | ||
<artifactId>camunda-bpm-assert-scenario</artifactId> | ||
<version>0.2</version> | ||
<scope>test</scope> | ||
</dependency> | ||
<!-- Used to generate test coverage reports, see https://github.com/camunda/camunda-consulting/tree/master/snippets/camunda-bpm-process-test-coverage --> | ||
<dependency> | ||
<groupId>org.camunda.bpm.extension</groupId> | ||
<artifactId>camunda-bpm-process-test-coverage</artifactId> | ||
<version>0.3.2</version> | ||
<scope>test</scope> | ||
</dependency> | ||
|
||
<!-- java util logging => slf4j --> | ||
<dependency> | ||
<groupId>org.slf4j</groupId> | ||
<artifactId>jul-to-slf4j</artifactId> | ||
<scope>test</scope> | ||
</dependency> | ||
|
||
<!-- Add your own dependencies here, if in compile scope, they are added to the jar --> | ||
|
||
<dependency> | ||
<groupId>org.springframework.boot</groupId> | ||
<artifactId>spring-boot-devtools</artifactId> | ||
</dependency> | ||
|
||
</dependencies> | ||
|
||
<repositories> | ||
<repository> | ||
<id>camunda-bpm-nexus</id> | ||
<name>Camunda Maven Repository</name> | ||
<url>https://app.camunda.com/nexus/content/groups/public</url> | ||
</repository> | ||
<!-- enable this for EE dependencies (requires credentials in ~/.m2/settings.xml) | ||
<repository> | ||
<id>camunda-bpm-nexus-ee</id> | ||
<name>Camunda Enterprise Maven Repository</name> | ||
<url>https://app.camunda.com/nexus/content/repositories/camunda-bpm-ee</url> | ||
</repository> | ||
--> | ||
</repositories> | ||
|
||
<build> | ||
<finalName>${project.artifactId}</finalName> | ||
<plugins> | ||
<plugin> | ||
<groupId>org.springframework.boot</groupId> | ||
<artifactId>spring-boot-maven-plugin</artifactId> | ||
<version>${springBoot.version}</version> | ||
<configuration> | ||
<layout>ZIP</layout> | ||
</configuration> | ||
<executions> | ||
<execution> | ||
<goals> | ||
<goal>repackage</goal> | ||
</goals> | ||
</execution> | ||
</executions> | ||
</plugin> | ||
<plugin> | ||
<groupId>org.codehaus.mojo</groupId> | ||
<artifactId>exec-maven-plugin</artifactId> | ||
<version>1.6.0</version> | ||
<configuration> | ||
<mainClass>com.camunda.demo.CamundaApplication</mainClass> | ||
</configuration> | ||
</plugin> | ||
</plugins> | ||
</build> | ||
|
||
</project> |
13 changes: 13 additions & 0 deletions
13
snippets/eventsubprocessresume/src/main/java/com/camunda/demo/CamundaApplication.java
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,13 @@ | ||
package com.camunda.demo; | ||
|
||
import org.camunda.bpm.spring.boot.starter.annotation.EnableProcessApplication; | ||
import org.springframework.boot.SpringApplication; | ||
import org.springframework.boot.autoconfigure.SpringBootApplication; | ||
|
||
@SpringBootApplication | ||
@EnableProcessApplication("event-subprocess-resume") | ||
public class CamundaApplication { | ||
public static void main(String... args) { | ||
SpringApplication.run(CamundaApplication.class, args); | ||
} | ||
} |
21 changes: 21 additions & 0 deletions
21
snippets/eventsubprocessresume/src/main/java/com/camunda/demo/ResumeInstanceDelegate.java
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,21 @@ | ||
package com.camunda.demo; | ||
|
||
import org.camunda.bpm.engine.RuntimeService; | ||
import org.camunda.bpm.engine.delegate.DelegateExecution; | ||
import org.camunda.bpm.engine.delegate.JavaDelegate; | ||
import org.springframework.stereotype.Component; | ||
|
||
@Component | ||
public class ResumeInstanceDelegate implements JavaDelegate { | ||
|
||
@Override | ||
public void execute(DelegateExecution execution) throws Exception { | ||
|
||
RuntimeService runtimeService = execution.getProcessEngineServices().getRuntimeService(); | ||
|
||
runtimeService.createProcessInstanceModification(execution.getProcessInstanceId()).startBeforeActivity("Task_DoThat").execute(); | ||
|
||
// The resume activity could also be resolved dynamically, based on a variable that could be set by a user. | ||
|
||
} | ||
} |
Empty file.
15 changes: 15 additions & 0 deletions
15
snippets/eventsubprocessresume/src/main/resources/application.yaml
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,15 @@ | ||
spring.datasource: | ||
url: jdbc:h2:./camunda-db;DB_CLOSE_DELAY=-1;MVCC=TRUE;DB_CLOSE_ON_EXIT=FALSE | ||
#shareable h2 database: jdbc:h2:./camunda-db;DB_CLOSE_DELAY=-1;MVCC=TRUE;DB_CLOSE_ON_EXIT=FALSE;AUTO_SERVER=TRUE | ||
username: sa | ||
password: sa | ||
spring.h2.console.enabled: true | ||
camunda.bpm: | ||
admin-user: | ||
id: demo | ||
password: demo | ||
firstName: Demo | ||
lastName: Demo | ||
filter: | ||
create: All Tasks | ||
server.port: 8080 |
Oops, something went wrong.