From ea02583e16613c4c82006339cfb4f3996af36638 Mon Sep 17 00:00:00 2001 From: bryan31 Date: Thu, 13 Jan 2022 15:30:36 +0800 Subject: [PATCH] =?UTF-8?q?bug=20#I4QOP6=20when=E8=B6=85=E6=97=B6=E6=97=B6?= =?UTF-8?q?=E6=8A=9B=E5=87=BA=E7=9A=84=E9=94=99=E6=98=AFNPT?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../entity/flow/parallel/WhenFutureObj.java | 9 ++++++++ .../exception/WhenTimeoutException.java | 21 +++++++++++++++++++ 2 files changed, 30 insertions(+) create mode 100644 liteflow-core/src/main/java/com/yomahub/liteflow/exception/WhenTimeoutException.java diff --git a/liteflow-core/src/main/java/com/yomahub/liteflow/entity/flow/parallel/WhenFutureObj.java b/liteflow-core/src/main/java/com/yomahub/liteflow/entity/flow/parallel/WhenFutureObj.java index f36859ebe..d997cc2ae 100644 --- a/liteflow-core/src/main/java/com/yomahub/liteflow/entity/flow/parallel/WhenFutureObj.java +++ b/liteflow-core/src/main/java/com/yomahub/liteflow/entity/flow/parallel/WhenFutureObj.java @@ -1,5 +1,9 @@ package com.yomahub.liteflow.entity.flow.parallel; +import cn.hutool.core.util.StrUtil; +import com.yomahub.liteflow.exception.WhenTimeoutException; +import com.yomahub.liteflow.property.LiteflowConfigGetter; + /** * 并行异步CompletableFuture里的值对象 * @author Bryan.Zhang @@ -37,6 +41,11 @@ public class WhenFutureObj { result.setSuccess(false); result.setTimeout(true); result.setExecutorName(executorName); + result.setEx(new WhenTimeoutException( + StrUtil.format("Timed out when executing the component[{}],when-max-timeout-seconds config is:{}(s)", + executorName, + LiteflowConfigGetter.get().getWhenMaxWaitSeconds())) + ); return result; } diff --git a/liteflow-core/src/main/java/com/yomahub/liteflow/exception/WhenTimeoutException.java b/liteflow-core/src/main/java/com/yomahub/liteflow/exception/WhenTimeoutException.java new file mode 100644 index 000000000..71f139165 --- /dev/null +++ b/liteflow-core/src/main/java/com/yomahub/liteflow/exception/WhenTimeoutException.java @@ -0,0 +1,21 @@ +package com.yomahub.liteflow.exception; + + +public class WhenTimeoutException extends RuntimeException { + private static final long serialVersionUID = 1L; + + /** 异常信息 */ + private String message; + + public WhenTimeoutException(String message) { + this.message = message; + } + + public String getMessage() { + return message; + } + + public void setMessage(String message) { + this.message = message; + } +}