Class WorkflowBatchHandler

java.lang.Object
com.aizuda.snailjob.server.job.task.support.handler.WorkflowBatchHandler

@Component public class WorkflowBatchHandler extends Object
Since:
2.6.0
Author:
xiaowoniu
  • Constructor Details

    • WorkflowBatchHandler

      public WorkflowBatchHandler()
  • Method Details

    • complete

      public boolean complete(Long workflowTaskBatchId)
    • complete

      public boolean complete(Long workflowTaskBatchId, WorkflowTaskBatch workflowTaskBatch)
    • stop

      public void stop(Long workflowTaskBatchId, Integer operationReason)
    • recoveryWorkflowExecutor

      public void recoveryWorkflowExecutor(Long workflowTaskBatchId, WorkflowTaskBatch workflowTaskBatch) throws IOException
      重新触发未执行成功的工作流节点
      Parameters:
      workflowTaskBatchId - 工作流批次
      workflowTaskBatch - 工作流批次信息(若为null, 则会通过workflowTaskBatchId查询)
      Throws:
      IOException
    • openNextNode

      public void openNextNode(WorkflowNodeTaskExecuteDTO taskExecuteDTO)
    • mergeWorkflowContextAndRetry

      public void mergeWorkflowContextAndRetry(WorkflowTaskBatch workflowTaskBatch, Set<Long> taskBatchIds)
      合并工作流上下文若合并失败先自旋3次1.5s, 若失败了升级到悲观锁
      Parameters:
      workflowTaskBatch - 工作流批次
      taskBatchIds - 批次列表
    • mergeAllWorkflowContext

      public boolean mergeAllWorkflowContext(WorkflowTaskBatch workflowTaskBatch, Set<Long> taskBatchIds)
    • mergeWorkflowContext

      public boolean mergeWorkflowContext(Long workflowTaskBatchId, Map<String,Object> waitMergeContext)
      合并客户端上报的上下问题信息
      Parameters:
      workflowTaskBatchId - 工作流批次
      waitMergeContext - 待合并的上下文
    • mergeMaps

      public static void mergeMaps(Map<String,Object> mainMap, Map<String,Object> waitMergeMap)