diff --git a/pom.xml b/pom.xml index 5d5d381..7c09857 100644 --- a/pom.xml +++ b/pom.xml @@ -4,13 +4,13 @@ io.zeebe zeebe-simple-tasklist - 0.6.0-SNAPSHOT + 1.0.0-SNAPSHOT jar org.camunda camunda-release-parent - 3.7 + 3.9.1 @@ -18,25 +18,25 @@ UTF-8 - 0.26.1 - 0.26.2 + 8.0.4 + 8.0.6 - 2.4.3 - 0.10.0 + 2.7.1 + 1.2.1 - 4.1.2 + 5.1.2 - 11 + 17 ${version.java} ${java.version} ${java.version} - https://app.camunda.com/nexus/content/repositories/zeebe-io-snapshots/ + https://artifacts.camunda.com/artifactory/zeebe-io-snapshots/ - https://app.camunda.com/nexus/content/repositories/zeebe-io/ + https://artifacts.camunda.com/artifactory/zeebe-io/ @@ -50,7 +50,7 @@ - io.zeebe + io.camunda zeebe-bom ${zeebe.version} import @@ -81,7 +81,7 @@ com.h2database h2 - 1.4.200 + 2.1.214 @@ -91,7 +91,7 @@ - io.zeebe.spring + io.camunda spring-zeebe-starter ${version.zeebe.spring} @@ -140,17 +140,17 @@ org.webjars webjars-locator-core - 0.46 + 0.48 org.webjars sockjs-client - 1.1.2 + 1.5.1 org.webjars stomp-websocket - 2.3.3-1 + 2.3.4 @@ -163,7 +163,7 @@ junit junit - 4.13.1 + 4.13.2 test @@ -185,7 +185,7 @@ org.springframework.boot spring-boot-maven-plugin - ${spring.boot.version} + @@ -198,7 +198,7 @@ com.google.cloud.tools jib-maven-plugin - 2.8.0 + 3.2.0 docker.io/camunda/zeebe-simple-tasklist @@ -214,7 +214,7 @@ org.apache.maven.plugins maven-dependency-plugin - 3.1.2 + 3.2.0 copy @@ -251,7 +251,7 @@ zeebe Zeebe Repository - https://app.camunda.com/nexus/content/repositories/zeebe-io/ + https://artifacts.camunda.com/artifactory/zeebe-io/ true @@ -263,7 +263,7 @@ zeebe-snapshots Zeebe Snapshot Repository - https://app.camunda.com/nexus/content/repositories/zeebe-io-snapshots/ + https://artifacts.camunda.com/artifactory/zeebe-io-snapshots/ false @@ -305,9 +305,9 @@ - https://github.com/zeebe-io/zeebe-simple-tasklist - scm:git:git@github.com:zeebe-io/zeebe-simple-tasklist.git - scm:git:git@github.com:zeebe-io/zeebe-simple-tasklist.git + https://github.com/camunda-community-hub/zeebe-simple-tasklist + scm:git:git@github.com:camunda-community-hub/zeebe-simple-tasklist.git + scm:git:git@github.com:camunda-community-hub/zeebe-simple-tasklist.git HEAD diff --git a/src/main/java/io/zeebe/tasklist/HazelcastService.java b/src/main/java/io/zeebe/tasklist/HazelcastService.java index be31cb1..ba9f4f9 100644 --- a/src/main/java/io/zeebe/tasklist/HazelcastService.java +++ b/src/main/java/io/zeebe/tasklist/HazelcastService.java @@ -3,9 +3,9 @@ import com.hazelcast.client.HazelcastClient; import com.hazelcast.client.config.ClientConfig; import com.hazelcast.core.HazelcastInstance; +import io.camunda.zeebe.protocol.record.intent.JobIntent; import io.zeebe.exporter.proto.Schema; import io.zeebe.hazelcast.connect.java.ZeebeHazelcast; -import io.zeebe.protocol.record.intent.JobIntent; import io.zeebe.tasklist.entity.HazelcastConfig; import io.zeebe.tasklist.repository.HazelcastConfigRepository; import io.zeebe.tasklist.repository.TaskRepository; diff --git a/src/main/java/io/zeebe/tasklist/UserTaskJobHandler.java b/src/main/java/io/zeebe/tasklist/UserTaskJobHandler.java index 7508d04..22e4fc4 100644 --- a/src/main/java/io/zeebe/tasklist/UserTaskJobHandler.java +++ b/src/main/java/io/zeebe/tasklist/UserTaskJobHandler.java @@ -1,21 +1,22 @@ package io.zeebe.tasklist; -import io.zeebe.client.api.response.ActivatedJob; -import io.zeebe.client.api.worker.JobClient; -import io.zeebe.client.api.worker.JobHandler; -import io.zeebe.spring.client.annotation.ZeebeWorker; + +import io.camunda.zeebe.client.api.response.ActivatedJob; +import io.camunda.zeebe.client.api.worker.JobClient; +import io.camunda.zeebe.client.api.worker.JobHandler; +import io.camunda.zeebe.spring.client.annotation.ZeebeWorker; import io.zeebe.tasklist.entity.TaskEntity; import io.zeebe.tasklist.repository.TaskRepository; import io.zeebe.tasklist.view.FormField; import io.zeebe.tasklist.view.NotificationService; -import java.time.Duration; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Component; + import java.time.Instant; import java.util.Arrays; import java.util.List; import java.util.Map; import java.util.Optional; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Component; @Component public class UserTaskJobHandler implements JobHandler { @@ -59,11 +60,11 @@ public void handle(JobClient client, ActivatedJob job) { entity.setTaskForm(taskForm); final String assignee = - customHeaders.getOrDefault("assignee", (String) variables.get("assignee")); + customHeaders.getOrDefault("io.camunda.zeebe:assignee", (String) variables.get("assignee")); entity.setAssignee(assignee); final String candidateGroup = - customHeaders.getOrDefault("candidateGroup", (String) variables.get("candidateGroup")); + customHeaders.getOrDefault("io.camunda.zeebe:candidateGroup", (String) variables.get("candidateGroup")); entity.setCandidateGroup(candidateGroup); repository.save(entity); diff --git a/src/main/java/io/zeebe/tasklist/ZeebeSimpleTasklistApp.java b/src/main/java/io/zeebe/tasklist/ZeebeSimpleTasklistApp.java index 1f1ea8b..090d508 100644 --- a/src/main/java/io/zeebe/tasklist/ZeebeSimpleTasklistApp.java +++ b/src/main/java/io/zeebe/tasklist/ZeebeSimpleTasklistApp.java @@ -15,7 +15,7 @@ */ package io.zeebe.tasklist; -import io.zeebe.spring.client.EnableZeebeClient; +import io.camunda.zeebe.spring.client.EnableZeebeClient; import javax.annotation.PostConstruct; import org.slf4j.Logger; import org.slf4j.LoggerFactory; diff --git a/src/main/java/io/zeebe/tasklist/rest/TaskResource.java b/src/main/java/io/zeebe/tasklist/rest/TaskResource.java index b2d8ab8..10b4483 100644 --- a/src/main/java/io/zeebe/tasklist/rest/TaskResource.java +++ b/src/main/java/io/zeebe/tasklist/rest/TaskResource.java @@ -15,19 +15,16 @@ */ package io.zeebe.tasklist.rest; -import io.zeebe.client.ZeebeClient; +import io.camunda.zeebe.client.ZeebeClient; import io.zeebe.tasklist.entity.TaskEntity; import io.zeebe.tasklist.repository.TaskRepository; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.security.core.context.SecurityContextHolder; +import org.springframework.web.bind.annotation.*; + import java.util.List; import java.util.Map; import java.util.stream.Collectors; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.security.core.context.SecurityContextHolder; -import org.springframework.web.bind.annotation.PathVariable; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RequestMethod; -import org.springframework.web.bind.annotation.RestController; @RestController @RequestMapping("/api/tasks") diff --git a/src/main/resources/application.yaml b/src/main/resources/application.yaml index 1c9b13c..103bbd9 100644 --- a/src/main/resources/application.yaml +++ b/src/main/resources/application.yaml @@ -2,7 +2,7 @@ zeebe: client: worker: defaultName: zeebe-simple-tasklist - defaultType: user + defaultType: io.camunda.zeebe:userTask threads: 2 hazelcast: @@ -15,7 +15,7 @@ zeebe: adminPassword: demo job.timeout: 2592000000 # 30 days - broker.contactPoint: 127.0.0.1:26500 + broker.gateway-address: 127.0.0.1:26500 security.plaintext: true spring: @@ -41,11 +41,14 @@ spring: pageable: default-page-size: 10 + main: + allow-circular-references: true + server: port: 8081 logging: level: root: ERROR - io.zeebe: INFO + io.camunda: INFO io.zeebe.tasklist: DEBUG \ No newline at end of file diff --git a/src/main/resources/public/js/app.js b/src/main/resources/public/js/app.js index 9d5e3ef..661e6d9 100644 --- a/src/main/resources/public/js/app.js +++ b/src/main/resources/public/js/app.js @@ -40,33 +40,32 @@ function withSecurityToken(url) { // -------------------------------------------------------------------- var stompClient = null; -              -            function connect() { -                var socket = new SockJS('/notifications'); -                stompClient = Stomp.over(socket);  -                stompClient.connect({}, function(frame) { -                    stompClient.subscribe('/notifications/tasks', function(message) { -                      handleMessage(JSON.parse(message.body)); -                    }); -                }); -            } -              -            function disconnect() { -                if(stompClient != null) { -                    stompClient.disconnect(); -                } -            } -              -            function sendMessage(msg) { -                stompClient.send("/notifications", {}, -                  JSON.stringify(msg)); -            } -              -            function handleMessage(msg) { - var message = msg.message; - - showInfo(message); - } + +function connect() { + var socket = new SockJS('/notifications'); + stompClient = Stomp.over(socket); + stompClient.connect({}, function(frame) { + stompClient.subscribe('/notifications/tasks', function(message) { + handleMessage(JSON.parse(message.body)); + }); + }); +} + +function disconnect() { + if(stompClient != null) { + stompClient.disconnect(); + } +} + +function sendMessage(msg) { + stompClient.send("/notifications", {}, + JSON.stringify(msg)); +} + +function handleMessage(msg) { + var message = msg.message; + showInfo(message); +} // -------------------------------------------------------------------- diff --git a/src/test/java/io/zeebe/tasklist/Demo.java b/src/test/java/io/zeebe/tasklist/Demo.java index 3048366..7eb6aff 100644 --- a/src/test/java/io/zeebe/tasklist/Demo.java +++ b/src/test/java/io/zeebe/tasklist/Demo.java @@ -1,8 +1,10 @@ package io.zeebe.tasklist; -import io.zeebe.client.ZeebeClient; -import io.zeebe.model.bpmn.Bpmn; -import io.zeebe.model.bpmn.BpmnModelInstance; + +import io.camunda.zeebe.client.ZeebeClient; +import io.camunda.zeebe.model.bpmn.Bpmn; +import io.camunda.zeebe.model.bpmn.BpmnModelInstance; + import java.io.IOException; import java.net.URISyntaxException; import java.nio.file.Files; @@ -39,7 +41,7 @@ public static void main(String[] args) { .zeebeTaskHeader("taskForm", getCustomTaskForm())) .done(); - client.newDeployCommand().addWorkflowModel(workflow, "demoProcess.bpmn").send().join(); + client.newDeployCommand().addProcessModel(workflow, "demoProcess.bpmn").send().join(); IntStream.range(0, 3) .forEach( diff --git a/src/test/resources/Process_162pre5.bpmn b/src/test/resources/Process_162pre5.bpmn new file mode 100644 index 0000000..4afe3c3 --- /dev/null +++ b/src/test/resources/Process_162pre5.bpmn @@ -0,0 +1,59 @@ + + + + + { + "schemaVersion": 2, + "components": [ + { + "label": "Text Field", + "type": "textfield", + "id": "Field_1bavcnh", + "key": "field_0iiy0yx" + } + ], + "type": "default", + "id": "Form_1n1sjma", + "executionPlatform": "Camunda Cloud", + "executionPlatformVersion": "1.3" +} + + + Flow_0r87u6s + + + + Flow_0w9j5ts + + + + + + + + Flow_0r87u6s + Flow_0w9j5ts + + + + + + + + + + + + + + + + + + + + + + + +