From 37260272e3b0f3e2061169650f1bcf50ddd84445 Mon Sep 17 00:00:00 2001 From: Philipp Ossler Date: Tue, 14 Mar 2023 05:37:17 +0100 Subject: [PATCH 1/2] deps: dump connectors from 0.16.1 to 0.17.0 * dump connector-sdk from 0.6.0 to 0.7.0 --- pom.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pom.xml b/pom.xml index e71fdd7..cf343e9 100644 --- a/pom.xml +++ b/pom.xml @@ -26,8 +26,8 @@ 1.2.0-alpha2 1.4.0-alpha1 8.1.17 - 0.16.1 - 0.6.0 + 0.17.0 + 0.7.0 1.8.10 2.7.8 From 8416a64cbcb38b42c7486b53d65f7391e23d9092 Mon Sep 17 00:00:00 2001 From: Philipp Ossler Date: Tue, 14 Mar 2023 06:03:23 +0100 Subject: [PATCH 2/2] refactor: adopt new connectors API --- .../community/zeebe/play/connectors/ConnectorService.kt | 6 ++---- .../community/zeebe/play/connectors/ConnectorsConfig.kt | 7 ++++++- .../community/zeebe/play/rest/ConnectorsResource.kt | 4 +++- 3 files changed, 11 insertions(+), 6 deletions(-) diff --git a/src/main/kotlin/org/camunda/community/zeebe/play/connectors/ConnectorService.kt b/src/main/kotlin/org/camunda/community/zeebe/play/connectors/ConnectorService.kt index bc8a32d..14ec4eb 100644 --- a/src/main/kotlin/org/camunda/community/zeebe/play/connectors/ConnectorService.kt +++ b/src/main/kotlin/org/camunda/community/zeebe/play/connectors/ConnectorService.kt @@ -1,7 +1,7 @@ package org.camunda.community.zeebe.play.connectors import io.camunda.connector.impl.outbound.OutboundConnectorConfiguration -import io.camunda.connector.runtime.util.outbound.OutboundConnectorRegistrationHelper +import io.camunda.connector.runtime.util.discovery.SPIConnectorDiscovery import io.camunda.zeebe.model.bpmn.Bpmn import io.camunda.zeebe.model.bpmn.BpmnModelInstance import io.camunda.zeebe.model.bpmn.instance.zeebe.ZeebeInput @@ -55,9 +55,7 @@ class ConnectorService( } fun findAvailableConnectors(): List { - return OutboundConnectorRegistrationHelper - .parseFromSPI() - .toList() + return SPIConnectorDiscovery.discoverOutbound().toList() } } \ No newline at end of file diff --git a/src/main/kotlin/org/camunda/community/zeebe/play/connectors/ConnectorsConfig.kt b/src/main/kotlin/org/camunda/community/zeebe/play/connectors/ConnectorsConfig.kt index 85a9c0b..4f3fb2f 100644 --- a/src/main/kotlin/org/camunda/community/zeebe/play/connectors/ConnectorsConfig.kt +++ b/src/main/kotlin/org/camunda/community/zeebe/play/connectors/ConnectorsConfig.kt @@ -1,6 +1,7 @@ package org.camunda.community.zeebe.play.connectors import io.camunda.connector.api.secret.SecretProvider +import io.camunda.connector.runtime.util.ConnectorHelper import io.camunda.connector.runtime.util.outbound.ConnectorJobHandler import io.camunda.zeebe.client.ZeebeClient import io.camunda.zeebe.spring.client.lifecycle.ZeebeClientLifecycle @@ -39,10 +40,14 @@ class ConnectorsConfig( connectorService .findAvailableConnectors() .forEach { connectorConfig -> + val connector = + ConnectorHelper.instantiateConnector(connectorConfig.connectorClass) + val jobHandler = ConnectorJobHandler(connector, secretProvider) + zeebeClient .newWorker() .jobType(connectorConfig.type) - .handler(ConnectorJobHandler(connectorConfig.function, secretProvider)) + .handler(jobHandler) .name(connectorConfig.name) .fetchVariables(connectorConfig.inputVariables.toList()) .open() diff --git a/src/main/kotlin/org/camunda/community/zeebe/play/rest/ConnectorsResource.kt b/src/main/kotlin/org/camunda/community/zeebe/play/rest/ConnectorsResource.kt index ef79ef4..14cf270 100644 --- a/src/main/kotlin/org/camunda/community/zeebe/play/rest/ConnectorsResource.kt +++ b/src/main/kotlin/org/camunda/community/zeebe/play/rest/ConnectorsResource.kt @@ -1,6 +1,7 @@ package org.camunda.community.zeebe.play.rest import io.camunda.connector.impl.outbound.OutboundConnectorConfiguration +import io.camunda.connector.runtime.util.ConnectorHelper import io.camunda.connector.runtime.util.outbound.ConnectorJobHandler import io.camunda.zeebe.client.ZeebeClient import io.camunda.zeebe.client.api.response.ActivatedJob @@ -35,7 +36,8 @@ class ConnectorsResource( .find { it.type == jobType } ?: throw RuntimeException("No connector found with job type '$jobType'.")) - val jobHandler = ConnectorJobHandler(connectorConfig.function, connectorsSecretProvider) + val connector = ConnectorHelper.instantiateConnector(connectorConfig.connectorClass) + val jobHandler = ConnectorJobHandler(connector, connectorsSecretProvider) findConnectorJob(connectorConfig, jobKey) ?.let { jobHandler.handle(zeebeClient, it) }