UpdateWorkflowExecutionDTO updateWorkflowExecutionDTO = new UpdateWorkflowExecutionDTO() WorkflowExecutionStatus previousStatus = workflowExecution.status updateWorkflowExecutionDTO.updatedExecution = updateWorkflowExecutionV2(workflowExecution, updateWorkflowExecutionView) updateWorkflowExecutionDTO.isRateLimitedProcessingAllowed = previousStatus == RUNNING && updateWorkflowExecutionView.status == ACTION_NEEDED updateWorkflowExecutionDTO
In the function updateWorkflowExecutionV2, we have a new workflowExecution instance. The value of workflowExecution.status is updated to RUNNING by workflowExecution.setStatus(RUNNING). And the value of other attribute is updated by workflowExecution.setStartTime(startTime) The value of isRateLimitedProcessingAllowed is updated by updateWorkflowExecutionDTO.isRateLimitedProcessingAllowed. Finally, updateWorkflowExecutionDTO is returned.