updating WorkflowTaskOption to support appId

This commit is contained in:
salaboy 2025-08-26 10:41:45 +01:00
parent fe77a1c4d0
commit f03a1a93de
2 changed files with 46 additions and 8 deletions

View File

@ -17,18 +17,48 @@ public class WorkflowTaskOptions {
private final WorkflowTaskRetryPolicy retryPolicy; private final WorkflowTaskRetryPolicy retryPolicy;
private final WorkflowTaskRetryHandler retryHandler; private final WorkflowTaskRetryHandler retryHandler;
private final String appId;
public WorkflowTaskOptions(WorkflowTaskRetryPolicy retryPolicy, WorkflowTaskRetryHandler retryHandler) { public WorkflowTaskOptions(WorkflowTaskRetryPolicy retryPolicy, WorkflowTaskRetryHandler retryHandler) {
this.retryPolicy = retryPolicy; this(retryPolicy, retryHandler, null);
this.retryHandler = retryHandler;
}
public WorkflowTaskOptions(WorkflowTaskRetryPolicy retryPolicy) {
this(retryPolicy, null);
} }
public WorkflowTaskOptions(WorkflowTaskRetryHandler retryHandler) { public WorkflowTaskOptions(WorkflowTaskRetryHandler retryHandler) {
this(null, retryHandler); this(null, retryHandler, null);
}
public WorkflowTaskOptions(WorkflowTaskRetryPolicy retryPolicy) {
this(retryPolicy, null, null);
}
/**
* Constructor for WorkflowTaskOptions with app ID for cross-app calls.
*
* @param appId the ID of the app to call the activity in
*/
public WorkflowTaskOptions(String appId) {
this(null, null, appId);
}
/**
* Constructor for WorkflowTaskOptions with retry policy, retry handler, and app ID.
*
* @param retryPolicy the retry policy
* @param retryHandler the retry handler
* @param appId the app ID for cross-app activity calls
*/
public WorkflowTaskOptions(WorkflowTaskRetryPolicy retryPolicy, WorkflowTaskRetryHandler retryHandler, String appId) {
this.retryPolicy = retryPolicy;
this.retryHandler = retryHandler;
this.appId = appId;
}
public WorkflowTaskOptions(WorkflowTaskRetryPolicy retryPolicy, String appId) {
this(retryPolicy, null, appId);
}
public WorkflowTaskOptions(WorkflowTaskRetryHandler retryHandler, String appId) {
this(null, retryHandler, appId);
} }
public WorkflowTaskRetryPolicy getRetryPolicy() { public WorkflowTaskRetryPolicy getRetryPolicy() {
@ -39,4 +69,8 @@ public class WorkflowTaskOptions {
return retryHandler; return retryHandler;
} }
public String getAppId() {
return appId;
}
} }

View File

@ -245,7 +245,11 @@ public class DefaultWorkflowContext implements WorkflowContext {
RetryPolicy retryPolicy = toRetryPolicy(options.getRetryPolicy()); RetryPolicy retryPolicy = toRetryPolicy(options.getRetryPolicy());
RetryHandler retryHandler = toRetryHandler(options.getRetryHandler()); RetryHandler retryHandler = toRetryHandler(options.getRetryHandler());
return new TaskOptions(retryPolicy, retryHandler); return TaskOptions.builder()
.retryPolicy(retryPolicy)
.retryHandler(retryHandler)
.appID(options.getAppId())
.build();
} }
/** /**