diff --git a/build.gradle b/build.gradle index 574621fe..80f67a94 100644 --- a/build.gradle +++ b/build.gradle @@ -27,7 +27,7 @@ ext { spectator : '1.3.7', awsSsm : '1.12.300', azureSsm : '4.2.3', - azureIdentity : '1.3.7', + azureIdentity : '1.12.2', eureka : '1.10.17', wiremock : '2.33.2', ioGRPC : '1.63.1', @@ -251,5 +251,5 @@ signing { tasks.withType(Test) { maxParallelForks = 1 } -sourceSets.main.java.srcDirs += ['example/java', 'example/resources'] +//sourceSets.main.java.srcDirs += ['examples/java', 'examples/resources'] diff --git a/docs/workflow/README.md b/docs/workflow/README.md index 6cf80dff..824e4c19 100644 --- a/docs/workflow/README.md +++ b/docs/workflow/README.md @@ -110,7 +110,7 @@ public class ConductorWorkers { } ``` -See [DynamicWorkflow](../../examples/java/io/orkes/conductor/sdk/DynamicWorkflow) for a fully functional example. +See [DynamicWorkflow](../../examples/java/io/orkes/conductor/sdk/dynamicworkflow) for a fully functional example. ### Kitchen-Sink Workflow diff --git a/examples/java/io/orkes/conductor/sdk/DynamicWorkflow/workflow/WorkflowInput.java b/examples/java/io/orkes/conductor/sdk/DynamicWorkflow/workflow/WorkflowInput.java deleted file mode 100644 index 711f798b..00000000 --- a/examples/java/io/orkes/conductor/sdk/DynamicWorkflow/workflow/WorkflowInput.java +++ /dev/null @@ -1,18 +0,0 @@ -package io.orkes.conductor.sdk.DynamicWorkflow.workflow; - -public class WorkflowInput { - private String userId; - public WorkflowInput(String userId) { - this.userId = userId; - } - - public String getUserId() { - return userId; - } - - public void setUserId(String userId) { - this.userId = userId; - } -} - - diff --git a/examples/java/io/orkes/conductor/sdk/HelloWorld/workers/ConductorWorkers.java b/examples/java/io/orkes/conductor/sdk/HelloWorld/workers/ConductorWorkers.java deleted file mode 100644 index 17c44b7b..00000000 --- a/examples/java/io/orkes/conductor/sdk/HelloWorld/workers/ConductorWorkers.java +++ /dev/null @@ -1,11 +0,0 @@ -package io.orkes.conductor.sdk.HelloWorld.workers; - -import com.netflix.conductor.sdk.workflow.task.InputParam; -import com.netflix.conductor.sdk.workflow.task.WorkerTask; - -public class ConductorWorkers { - @WorkerTask("greet") - public String greeting(@InputParam("name") String name) { - return ("Hello " + name); - } -} diff --git a/examples/java/io/orkes/conductor/sdk/HelloWorld/workflow/WorkflowInput.java b/examples/java/io/orkes/conductor/sdk/HelloWorld/workflow/WorkflowInput.java deleted file mode 100644 index 58e433cc..00000000 --- a/examples/java/io/orkes/conductor/sdk/HelloWorld/workflow/WorkflowInput.java +++ /dev/null @@ -1,14 +0,0 @@ -package io.orkes.conductor.sdk.HelloWorld.workflow; - -public class WorkflowInput { - private String name; - public WorkflowInput(String name) { - this.name = name; - } - public String getName() { - return name; - } - public void setName(String name) { - this.name = name; - } -} \ No newline at end of file diff --git a/examples/java/io/orkes/conductor/sdk/TaskWorkers/pojo/OrderInfo.java b/examples/java/io/orkes/conductor/sdk/TaskWorkers/pojo/OrderInfo.java deleted file mode 100644 index 96515a9c..00000000 --- a/examples/java/io/orkes/conductor/sdk/TaskWorkers/pojo/OrderInfo.java +++ /dev/null @@ -1,23 +0,0 @@ -package io.orkes.conductor.sdk.TaskWorkers.pojo; - -public class OrderInfo { - private int quantity; - private int skuPrice; - - - public int getSkuPrice() { - return skuPrice; - } - - public void setSkuPrice(int skuPrice) { - this.skuPrice = skuPrice; - } - - public int getQuantity() { - return quantity; - } - - public void setQuantity(int quantity) { - this.quantity = quantity; - } -} diff --git a/examples/java/io/orkes/conductor/sdk/WorkflowTest.java b/examples/java/io/orkes/conductor/sdk/WorkflowTest.java deleted file mode 100644 index 18d4cef1..00000000 --- a/examples/java/io/orkes/conductor/sdk/WorkflowTest.java +++ /dev/null @@ -1,61 +0,0 @@ -/* - * Copyright 2022 Orkes, Inc. - *
- * 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.orkes.conductor.sdk;
-
-public class WorkflowTest extends AbstractWorkflowTests {
- public void testWF(){
- WorkflowDef def = null;
- Map
+ * 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.orkes.conductor.sdk.examples;
+
+import java.time.Duration;
import com.netflix.conductor.sdk.workflow.def.ConductorWorkflow;
import com.netflix.conductor.sdk.workflow.def.tasks.*;
import com.netflix.conductor.sdk.workflow.executor.WorkflowExecutor;
-import com.netflix.conductor.sdk.workflow.def.tasks.JQ;
-
-
-import java.time.Duration;
+import io.orkes.conductor.sdk.examples.helloworld.workflow.WorkflowInput;
public class KitchenSink {
private final WorkflowExecutor executor;
- public GreetingsWorkflow(WorkflowExecutor executor) {
+ public KitchenSink(WorkflowExecutor executor) {
this.executor = executor;
}
public ConductorWorkflow
+ * 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.orkes.conductor.sdk.examples;
+
+import java.util.ArrayList;
+import java.util.List;
+import java.util.concurrent.ExecutionException;
+import java.util.concurrent.TimeoutException;
import com.netflix.conductor.common.metadata.tasks.TaskDef;
import com.netflix.conductor.sdk.workflow.executor.WorkflowExecutor;
+
import io.orkes.conductor.client.MetadataClient;
import io.orkes.conductor.client.OrkesClients;
import io.orkes.conductor.client.TaskClient;
import io.orkes.conductor.client.WorkflowClient;
-import java.util.ArrayList;
-import java.util.List;
-import java.util.concurrent.ExecutionException;
-import java.util.concurrent.TimeoutException;
-
public class TaskConfigure {
@@ -49,4 +62,3 @@ public static void main(String[] args) throws ExecutionException, InterruptedExc
}
}
-
diff --git a/examples/java/io/orkes/conductor/sdk/TaskDomainWorker.java b/examples/java/io/orkes/conductor/sdk/examples/TaskDomainWorker.java
similarity index 99%
rename from examples/java/io/orkes/conductor/sdk/TaskDomainWorker.java
rename to examples/java/io/orkes/conductor/sdk/examples/TaskDomainWorker.java
index d227436a..db9c92de 100644
--- a/examples/java/io/orkes/conductor/sdk/TaskDomainWorker.java
+++ b/examples/java/io/orkes/conductor/sdk/examples/TaskDomainWorker.java
@@ -10,7 +10,7 @@
* 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.orkes.conductor.sdk;
+package io.orkes.conductor.sdk.examples;
import java.io.IOException;
import java.util.Arrays;
diff --git a/examples/java/io/orkes/conductor/sdk/TaskRunner.java b/examples/java/io/orkes/conductor/sdk/examples/TaskRunner.java
similarity index 97%
rename from examples/java/io/orkes/conductor/sdk/TaskRunner.java
rename to examples/java/io/orkes/conductor/sdk/examples/TaskRunner.java
index fed9e647..e7abee05 100644
--- a/examples/java/io/orkes/conductor/sdk/TaskRunner.java
+++ b/examples/java/io/orkes/conductor/sdk/examples/TaskRunner.java
@@ -10,9 +10,12 @@
* 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.orkes.conductor.sdk;
+package io.orkes.conductor.sdk.examples;
-import java.util.*;
+import java.util.Arrays;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
import com.netflix.conductor.client.worker.Worker;
import com.netflix.conductor.common.metadata.tasks.Task;
diff --git a/examples/java/io/orkes/conductor/sdk/WorkflowManagement.java b/examples/java/io/orkes/conductor/sdk/examples/WorkflowManagement.java
similarity index 96%
rename from examples/java/io/orkes/conductor/sdk/WorkflowManagement.java
rename to examples/java/io/orkes/conductor/sdk/examples/WorkflowManagement.java
index 11cb9821..12ad5974 100644
--- a/examples/java/io/orkes/conductor/sdk/WorkflowManagement.java
+++ b/examples/java/io/orkes/conductor/sdk/examples/WorkflowManagement.java
@@ -10,7 +10,7 @@
* 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.orkes.conductor.sdk;
+package io.orkes.conductor.sdk.examples;
import java.util.Arrays;
@@ -19,7 +19,7 @@
import io.orkes.conductor.client.OrkesClients;
import io.orkes.conductor.client.WorkflowClient;
-import static io.orkes.conductor.sdk.MetadataManagement.workflowDef;
+import static io.orkes.conductor.sdk.examples.MetadataManagement.workflowDef;
/**
* Examples for managing Workflow operations in Conductor
diff --git a/examples/java/io/orkes/conductor/sdk/WorkflowOps.java b/examples/java/io/orkes/conductor/sdk/examples/WorkflowOps.java
similarity index 83%
rename from examples/java/io/orkes/conductor/sdk/WorkflowOps.java
rename to examples/java/io/orkes/conductor/sdk/examples/WorkflowOps.java
index beb8d760..345965d9 100644
--- a/examples/java/io/orkes/conductor/sdk/WorkflowOps.java
+++ b/examples/java/io/orkes/conductor/sdk/examples/WorkflowOps.java
@@ -10,22 +10,23 @@
* 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 examples.java.io.orkes.conductor.sdk;
+package io.orkes.conductor.sdk.examples;
+
+import java.util.Arrays;
+import java.util.List;
+import java.util.concurrent.CompletableFuture;
+import java.util.concurrent.ExecutionException;
+import java.util.concurrent.TimeUnit;
+import java.util.concurrent.TimeoutException;
import com.netflix.conductor.common.metadata.tasks.Task;
-import com.netflix.conductor.common.metadata.tasks.TaskResult;
import com.netflix.conductor.common.run.Workflow;
import com.netflix.conductor.sdk.workflow.def.ConductorWorkflow;
+import com.netflix.conductor.sdk.workflow.def.tasks.SimpleTask;
import com.netflix.conductor.sdk.workflow.executor.WorkflowExecutor;
-import io.orkes.conductor.client.*;
-import io.orkes.conductor.sdk.examples.HelloWorld.workflow.GreetingsWorkflow;
-import io.orkes.conductor.sdk.examples.HelloWorld.workflow.WorkflowInput;
-import java.util.*;
-import java.util.concurrent.CompletableFuture;
-import java.util.concurrent.ExecutionException;
-import java.util.concurrent.TimeUnit;
-import java.util.concurrent.TimeoutException;
+import io.orkes.conductor.client.*;
+import io.orkes.conductor.sdk.examples.helloworld.workflow.WorkflowInput;
public class WorkflowOps {
@@ -35,6 +36,15 @@ public class WorkflowOps {
private static final String UI_URL = "http://localhost:5000/execution/";
+ public static ConductorWorkflow
+ * 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.orkes.conductor.sdk.examples.dynamicworkflow;
import java.util.Arrays;
import java.util.HashMap;
@@ -11,16 +23,16 @@
import com.netflix.conductor.client.worker.Worker;
import com.netflix.conductor.common.run.Workflow;
import com.netflix.conductor.sdk.workflow.def.ConductorWorkflow;
-
import com.netflix.conductor.sdk.workflow.executor.WorkflowExecutor;
+
import io.orkes.conductor.client.MetadataClient;
import io.orkes.conductor.client.OrkesClients;
import io.orkes.conductor.client.TaskClient;
import io.orkes.conductor.client.WorkflowClient;
import io.orkes.conductor.client.automator.TaskRunnerConfigurer;
-import io.orkes.conductor.sdk.DynamicWorkflow.workflow.CreateWorkflow;
-import io.orkes.conductor.sdk.DynamicWorkflow.workflow.WorkflowInput;
-import io.orkes.conductor.sdk.ApiUtil;
+import io.orkes.conductor.sdk.examples.ApiUtil;
+import io.orkes.conductor.sdk.examples.dynamicworkflow.workflow.CreateWorkflow;
+import io.orkes.conductor.sdk.examples.dynamicworkflow.workflow.WorkflowInput;
public class Main {
@@ -61,6 +73,3 @@ private static TaskRunnerConfigurer initWorkers(List
+ * 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.orkes.conductor.sdk.examples.dynamicworkflow.workers;
import com.netflix.conductor.sdk.workflow.task.InputParam;
import com.netflix.conductor.sdk.workflow.task.WorkerTask;
diff --git a/examples/java/io/orkes/conductor/sdk/DynamicWorkflow/workers/UserInfo.java b/examples/java/io/orkes/conductor/sdk/examples/dynamicworkflow/workers/UserInfo.java
similarity index 55%
rename from examples/java/io/orkes/conductor/sdk/DynamicWorkflow/workers/UserInfo.java
rename to examples/java/io/orkes/conductor/sdk/examples/dynamicworkflow/workers/UserInfo.java
index 84d5b2e1..20385936 100644
--- a/examples/java/io/orkes/conductor/sdk/DynamicWorkflow/workers/UserInfo.java
+++ b/examples/java/io/orkes/conductor/sdk/examples/dynamicworkflow/workers/UserInfo.java
@@ -1,4 +1,16 @@
-package io.orkes.conductor.sdk.DynamicWorkflow.workers;
+/*
+ * Copyright 2024 Orkes, Inc.
+ *
+ * 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.orkes.conductor.sdk.examples.dynamicworkflow.workers;
public class UserInfo {
@@ -49,4 +61,3 @@ public void setPhoneNumber(String phoneNumber) {
this.phoneNumber = phoneNumber;
}
}
-
diff --git a/examples/java/io/orkes/conductor/sdk/DynamicWorkflow/workflow/CreateWorkflow.java b/examples/java/io/orkes/conductor/sdk/examples/dynamicworkflow/workflow/CreateWorkflow.java
similarity index 62%
rename from examples/java/io/orkes/conductor/sdk/DynamicWorkflow/workflow/CreateWorkflow.java
rename to examples/java/io/orkes/conductor/sdk/examples/dynamicworkflow/workflow/CreateWorkflow.java
index 86ac556d..82a69bb5 100644
--- a/examples/java/io/orkes/conductor/sdk/DynamicWorkflow/workflow/CreateWorkflow.java
+++ b/examples/java/io/orkes/conductor/sdk/examples/dynamicworkflow/workflow/CreateWorkflow.java
@@ -1,4 +1,16 @@
-package io.orkes.conductor.sdk.DynamicWorkflow.workflow;
+/*
+ * Copyright 2024 Orkes, Inc.
+ *
+ * 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.orkes.conductor.sdk.examples.dynamicworkflow.workflow;
import com.netflix.conductor.sdk.workflow.def.ConductorWorkflow;
import com.netflix.conductor.sdk.workflow.def.tasks.SimpleTask;
diff --git a/examples/java/io/orkes/conductor/sdk/examples/dynamicworkflow/workflow/WorkflowInput.java b/examples/java/io/orkes/conductor/sdk/examples/dynamicworkflow/workflow/WorkflowInput.java
new file mode 100644
index 00000000..883e53a7
--- /dev/null
+++ b/examples/java/io/orkes/conductor/sdk/examples/dynamicworkflow/workflow/WorkflowInput.java
@@ -0,0 +1,28 @@
+/*
+ * Copyright 2024 Orkes, Inc.
+ *
+ * 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.orkes.conductor.sdk.examples.dynamicworkflow.workflow;
+
+public class WorkflowInput {
+ private String userId;
+ public WorkflowInput(String userId) {
+ this.userId = userId;
+ }
+
+ public String getUserId() {
+ return userId;
+ }
+
+ public void setUserId(String userId) {
+ this.userId = userId;
+ }
+}
diff --git a/examples/java/io/orkes/conductor/sdk/HelloWorld/Main.java b/examples/java/io/orkes/conductor/sdk/examples/helloworld/Main.java
similarity index 74%
rename from examples/java/io/orkes/conductor/sdk/HelloWorld/Main.java
rename to examples/java/io/orkes/conductor/sdk/examples/helloworld/Main.java
index 20043b99..710e479a 100644
--- a/examples/java/io/orkes/conductor/sdk/HelloWorld/Main.java
+++ b/examples/java/io/orkes/conductor/sdk/examples/helloworld/Main.java
@@ -1,4 +1,16 @@
-package io.orkes.conductor.sdk.HelloWorld;
+/*
+ * Copyright 2024 Orkes, Inc.
+ *
+ * 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.orkes.conductor.sdk.examples.helloworld;
import java.util.Arrays;
import java.util.HashMap;
@@ -8,20 +20,19 @@
import java.util.concurrent.TimeUnit;
import java.util.concurrent.TimeoutException;
-
import com.netflix.conductor.client.worker.Worker;
import com.netflix.conductor.common.run.Workflow;
import com.netflix.conductor.sdk.workflow.def.ConductorWorkflow;
-
import com.netflix.conductor.sdk.workflow.executor.WorkflowExecutor;
+
import io.orkes.conductor.client.MetadataClient;
import io.orkes.conductor.client.OrkesClients;
import io.orkes.conductor.client.TaskClient;
import io.orkes.conductor.client.WorkflowClient;
import io.orkes.conductor.client.automator.TaskRunnerConfigurer;
-import io.orkes.conductor.sdk.ApiUtil;
-import io.orkes.conductor.sdk.HelloWorld.workflow.CreateWorkflow;
-import io.orkes.conductor.sdk.HelloWorld.workflow.WorkflowInput;
+import io.orkes.conductor.sdk.examples.ApiUtil;
+import io.orkes.conductor.sdk.examples.helloworld.workflow.CreateWorkflow;
+import io.orkes.conductor.sdk.examples.helloworld.workflow.WorkflowInput;
public class Main {
diff --git a/examples/java/io/orkes/conductor/sdk/examples/helloworld/workers/ConductorWorkers.java b/examples/java/io/orkes/conductor/sdk/examples/helloworld/workers/ConductorWorkers.java
new file mode 100644
index 00000000..17be6763
--- /dev/null
+++ b/examples/java/io/orkes/conductor/sdk/examples/helloworld/workers/ConductorWorkers.java
@@ -0,0 +1,23 @@
+/*
+ * Copyright 2024 Orkes, Inc.
+ *
+ * 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.orkes.conductor.sdk.examples.helloworld.workers;
+
+import com.netflix.conductor.sdk.workflow.task.InputParam;
+import com.netflix.conductor.sdk.workflow.task.WorkerTask;
+
+public class ConductorWorkers {
+ @WorkerTask("greet")
+ public String greeting(@InputParam("name") String name) {
+ return ("Hello " + name);
+ }
+}
diff --git a/examples/java/io/orkes/conductor/sdk/HelloWorld/workflow/CreateWorkflow.java b/examples/java/io/orkes/conductor/sdk/examples/helloworld/workflow/CreateWorkflow.java
similarity index 55%
rename from examples/java/io/orkes/conductor/sdk/HelloWorld/workflow/CreateWorkflow.java
rename to examples/java/io/orkes/conductor/sdk/examples/helloworld/workflow/CreateWorkflow.java
index ee453996..9c147008 100644
--- a/examples/java/io/orkes/conductor/sdk/HelloWorld/workflow/CreateWorkflow.java
+++ b/examples/java/io/orkes/conductor/sdk/examples/helloworld/workflow/CreateWorkflow.java
@@ -1,4 +1,16 @@
-package io.orkes.conductor.sdk.HelloWorld.workflow;
+/*
+ * Copyright 2024 Orkes, Inc.
+ *
+ * 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.orkes.conductor.sdk.examples.helloworld.workflow;
import com.netflix.conductor.sdk.workflow.def.ConductorWorkflow;
import com.netflix.conductor.sdk.workflow.def.tasks.SimpleTask;
@@ -19,4 +31,3 @@ public ConductorWorkflow
+ * 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.orkes.conductor.sdk.examples.helloworld.workflow;
+
+public class WorkflowInput {
+ private String name;
+ public WorkflowInput(String name) {
+ this.name = name;
+ }
+ public String getName() {
+ return name;
+ }
+ public void setName(String name) {
+ this.name = name;
+ }
+}
\ No newline at end of file
diff --git a/examples/java/io/orkes/conductor/sdk/TaskWorkers/ConductorWorkers.java b/examples/java/io/orkes/conductor/sdk/examples/taskworkers/ConductorWorkers.java
similarity index 71%
rename from examples/java/io/orkes/conductor/sdk/TaskWorkers/ConductorWorkers.java
rename to examples/java/io/orkes/conductor/sdk/examples/taskworkers/ConductorWorkers.java
index 245986fc..5edeede6 100644
--- a/examples/java/io/orkes/conductor/sdk/TaskWorkers/ConductorWorkers.java
+++ b/examples/java/io/orkes/conductor/sdk/examples/taskworkers/ConductorWorkers.java
@@ -1,15 +1,26 @@
-package io.orkes.conductor.sdk.TaskWorkers;
+/*
+ * Copyright 2024 Orkes, Inc.
+ *
+ * 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.orkes.conductor.sdk.examples.taskworkers;
+
+import java.util.Date;
+import java.util.Random;
import com.netflix.conductor.common.metadata.tasks.TaskResult;
-import com.netflix.conductor.sdk.workflow.def.tasks.SimpleTask;
-import com.netflix.conductor.sdk.workflow.def.tasks.Task;
import com.netflix.conductor.sdk.workflow.task.InputParam;
import com.netflix.conductor.sdk.workflow.task.WorkerTask;
-import io.orkes.conductor.sdk.TaskWorkers.pojo.OrderInfo;
-import io.orkes.conductor.sdk.TaskWorkers.pojo.UserInfo;
-import java.util.Date;
-import java.util.Random;
+import io.orkes.conductor.sdk.examples.taskworkers.pojo.OrderInfo;
+import io.orkes.conductor.sdk.examples.taskworkers.pojo.UserInfo;
import static com.netflix.conductor.common.metadata.tasks.TaskResult.Status.COMPLETED;
diff --git a/examples/java/io/orkes/conductor/sdk/examples/taskworkers/pojo/OrderInfo.java b/examples/java/io/orkes/conductor/sdk/examples/taskworkers/pojo/OrderInfo.java
new file mode 100644
index 00000000..b61f551b
--- /dev/null
+++ b/examples/java/io/orkes/conductor/sdk/examples/taskworkers/pojo/OrderInfo.java
@@ -0,0 +1,35 @@
+/*
+ * Copyright 2024 Orkes, Inc.
+ *
+ * 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.orkes.conductor.sdk.examples.taskworkers.pojo;
+
+public class OrderInfo {
+ private int quantity;
+ private int skuPrice;
+
+
+ public int getSkuPrice() {
+ return skuPrice;
+ }
+
+ public void setSkuPrice(int skuPrice) {
+ this.skuPrice = skuPrice;
+ }
+
+ public int getQuantity() {
+ return quantity;
+ }
+
+ public void setQuantity(int quantity) {
+ this.quantity = quantity;
+ }
+}
diff --git a/examples/java/io/orkes/conductor/sdk/TaskWorkers/pojo/UserInfo.java b/examples/java/io/orkes/conductor/sdk/examples/taskworkers/pojo/UserInfo.java
similarity index 56%
rename from examples/java/io/orkes/conductor/sdk/TaskWorkers/pojo/UserInfo.java
rename to examples/java/io/orkes/conductor/sdk/examples/taskworkers/pojo/UserInfo.java
index 594b30c6..5ef7f46d 100644
--- a/examples/java/io/orkes/conductor/sdk/TaskWorkers/pojo/UserInfo.java
+++ b/examples/java/io/orkes/conductor/sdk/examples/taskworkers/pojo/UserInfo.java
@@ -1,4 +1,16 @@
-package io.orkes.conductor.sdk.TaskWorkers.pojo;
+/*
+ * Copyright 2024 Orkes, Inc.
+ *
+ * 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.orkes.conductor.sdk.examples.taskworkers.pojo;
public class UserInfo {
private String name;
diff --git a/src/main/java/io/orkes/conductor/client/WorkflowClient.java b/src/main/java/io/orkes/conductor/client/WorkflowClient.java
index b5e08958..eed489b8 100644
--- a/src/main/java/io/orkes/conductor/client/WorkflowClient.java
+++ b/src/main/java/io/orkes/conductor/client/WorkflowClient.java
@@ -35,10 +35,43 @@ public abstract class WorkflowClient extends com.netflix.conductor.client.http.W
@Deprecated
public abstract CompletableFuture