From 7bfabafd069e9e1e1b0289ae3aecdc81ac9628c9 Mon Sep 17 00:00:00 2001 From: addjuarez <6789375+addjuarez@users.noreply.github.com> Date: Thu, 9 Nov 2023 18:05:20 +0000 Subject: [PATCH 01/11] Show registered workflow Signed-off-by: addjuarez <6789375+addjuarez@users.noreply.github.com> --- .../workflows/runtime/WorkflowRuntimeBuilder.java | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/sdk-workflows/src/main/java/io/dapr/workflows/runtime/WorkflowRuntimeBuilder.java b/sdk-workflows/src/main/java/io/dapr/workflows/runtime/WorkflowRuntimeBuilder.java index b8465cdda..f34005d4c 100644 --- a/sdk-workflows/src/main/java/io/dapr/workflows/runtime/WorkflowRuntimeBuilder.java +++ b/sdk-workflows/src/main/java/io/dapr/workflows/runtime/WorkflowRuntimeBuilder.java @@ -16,10 +16,19 @@ import com.microsoft.durabletask.DurableTaskGrpcWorkerBuilder; import io.dapr.utils.NetworkUtils; import io.dapr.workflows.Workflow; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import java.util.HashSet; +import java.util.Set; public class WorkflowRuntimeBuilder { private static volatile WorkflowRuntime instance; private DurableTaskGrpcWorkerBuilder builder; + private static final Logger LOGGER = LoggerFactory.getLogger(WorkflowRuntimeBuilder.class); + private static volatile Set activity_Set = new HashSet(); + private static volatile Set workflow_Set = new HashSet(); + public WorkflowRuntimeBuilder() { this.builder = new DurableTaskGrpcWorkerBuilder().grpcChannel(NetworkUtils.buildGrpcManagedChannel()); @@ -38,6 +47,8 @@ public WorkflowRuntime build() { } } } + LOGGER.info("List of registered workflows: " + workflow_Set); + LOGGER.info("List of registered activites: " + activity_Set); return instance; } @@ -52,7 +63,7 @@ public WorkflowRuntimeBuilder registerWorkflow(Class cla this.builder = this.builder.addOrchestration( new OrchestratorWrapper<>(clazz) ); - + WorkflowRuntimeBuilder.workflow_Set.add(clazz.getCanonicalName()); return this; } @@ -66,5 +77,6 @@ public void registerActivity(Class clazz) { this.builder = this.builder.addActivity( new ActivityWrapper<>(clazz) ); + WorkflowRuntimeBuilder.activity_Set.add(clazz.getCanonicalName()); } } From b35ebc8548637131da8f465aec1793fd71fd33fb Mon Sep 17 00:00:00 2001 From: kaibocai <89094811+kaibocai@users.noreply.github.com> Date: Mon, 6 Nov 2023 13:11:22 -0600 Subject: [PATCH 02/11] Add `NewWorkflowOption` to config version, time, input, etc when start a new workflow (#945) * add NewWorkflowOption Signed-off-by: kaibocai <89094811+kaibocai@users.noreply.github.com> * fix style Signed-off-by: kaibocai <89094811+kaibocai@users.noreply.github.com> * add unit test Signed-off-by: kaibocai <89094811+kaibocai@users.noreply.github.com> * add more unit tests for improving coverage Signed-off-by: kaibocai <89094811+kaibocai@users.noreply.github.com> --------- Signed-off-by: kaibocai <89094811+kaibocai@users.noreply.github.com> Signed-off-by: addjuarez <6789375+addjuarez@users.noreply.github.com> --- .../workflows/client/DaprWorkflowClient.java | 13 ++ .../workflows/client/NewWorkflowOption.java | 114 ++++++++++++++++++ .../client/DaprWorkflowClientTest.java | 14 +++ .../client/NewWorkflowOptionTest.java | 28 +++++ 4 files changed, 169 insertions(+) create mode 100644 sdk-workflows/src/main/java/io/dapr/workflows/client/NewWorkflowOption.java create mode 100644 sdk-workflows/src/test/java/io/dapr/workflows/client/NewWorkflowOptionTest.java diff --git a/sdk-workflows/src/main/java/io/dapr/workflows/client/DaprWorkflowClient.java b/sdk-workflows/src/main/java/io/dapr/workflows/client/DaprWorkflowClient.java index 2915b2c71..42f12f328 100644 --- a/sdk-workflows/src/main/java/io/dapr/workflows/client/DaprWorkflowClient.java +++ b/sdk-workflows/src/main/java/io/dapr/workflows/client/DaprWorkflowClient.java @@ -119,6 +119,19 @@ public String scheduleNewWorkflow(Class clazz, Object in return this.innerClient.scheduleNewOrchestrationInstance(clazz.getCanonicalName(), input, instanceId); } + /** + * Schedules a new workflow with a specified set of options for execution. + * + * @param any Workflow type + * @param clazz Class extending Workflow to start an instance of. + * @param options the options for the new workflow, including input, instance ID, etc. + * @return the instanceId parameter value. + */ + public String scheduleNewWorkflow(Class clazz, NewWorkflowOption options) { + return this.innerClient.scheduleNewOrchestrationInstance(clazz.getCanonicalName(), + options.getNewOrchestrationInstanceOptions()); + } + /** * Terminates the workflow associated with the provided instance id. * diff --git a/sdk-workflows/src/main/java/io/dapr/workflows/client/NewWorkflowOption.java b/sdk-workflows/src/main/java/io/dapr/workflows/client/NewWorkflowOption.java new file mode 100644 index 000000000..d802c8f2c --- /dev/null +++ b/sdk-workflows/src/main/java/io/dapr/workflows/client/NewWorkflowOption.java @@ -0,0 +1,114 @@ +/* + * Copyright 2023 The Dapr Authors + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * http://www.apache.org/licenses/LICENSE-2.0 + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and +limitations under the License. +*/ + +package io.dapr.workflows.client; + +import com.microsoft.durabletask.NewOrchestrationInstanceOptions; + +import java.time.Instant; + +/** + * Options for starting a new instance of a workflow. + */ +public class NewWorkflowOption { + private final NewOrchestrationInstanceOptions newOrchestrationInstanceOptions = new NewOrchestrationInstanceOptions(); + + /** + * Sets the version of the workflow to start. + * + * @param version the user-defined version of workflow + * @return this {@link NewWorkflowOption} object + */ + public NewWorkflowOption setVersion(String version) { + this.newOrchestrationInstanceOptions.setVersion(version); + return this; + } + + /** + * Sets the instance ID of the workflow to start. + * + *

If no instance ID is configured, the workflow will be created with a randomly generated instance ID. + * + * @param instanceId the ID of the new workflow + * @return this {@link NewWorkflowOption} object + */ + public NewWorkflowOption setInstanceId(String instanceId) { + this.newOrchestrationInstanceOptions.setInstanceId(instanceId); + return this; + } + + /** + * Sets the input of the workflow to start. + * + * @param input the input of the new workflow + * @return this {@link NewWorkflowOption} object + */ + public NewWorkflowOption setInput(Object input) { + this.newOrchestrationInstanceOptions.setInput(input); + return this; + } + + /** + * Sets the start time of the new workflow. + * + *

By default, new workflow instances start executing immediately. This method can be used + * to start them at a specific time in the future. + * + * @param startTime the start time of the new workflow + * @return this {@link NewWorkflowOption} object + */ + public NewWorkflowOption setStartTime(Instant startTime) { + this.newOrchestrationInstanceOptions.setStartTime(startTime); + return this; + } + + /** + * Gets the user-specified version of the new workflow. + * + * @return the user-specified version of the new workflow. + */ + public String getVersion() { + return this.newOrchestrationInstanceOptions.getVersion(); + } + + /** + * Gets the instance ID of the new workflow. + * + * @return the instance ID of the new workflow. + */ + public String getInstanceId() { + return this.newOrchestrationInstanceOptions.getInstanceId(); + } + + /** + * Gets the input of the new workflow. + * + * @return the input of the new workflow. + */ + public Object getInput() { + return this.newOrchestrationInstanceOptions.getInput(); + } + + /** + * Gets the configured start time of the new workflow instance. + * + * @return the configured start time of the new workflow instance. + */ + public Instant getStartTime() { + return this.newOrchestrationInstanceOptions.getStartTime(); + } + + public NewOrchestrationInstanceOptions getNewOrchestrationInstanceOptions() { + return newOrchestrationInstanceOptions; + } +} diff --git a/sdk-workflows/src/test/java/io/dapr/workflows/client/DaprWorkflowClientTest.java b/sdk-workflows/src/test/java/io/dapr/workflows/client/DaprWorkflowClientTest.java index 50b69f93b..45c5c8c9e 100644 --- a/sdk-workflows/src/test/java/io/dapr/workflows/client/DaprWorkflowClientTest.java +++ b/sdk-workflows/src/test/java/io/dapr/workflows/client/DaprWorkflowClientTest.java @@ -26,6 +26,7 @@ import java.lang.reflect.Constructor; import java.time.Duration; +import java.time.Instant; import java.util.Arrays; import java.util.concurrent.TimeoutException; @@ -106,6 +107,19 @@ public void scheduleNewWorkflowWithArgsNameInputInstance() { .scheduleNewOrchestrationInstance(expectedName, expectedInput, expectedInstanceId); } + @Test + public void scheduleNewWorkflowWithNewWorkflowOption() { + String expectedName = TestWorkflow.class.getCanonicalName(); + Object expectedInput = new Object(); + NewWorkflowOption newWorkflowOption = new NewWorkflowOption(); + newWorkflowOption.setInput(expectedInput).setStartTime(Instant.now()); + + client.scheduleNewWorkflow(TestWorkflow.class, newWorkflowOption); + + verify(mockInnerClient, times(1)) + .scheduleNewOrchestrationInstance(expectedName, newWorkflowOption.getNewOrchestrationInstanceOptions()); + } + @Test public void terminateWorkflow() { String expectedArgument = "TestWorkflowInstanceId"; diff --git a/sdk-workflows/src/test/java/io/dapr/workflows/client/NewWorkflowOptionTest.java b/sdk-workflows/src/test/java/io/dapr/workflows/client/NewWorkflowOptionTest.java new file mode 100644 index 000000000..78feb84f2 --- /dev/null +++ b/sdk-workflows/src/test/java/io/dapr/workflows/client/NewWorkflowOptionTest.java @@ -0,0 +1,28 @@ +package io.dapr.workflows.client; + +import org.junit.jupiter.api.Assertions; +import org.junit.jupiter.api.Test; + +import java.time.Instant; + +public class NewWorkflowOptionTest { + + @Test + void testNewWorkflowOption() { + NewWorkflowOption workflowOption = new NewWorkflowOption(); + String version = "v1"; + String instanceId = "123"; + Object input = new Object(); + Instant startTime = Instant.now(); + + workflowOption.setVersion(version) + .setInstanceId(instanceId) + .setInput(input) + .setStartTime(startTime); + + Assertions.assertEquals(version, workflowOption.getVersion()); + Assertions.assertEquals(instanceId, workflowOption.getInstanceId()); + Assertions.assertEquals(input, workflowOption.getInput()); + Assertions.assertEquals(startTime, workflowOption.getStartTime()); + } +} From cbe909d7e7f1dfe5f8f4b65ed0c427f319a6fdc2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C3=ABl=20Hompus?= Date: Mon, 13 Nov 2023 19:26:06 +0100 Subject: [PATCH 03/11] Update CLI link in example readme's (#951) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Updated pre-requisite link to Dapr CLI Signed-off-by: Michaël Hompus * Update JDK list to match all other examples Signed-off-by: Michaël Hompus --------- Signed-off-by: Michaël Hompus Signed-off-by: addjuarez <6789375+addjuarez@users.noreply.github.com> --- examples/src/main/java/io/dapr/examples/actors/README.md | 2 +- .../src/main/java/io/dapr/examples/bindings/http/README.md | 2 +- .../java/io/dapr/examples/configuration/grpc/README.md | 2 +- .../java/io/dapr/examples/configuration/http/README.md | 2 +- .../src/main/java/io/dapr/examples/exception/README.md | 2 +- .../src/main/java/io/dapr/examples/invoke/grpc/README.md | 2 +- .../src/main/java/io/dapr/examples/invoke/http/README.md | 2 +- .../src/main/java/io/dapr/examples/lock/grpc/README.md | 2 +- .../src/main/java/io/dapr/examples/lock/http/README.md | 2 +- examples/src/main/java/io/dapr/examples/pubsub/README.md | 2 +- .../src/main/java/io/dapr/examples/querystate/README.md | 7 +++++-- examples/src/main/java/io/dapr/examples/secrets/README.md | 2 +- examples/src/main/java/io/dapr/examples/state/README.md | 2 +- examples/src/main/java/io/dapr/examples/tracing/README.md | 2 +- .../src/main/java/io/dapr/examples/unittesting/README.md | 2 +- .../src/main/java/io/dapr/examples/workflows/README.md | 2 +- 16 files changed, 20 insertions(+), 17 deletions(-) diff --git a/examples/src/main/java/io/dapr/examples/actors/README.md b/examples/src/main/java/io/dapr/examples/actors/README.md index 05c1a3157..a889eee5a 100644 --- a/examples/src/main/java/io/dapr/examples/actors/README.md +++ b/examples/src/main/java/io/dapr/examples/actors/README.md @@ -13,7 +13,7 @@ This example contains the follow classes: ## Pre-requisites -* [Dapr and Dapr Cli](https://docs.dapr.io/getting-started/install-dapr/). +* [Dapr CLI](https://docs.dapr.io/getting-started/install-dapr-cli/). * Java JDK 11 (or greater): * [Microsoft JDK 11](https://docs.microsoft.com/en-us/java/openjdk/download#openjdk-11) * [Oracle JDK 11](https://www.oracle.com/technetwork/java/javase/downloads/index.html#JDK11) diff --git a/examples/src/main/java/io/dapr/examples/bindings/http/README.md b/examples/src/main/java/io/dapr/examples/bindings/http/README.md index 8eb862e04..f7de93235 100644 --- a/examples/src/main/java/io/dapr/examples/bindings/http/README.md +++ b/examples/src/main/java/io/dapr/examples/bindings/http/README.md @@ -17,7 +17,7 @@ Visit [this](https://github.com/dapr/components-contrib/tree/master/bindings) li ## Pre-requisites -* [Dapr and Dapr Cli](https://docs.dapr.io/getting-started/install-dapr/). +* [Dapr CLI](https://docs.dapr.io/getting-started/install-dapr-cli/). * Java JDK 11 (or greater): * [Microsoft JDK 11](https://docs.microsoft.com/en-us/java/openjdk/download#openjdk-11) * [Oracle JDK 11](https://www.oracle.com/technetwork/java/javase/downloads/index.html#JDK11) diff --git a/examples/src/main/java/io/dapr/examples/configuration/grpc/README.md b/examples/src/main/java/io/dapr/examples/configuration/grpc/README.md index 17223570e..5468bb40f 100644 --- a/examples/src/main/java/io/dapr/examples/configuration/grpc/README.md +++ b/examples/src/main/java/io/dapr/examples/configuration/grpc/README.md @@ -11,7 +11,7 @@ The Java SDK exposes several methods for this - ## Pre-requisites -* [Dapr and Dapr Cli](https://docs.dapr.io/getting-started/install-dapr/). +* [Dapr CLI](https://docs.dapr.io/getting-started/install-dapr-cli/). * Java JDK 11 (or greater): * [Microsoft JDK 11](https://docs.microsoft.com/en-us/java/openjdk/download#openjdk-11) * [Oracle JDK 11](https://www.oracle.com/technetwork/java/javase/downloads/index.html#JDK11) diff --git a/examples/src/main/java/io/dapr/examples/configuration/http/README.md b/examples/src/main/java/io/dapr/examples/configuration/http/README.md index ba870d081..5b6d6a027 100644 --- a/examples/src/main/java/io/dapr/examples/configuration/http/README.md +++ b/examples/src/main/java/io/dapr/examples/configuration/http/README.md @@ -12,7 +12,7 @@ The java SDK exposes several methods for this - ## Pre-requisites -* [Dapr and Dapr Cli](https://docs.dapr.io/getting-started/install-dapr/). +* [Dapr CLI](https://docs.dapr.io/getting-started/install-dapr-cli/). * Java JDK 11 (or greater): * [Microsoft JDK 11](https://docs.microsoft.com/en-us/java/openjdk/download#openjdk-11) * [Oracle JDK 11](https://www.oracle.com/technetwork/java/javase/downloads/index.html#JDK11) diff --git a/examples/src/main/java/io/dapr/examples/exception/README.md b/examples/src/main/java/io/dapr/examples/exception/README.md index 375fa9c10..4ccfd2515 100644 --- a/examples/src/main/java/io/dapr/examples/exception/README.md +++ b/examples/src/main/java/io/dapr/examples/exception/README.md @@ -4,7 +4,7 @@ This sample illustrates how to handle exceptions in Dapr. ## Pre-requisites -* [Dapr and Dapr Cli](https://docs.dapr.io/getting-started/install-dapr/). +* [Dapr CLI](https://docs.dapr.io/getting-started/install-dapr-cli/). * Java JDK 11 (or greater): * [Microsoft JDK 11](https://docs.microsoft.com/en-us/java/openjdk/download#openjdk-11) * [Oracle JDK 11](https://www.oracle.com/technetwork/java/javase/downloads/index.html#JDK11) diff --git a/examples/src/main/java/io/dapr/examples/invoke/grpc/README.md b/examples/src/main/java/io/dapr/examples/invoke/grpc/README.md index 3333574f0..c05017628 100644 --- a/examples/src/main/java/io/dapr/examples/invoke/grpc/README.md +++ b/examples/src/main/java/io/dapr/examples/invoke/grpc/README.md @@ -4,7 +4,7 @@ In this example, you will run a Grpc service and client using Dapr's invoke feat ## Pre-requisites -* [Dapr and Dapr Cli](https://docs.dapr.io/getting-started/install-dapr/). +* [Dapr CLI](https://docs.dapr.io/getting-started/install-dapr-cli/). * Java JDK 11 (or greater): * [Microsoft JDK 11](https://docs.microsoft.com/en-us/java/openjdk/download#openjdk-11) * [Oracle JDK 11](https://www.oracle.com/technetwork/java/javase/downloads/index.html#JDK11) diff --git a/examples/src/main/java/io/dapr/examples/invoke/http/README.md b/examples/src/main/java/io/dapr/examples/invoke/http/README.md index 77538f7c6..55757d737 100644 --- a/examples/src/main/java/io/dapr/examples/invoke/http/README.md +++ b/examples/src/main/java/io/dapr/examples/invoke/http/README.md @@ -14,7 +14,7 @@ This sample uses the Client provided in Dapr Java SDK invoking a remote method. ## Pre-requisites -* [Dapr and Dapr CLI](https://docs.dapr.io/getting-started/install-dapr/). +* [Dapr CLI](https://docs.dapr.io/getting-started/install-dapr-cli/). * Java JDK 11 (or greater): * [Microsoft JDK 11](https://docs.microsoft.com/en-us/java/openjdk/download#openjdk-11) * [Oracle JDK 11](https://www.oracle.com/technetwork/java/javase/downloads/index.html#JDK11) diff --git a/examples/src/main/java/io/dapr/examples/lock/grpc/README.md b/examples/src/main/java/io/dapr/examples/lock/grpc/README.md index 7ab5a9e60..a98cf2245 100644 --- a/examples/src/main/java/io/dapr/examples/lock/grpc/README.md +++ b/examples/src/main/java/io/dapr/examples/lock/grpc/README.md @@ -11,7 +11,7 @@ The java SDK exposes several methods for this - ## Pre-requisites -* [Dapr and Dapr Cli](https://docs.dapr.io/getting-started/install-dapr/). +* [Dapr CLI](https://docs.dapr.io/getting-started/install-dapr-cli/). * Java JDK 11 (or greater): * [Microsoft JDK 11](https://docs.microsoft.com/en-us/java/openjdk/download#openjdk-11) * [Oracle JDK 11](https://www.oracle.com/technetwork/java/javase/downloads/index.html#JDK11) diff --git a/examples/src/main/java/io/dapr/examples/lock/http/README.md b/examples/src/main/java/io/dapr/examples/lock/http/README.md index bd02360b0..d0a9c944f 100644 --- a/examples/src/main/java/io/dapr/examples/lock/http/README.md +++ b/examples/src/main/java/io/dapr/examples/lock/http/README.md @@ -11,7 +11,7 @@ The java SDK exposes several methods for this - ## Pre-requisites -* [Dapr and Dapr Cli](https://docs.dapr.io/getting-started/install-dapr/). +* [Dapr CLI](https://docs.dapr.io/getting-started/install-dapr-cli/). * Java JDK 11 (or greater): * [Microsoft JDK 11](https://docs.microsoft.com/en-us/java/openjdk/download#openjdk-11) * [Oracle JDK 11](https://www.oracle.com/technetwork/java/javase/downloads/index.html#JDK11) diff --git a/examples/src/main/java/io/dapr/examples/pubsub/README.md b/examples/src/main/java/io/dapr/examples/pubsub/README.md index a06850e45..ce723510b 100644 --- a/examples/src/main/java/io/dapr/examples/pubsub/README.md +++ b/examples/src/main/java/io/dapr/examples/pubsub/README.md @@ -9,7 +9,7 @@ Visit [this](https://docs.dapr.io/developing-applications/building-blocks/pubsub This sample uses the HTTP Springboot integration provided in Dapr Java SDK for subscribing, and gRPC client for publishing. This example uses Redis Streams (enabled in Redis versions => 5). ## Pre-requisites -* [Dapr and Dapr Cli](https://docs.dapr.io/getting-started/install-dapr/). +* [Dapr CLI](https://docs.dapr.io/getting-started/install-dapr-cli/). * Java JDK 11 (or greater): * [Microsoft JDK 11](https://docs.microsoft.com/en-us/java/openjdk/download#openjdk-11) * [Oracle JDK 11](https://www.oracle.com/technetwork/java/javase/downloads/index.html#JDK11) diff --git a/examples/src/main/java/io/dapr/examples/querystate/README.md b/examples/src/main/java/io/dapr/examples/querystate/README.md index ff24893ab..a7bae87d2 100644 --- a/examples/src/main/java/io/dapr/examples/querystate/README.md +++ b/examples/src/main/java/io/dapr/examples/querystate/README.md @@ -4,8 +4,11 @@ This sample illustrates the capabilities provided by Dapr Java SDK for querying ## Pre-requisites -* [Dapr and Dapr Cli](https://docs.dapr.io/getting-started/install-dapr/). -* Java JDK 11 (or greater): [Oracle JDK](https://www.oracle.com/technetwork/java/javase/downloads/index.html#JDK11) or [OpenJDK](https://jdk.java.net/13/). +* [Dapr CLI](https://docs.dapr.io/getting-started/install-dapr-cli/). +* Java JDK 11 (or greater): + * [Microsoft JDK 11](https://docs.microsoft.com/en-us/java/openjdk/download#openjdk-11) + * [Oracle JDK 11](https://www.oracle.com/technetwork/java/javase/downloads/index.html#JDK11) + * [OpenJDK 11](https://jdk.java.net/11/) * [Apache Maven](https://maven.apache.org/install.html) version 3.x. ### Checking out the code diff --git a/examples/src/main/java/io/dapr/examples/secrets/README.md b/examples/src/main/java/io/dapr/examples/secrets/README.md index 3b51db48d..efc485d6b 100644 --- a/examples/src/main/java/io/dapr/examples/secrets/README.md +++ b/examples/src/main/java/io/dapr/examples/secrets/README.md @@ -17,7 +17,7 @@ Visit [this](https://github.com/dapr/components-contrib/tree/master/secretstores ## Pre-requisites -* [Dapr and Dapr Cli](https://docs.dapr.io/getting-started/install-dapr/). +* [Dapr CLI](https://docs.dapr.io/getting-started/install-dapr-cli/). * Java JDK 11 (or greater): * [Microsoft JDK 11](https://docs.microsoft.com/en-us/java/openjdk/download#openjdk-11) * [Oracle JDK 11](https://www.oracle.com/technetwork/java/javase/downloads/index.html#JDK11) diff --git a/examples/src/main/java/io/dapr/examples/state/README.md b/examples/src/main/java/io/dapr/examples/state/README.md index 839233012..ef42f34ca 100644 --- a/examples/src/main/java/io/dapr/examples/state/README.md +++ b/examples/src/main/java/io/dapr/examples/state/README.md @@ -4,7 +4,7 @@ This sample illustrates the capabilities provided by Dapr Java SDK for state man ## Pre-requisites -* [Dapr and Dapr Cli](https://docs.dapr.io/getting-started/install-dapr/). +* [Dapr CLI](https://docs.dapr.io/getting-started/install-dapr-cli/). * Java JDK 11 (or greater): * [Microsoft JDK 11](https://docs.microsoft.com/en-us/java/openjdk/download#openjdk-11) * [Oracle JDK 11](https://www.oracle.com/technetwork/java/javase/downloads/index.html#JDK11) diff --git a/examples/src/main/java/io/dapr/examples/tracing/README.md b/examples/src/main/java/io/dapr/examples/tracing/README.md index 0a93b5808..2afc6b1ec 100644 --- a/examples/src/main/java/io/dapr/examples/tracing/README.md +++ b/examples/src/main/java/io/dapr/examples/tracing/README.md @@ -16,7 +16,7 @@ This sample uses the Client provided in Dapr Java SDK invoking a remote method a ## Pre-requisites -* [Dapr and Dapr CLI](https://docs.dapr.io/getting-started/install-dapr/). +* [Dapr CLI](https://docs.dapr.io/getting-started/install-dapr-cli/). * Java JDK 11 (or greater): * [Microsoft JDK 11](https://docs.microsoft.com/en-us/java/openjdk/download#openjdk-11) * [Oracle JDK 11](https://www.oracle.com/technetwork/java/javase/downloads/index.html#JDK11) diff --git a/examples/src/main/java/io/dapr/examples/unittesting/README.md b/examples/src/main/java/io/dapr/examples/unittesting/README.md index b6587166d..9227154ac 100644 --- a/examples/src/main/java/io/dapr/examples/unittesting/README.md +++ b/examples/src/main/java/io/dapr/examples/unittesting/README.md @@ -4,7 +4,7 @@ This sample illustrates how applications can write unit tests with Dapr's Java S ## Pre-requisites -* [Dapr and Dapr Cli](https://docs.dapr.io/getting-started/install-dapr/). +* [Dapr CLI](https://docs.dapr.io/getting-started/install-dapr-cli/). * Java JDK 11 (or greater): * [Microsoft JDK 11](https://docs.microsoft.com/en-us/java/openjdk/download#openjdk-11) * [Oracle JDK 11](https://www.oracle.com/technetwork/java/javase/downloads/index.html#JDK11) diff --git a/examples/src/main/java/io/dapr/examples/workflows/README.md b/examples/src/main/java/io/dapr/examples/workflows/README.md index 434b873d3..d24d3f74a 100644 --- a/examples/src/main/java/io/dapr/examples/workflows/README.md +++ b/examples/src/main/java/io/dapr/examples/workflows/README.md @@ -12,7 +12,7 @@ This example contains the follow classes: ## Pre-requisites -* [Dapr and Dapr Cli](https://docs.dapr.io/getting-started/install-dapr/). +* [Dapr CLI](https://docs.dapr.io/getting-started/install-dapr-cli/). * Java JDK 11 (or greater): * [Microsoft JDK 11](https://docs.microsoft.com/en-us/java/openjdk/download#openjdk-11) * [Oracle JDK 11](https://www.oracle.com/technetwork/java/javase/downloads/index.html#JDK11) From 538f634c747812ac909f0eb76fffa14e6e627722 Mon Sep 17 00:00:00 2001 From: addjuarez <6789375+addjuarez@users.noreply.github.com> Date: Tue, 14 Nov 2023 21:57:20 +0000 Subject: [PATCH 04/11] remove static Signed-off-by: addjuarez <6789375+addjuarez@users.noreply.github.com> --- .../io/dapr/workflows/runtime/WorkflowRuntimeBuilder.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sdk-workflows/src/main/java/io/dapr/workflows/runtime/WorkflowRuntimeBuilder.java b/sdk-workflows/src/main/java/io/dapr/workflows/runtime/WorkflowRuntimeBuilder.java index f34005d4c..a75110409 100644 --- a/sdk-workflows/src/main/java/io/dapr/workflows/runtime/WorkflowRuntimeBuilder.java +++ b/sdk-workflows/src/main/java/io/dapr/workflows/runtime/WorkflowRuntimeBuilder.java @@ -26,8 +26,8 @@ public class WorkflowRuntimeBuilder { private static volatile WorkflowRuntime instance; private DurableTaskGrpcWorkerBuilder builder; private static final Logger LOGGER = LoggerFactory.getLogger(WorkflowRuntimeBuilder.class); - private static volatile Set activity_Set = new HashSet(); - private static volatile Set workflow_Set = new HashSet(); + private volatile Set activity_Set = new HashSet(); + private volatile Set workflow_Set = new HashSet(); public WorkflowRuntimeBuilder() { From 536c0ca89ac93def3b0aabdf9c3bbbaebd1de523 Mon Sep 17 00:00:00 2001 From: kaibocai <89094811+kaibocai@users.noreply.github.com> Date: Tue, 14 Nov 2023 09:59:19 -0600 Subject: [PATCH 05/11] Add determinstic UUID generation (#947) * add determinstic UUID generation Signed-off-by: kaibocai <89094811+kaibocai@users.noreply.github.com> * add unit test to improve coverage Signed-off-by: kaibocai <89094811+kaibocai@users.noreply.github.com> * update grpc version to 1.59.0 to be compatible updated durabletask-java Signed-off-by: kaibocai --------- Signed-off-by: kaibocai <89094811+kaibocai@users.noreply.github.com> Signed-off-by: kaibocai Co-authored-by: Artur Souza Signed-off-by: addjuarez <6789375+addjuarez@users.noreply.github.com> --- pom.xml | 2 +- sdk-actors/pom.xml | 2 +- sdk-autogen/pom.xml | 2 +- sdk-tests/pom.xml | 2 +- sdk-workflows/pom.xml | 2 +- .../workflows/DaprWorkflowContextImpl.java | 9 ++ .../io/dapr/workflows/WorkflowContext.java | 16 +++ .../DaprWorkflowContextImplTest.java | 102 ++++++++++++++++++ sdk/pom.xml | 2 +- 9 files changed, 133 insertions(+), 6 deletions(-) diff --git a/pom.xml b/pom.xml index 41a0c1c68..6e2ebacdf 100644 --- a/pom.xml +++ b/pom.xml @@ -14,7 +14,7 @@ UTF-8 - 1.42.1 + 1.59.0 3.17.3 https://raw.githubusercontent.com/dapr/dapr/v1.12.0-rc.2/dapr/proto 0.11.0-SNAPSHOT diff --git a/sdk-actors/pom.xml b/sdk-actors/pom.xml index d4f374c1e..c76347f5c 100644 --- a/sdk-actors/pom.xml +++ b/sdk-actors/pom.xml @@ -18,7 +18,7 @@ false - 1.42.1 + 1.59.0 diff --git a/sdk-autogen/pom.xml b/sdk-autogen/pom.xml index aba13f36e..3dc3c2913 100644 --- a/sdk-autogen/pom.xml +++ b/sdk-autogen/pom.xml @@ -20,7 +20,7 @@ ${project.build.directory}/generated-sources ${project.build.directory}/proto false - 1.42.1 + 1.59.0 diff --git a/sdk-tests/pom.xml b/sdk-tests/pom.xml index db7ecef28..a25c0f31c 100644 --- a/sdk-tests/pom.xml +++ b/sdk-tests/pom.xml @@ -18,7 +18,7 @@ 1.11.0-SNAPSHOT ${project.build.directory}/generated-sources ${project.basedir}/proto - 1.42.1 + 1.59.0 3.17.3 0.14.0 2.7.8 diff --git a/sdk-workflows/pom.xml b/sdk-workflows/pom.xml index d623a79a6..ba21f677f 100644 --- a/sdk-workflows/pom.xml +++ b/sdk-workflows/pom.xml @@ -51,7 +51,7 @@ com.microsoft durabletask-client - 1.1.1 + 1.5.0