17
17
18
18
package com .uber .cadence .internal .testservice ;
19
19
20
- import com .uber .cadence .*;
20
+ import com .uber .cadence .BadRequestError ;
21
+ import com .uber .cadence .ClientVersionNotSupportedError ;
22
+ import com .uber .cadence .ClusterInfo ;
23
+ import com .uber .cadence .CountWorkflowExecutionsRequest ;
24
+ import com .uber .cadence .CountWorkflowExecutionsResponse ;
25
+ import com .uber .cadence .DeprecateDomainRequest ;
26
+ import com .uber .cadence .DescribeDomainRequest ;
27
+ import com .uber .cadence .DescribeDomainResponse ;
28
+ import com .uber .cadence .DescribeTaskListRequest ;
29
+ import com .uber .cadence .DescribeTaskListResponse ;
30
+ import com .uber .cadence .DescribeWorkflowExecutionRequest ;
31
+ import com .uber .cadence .DescribeWorkflowExecutionResponse ;
32
+ import com .uber .cadence .DomainAlreadyExistsError ;
33
+ import com .uber .cadence .DomainNotActiveError ;
34
+ import com .uber .cadence .EntityNotExistsError ;
35
+ import com .uber .cadence .GetSearchAttributesResponse ;
36
+ import com .uber .cadence .GetWorkflowExecutionHistoryRequest ;
37
+ import com .uber .cadence .GetWorkflowExecutionHistoryResponse ;
38
+ import com .uber .cadence .InternalServiceError ;
39
+ import com .uber .cadence .LimitExceededError ;
40
+ import com .uber .cadence .ListArchivedWorkflowExecutionsRequest ;
41
+ import com .uber .cadence .ListArchivedWorkflowExecutionsResponse ;
42
+ import com .uber .cadence .ListClosedWorkflowExecutionsRequest ;
43
+ import com .uber .cadence .ListClosedWorkflowExecutionsResponse ;
44
+ import com .uber .cadence .ListDomainsRequest ;
45
+ import com .uber .cadence .ListDomainsResponse ;
46
+ import com .uber .cadence .ListOpenWorkflowExecutionsRequest ;
47
+ import com .uber .cadence .ListOpenWorkflowExecutionsResponse ;
48
+ import com .uber .cadence .ListTaskListPartitionsRequest ;
49
+ import com .uber .cadence .ListTaskListPartitionsResponse ;
50
+ import com .uber .cadence .ListWorkflowExecutionsRequest ;
51
+ import com .uber .cadence .ListWorkflowExecutionsResponse ;
52
+ import com .uber .cadence .PollForActivityTaskRequest ;
53
+ import com .uber .cadence .PollForActivityTaskResponse ;
54
+ import com .uber .cadence .PollForDecisionTaskRequest ;
55
+ import com .uber .cadence .PollForDecisionTaskResponse ;
56
+ import com .uber .cadence .QueryFailedError ;
57
+ import com .uber .cadence .QueryWorkflowRequest ;
58
+ import com .uber .cadence .QueryWorkflowResponse ;
59
+ import com .uber .cadence .RecordActivityTaskHeartbeatByIDRequest ;
60
+ import com .uber .cadence .RecordActivityTaskHeartbeatRequest ;
61
+ import com .uber .cadence .RecordActivityTaskHeartbeatResponse ;
62
+ import com .uber .cadence .RegisterDomainRequest ;
63
+ import com .uber .cadence .RequestCancelWorkflowExecutionRequest ;
64
+ import com .uber .cadence .ResetStickyTaskListRequest ;
65
+ import com .uber .cadence .ResetStickyTaskListResponse ;
66
+ import com .uber .cadence .ResetWorkflowExecutionRequest ;
67
+ import com .uber .cadence .ResetWorkflowExecutionResponse ;
68
+ import com .uber .cadence .RespondActivityTaskCanceledByIDRequest ;
69
+ import com .uber .cadence .RespondActivityTaskCanceledRequest ;
70
+ import com .uber .cadence .RespondActivityTaskCompletedByIDRequest ;
71
+ import com .uber .cadence .RespondActivityTaskCompletedRequest ;
72
+ import com .uber .cadence .RespondActivityTaskFailedByIDRequest ;
73
+ import com .uber .cadence .RespondActivityTaskFailedRequest ;
74
+ import com .uber .cadence .RespondDecisionTaskCompletedRequest ;
75
+ import com .uber .cadence .RespondDecisionTaskCompletedResponse ;
76
+ import com .uber .cadence .RespondDecisionTaskFailedRequest ;
77
+ import com .uber .cadence .RespondQueryTaskCompletedRequest ;
78
+ import com .uber .cadence .RetryPolicy ;
79
+ import com .uber .cadence .ServiceBusyError ;
80
+ import com .uber .cadence .SignalExternalWorkflowExecutionDecisionAttributes ;
81
+ import com .uber .cadence .SignalExternalWorkflowExecutionFailedCause ;
82
+ import com .uber .cadence .SignalWithStartWorkflowExecutionRequest ;
83
+ import com .uber .cadence .SignalWorkflowExecutionRequest ;
84
+ import com .uber .cadence .StartWorkflowExecutionRequest ;
85
+ import com .uber .cadence .StartWorkflowExecutionResponse ;
86
+ import com .uber .cadence .TerminateWorkflowExecutionRequest ;
87
+ import com .uber .cadence .UpdateDomainRequest ;
88
+ import com .uber .cadence .UpdateDomainResponse ;
89
+ import com .uber .cadence .WorkflowExecution ;
90
+ import com .uber .cadence .WorkflowExecutionAlreadyStartedError ;
91
+ import com .uber .cadence .WorkflowExecutionCloseStatus ;
92
+ import com .uber .cadence .WorkflowExecutionContinuedAsNewEventAttributes ;
93
+ import com .uber .cadence .WorkflowExecutionFilter ;
94
+ import com .uber .cadence .WorkflowExecutionInfo ;
95
+ import com .uber .cadence .WorkflowIdReusePolicy ;
21
96
import com .uber .cadence .internal .testservice .TestWorkflowMutableStateImpl .QueryId ;
22
97
import com .uber .cadence .internal .testservice .TestWorkflowStore .WorkflowState ;
23
98
import com .uber .cadence .serviceclient .IWorkflowService ;
@@ -175,7 +250,7 @@ StartWorkflowExecutionResponse startWorkflowExecutionImpl(
175
250
Optional <RetryState > retryState = newRetryStateLocked (retryPolicy );
176
251
return startWorkflowExecutionNoRunningCheckLocked (
177
252
startRequest ,
178
- false ,
253
+ Optional . empty () ,
179
254
retryState ,
180
255
backoffStartIntervalInSeconds ,
181
256
null ,
@@ -213,7 +288,7 @@ private StartWorkflowExecutionResponse throwDuplicatedWorkflow(
213
288
214
289
private StartWorkflowExecutionResponse startWorkflowExecutionNoRunningCheckLocked (
215
290
StartWorkflowExecutionRequest startRequest ,
216
- boolean continuedAsNew ,
291
+ Optional < String > continuedExecutionRunId ,
217
292
Optional <RetryState > retryState ,
218
293
int backoffStartIntervalInSeconds ,
219
294
byte [] lastCompletionResult ,
@@ -231,13 +306,14 @@ private StartWorkflowExecutionResponse startWorkflowExecutionNoRunningCheckLocke
231
306
lastCompletionResult ,
232
307
parent ,
233
308
parentChildInitiatedEventId ,
309
+ continuedExecutionRunId ,
234
310
this ,
235
311
store );
236
312
WorkflowExecution execution = mutableState .getExecutionId ().getExecution ();
237
313
ExecutionId executionId = new ExecutionId (domain , execution );
238
314
executionsByWorkflowId .put (workflowId , mutableState );
239
315
executions .put (executionId , mutableState );
240
- mutableState .startWorkflow (continuedAsNew , signalWithStartSignal );
316
+ mutableState .startWorkflow (continuedExecutionRunId . isPresent () , signalWithStartSignal );
241
317
return new StartWorkflowExecutionResponse ().setRunId (execution .getRunId ());
242
318
}
243
319
@@ -537,7 +613,7 @@ public String continueAsNew(
537
613
StartWorkflowExecutionResponse response =
538
614
startWorkflowExecutionNoRunningCheckLocked (
539
615
startRequest ,
540
- true ,
616
+ Optional . of ( executionId . getExecution (). getRunId ()) ,
541
617
retryState ,
542
618
a .getBackoffStartIntervalInSeconds (),
543
619
a .getLastCompletionResult (),
0 commit comments