From 203a9962bd7850c858a6afb1c37ce1215dc005cf Mon Sep 17 00:00:00 2001 From: Miguel Prieto Date: Wed, 18 Sep 2024 17:00:56 -0400 Subject: [PATCH] Updated Java Client v4 documentation --- .../java/conductor-java-sdk/README.md | 32 ++++++++++--------- .../io/orkes/conductor/client/ApiClient.java | 2 +- .../conductor/client/http/ApiException.java | 2 +- .../conductor/client/http/ApiResponse.java | 2 +- .../io/orkes/conductor/client/http/Pair.java | 2 +- 5 files changed, 21 insertions(+), 19 deletions(-) diff --git a/conductor-clients/java/conductor-java-sdk/README.md b/conductor-clients/java/conductor-java-sdk/README.md index d8bc0d304..b0b795aa1 100644 --- a/conductor-clients/java/conductor-java-sdk/README.md +++ b/conductor-clients/java/conductor-java-sdk/README.md @@ -1,4 +1,4 @@ -# Conductor Java Client/SDK V3 +# Conductor Java Client/SDK V4 ## Overview @@ -10,9 +10,10 @@ These changes are largely driven by **"dependency optimization"** and a redesign This client has a reduced dependency set. The aim is to minimize Classpath pollution and prevent potential conflicts. -Take Netflix Eureka as an example, Spring Cloud users have reported version conflicts. Some of them weren't even using Eureka. So, we've decided to remove the direct dependency. +Consider Netflix Eureka, a direct dependency of the OSS v3 client. Spring Cloud users have reported version conflicts, even if they weren’t using Eureka. +To prevent these unnecessary conflicts and the hassle of managing exclusions in Gradle or Maven configurations, we’ve decided to remove this direct dependency. -In the client it's used by the `TaskPollExecutor` before polling to make the following check: +In OSS v3 client it's used by `TaskPollExecutor` before polling to make the following check: ```java if (eurekaClient != null @@ -23,7 +24,7 @@ if (eurekaClient != null } ``` -You will be able to achieve the same with a `PollFilter`. It could look something like this: +You will be able to achieve the same with a `PollFilter` (we plan to provide modules with some implementations). It could look something like this: ```java var runnerConfigurer = new TaskRunnerConfigurer @@ -34,19 +35,15 @@ You will be able to achieve the same with a `PollFilter`. It could look somethin }) .withListener(PollCompleted.class, (e) -> { log.info("Poll Completed {}", e); - var timer = prometheusRegistry.timer("poll_success", "type", e.getTaskType()); + var timer = prometheusRegistry.timer("poll_completed", "type", e.getTaskType()); timer.record(e.getDuration()); }) - .withListener(TaskExecutionFailure.class, (e) -> { - log.error("Task Execution Failure {}", e); - var counter = prometheusRegistry.counter("execute_failure", "type", e.getTaskType(), "id", e.getTaskId()); - counter.increment(); - }) .build(); + runnerConfigurer.init(); ``` -The telemetry part was also removed but you can achieve the same with Events and Listeners as shown in the example. +The telemetry part was also removed but you can achieve the same with a MetricsCollector, or Events and Listeners as shown in the example. ### Breaking Changes @@ -82,8 +79,13 @@ public Builder withEurekaClient(EurekaClient eurekaClient) { ## TODO -- Stabilize the codebase -- Complete documentation -- Gather community feedback -- Achieve production readiness +Take a look at this board: https://github.com/orgs/conductor-oss/projects/3 + +## Feedback + +We are building this based on feedback from our users and community. + +We encourage everyone to share their thoughts and feedback! You can create new GitHub issues or comment on existing ones. You can also join our Slack community to connect with us. + +Thank you! ♥ diff --git a/conductor-clients/java/conductor-java-sdk/orkes-client/src/main/java/io/orkes/conductor/client/ApiClient.java b/conductor-clients/java/conductor-java-sdk/orkes-client/src/main/java/io/orkes/conductor/client/ApiClient.java index af79ad146..c41edf348 100644 --- a/conductor-clients/java/conductor-java-sdk/orkes-client/src/main/java/io/orkes/conductor/client/ApiClient.java +++ b/conductor-clients/java/conductor-java-sdk/orkes-client/src/main/java/io/orkes/conductor/client/ApiClient.java @@ -39,7 +39,7 @@ /** * This class exists to maintain backward compatibility and facilitate the migration for - * users of orkes-conductor-client v2 to v3. + * users of orkes-conductor-client v2. */ @Deprecated public final class ApiClient extends ConductorClient { diff --git a/conductor-clients/java/conductor-java-sdk/orkes-client/src/main/java/io/orkes/conductor/client/http/ApiException.java b/conductor-clients/java/conductor-java-sdk/orkes-client/src/main/java/io/orkes/conductor/client/http/ApiException.java index 8b9023982..951ebf5ff 100644 --- a/conductor-clients/java/conductor-java-sdk/orkes-client/src/main/java/io/orkes/conductor/client/http/ApiException.java +++ b/conductor-clients/java/conductor-java-sdk/orkes-client/src/main/java/io/orkes/conductor/client/http/ApiException.java @@ -17,7 +17,7 @@ /** * This class exists to maintain backward compatibility and facilitate the migration - * for users of orkes-conductor-client v2 to v3. + * for users of orkes-conductor-client v2. */ @Deprecated public class ApiException extends ConductorClientException { diff --git a/conductor-clients/java/conductor-java-sdk/orkes-client/src/main/java/io/orkes/conductor/client/http/ApiResponse.java b/conductor-clients/java/conductor-java-sdk/orkes-client/src/main/java/io/orkes/conductor/client/http/ApiResponse.java index 058887dd6..18c194e69 100644 --- a/conductor-clients/java/conductor-java-sdk/orkes-client/src/main/java/io/orkes/conductor/client/http/ApiResponse.java +++ b/conductor-clients/java/conductor-java-sdk/orkes-client/src/main/java/io/orkes/conductor/client/http/ApiResponse.java @@ -19,7 +19,7 @@ * API response returned by API call. *

* This class exists to maintain backward compatibility and facilitate the migration for users - * of orkes-conductor-client v2 to v3. + * of orkes-conductor-client v2. * * @param The type of data that is deserialized from response body */ diff --git a/conductor-clients/java/conductor-java-sdk/orkes-client/src/main/java/io/orkes/conductor/client/http/Pair.java b/conductor-clients/java/conductor-java-sdk/orkes-client/src/main/java/io/orkes/conductor/client/http/Pair.java index adf174daa..d5074585a 100644 --- a/conductor-clients/java/conductor-java-sdk/orkes-client/src/main/java/io/orkes/conductor/client/http/Pair.java +++ b/conductor-clients/java/conductor-java-sdk/orkes-client/src/main/java/io/orkes/conductor/client/http/Pair.java @@ -14,7 +14,7 @@ /** * This class exists to maintain backward compatibility and facilitate the migration for - * users of orkes-conductor-client v2 to v3. + * users of orkes-conductor-client v2. */ @Deprecated public class Pair {