diff --git a/liteflow-core/src/main/java/com/yomahub/liteflow/entity/data/AbsSlot.java b/liteflow-core/src/main/java/com/yomahub/liteflow/entity/data/AbsSlot.java index 10684c759..f7d080db3 100644 --- a/liteflow-core/src/main/java/com/yomahub/liteflow/entity/data/AbsSlot.java +++ b/liteflow-core/src/main/java/com/yomahub/liteflow/entity/data/AbsSlot.java @@ -77,6 +77,10 @@ public abstract class AbsSlot implements Slot { } public void setRequestData(T t){ + if (null == t) { + //data slot is a ConcurrentHashMap, so null value will trigger NullPointerException + throw new NullParamException("data slot can't accept null param"); + } dataMap.put(REQUEST, t); } @@ -85,6 +89,10 @@ public abstract class AbsSlot implements Slot { } public void setResponseData(T t){ + if (null == t) { + //data slot is a ConcurrentHashMap, so null value will trigger NullPointerException + throw new NullParamException("data slot can't accept null param"); + } dataMap.put(RESPONSE, t); } @@ -93,6 +101,10 @@ public abstract class AbsSlot implements Slot { } public void setChainReqData(String chainId, T t) { + if (null == t) { + //data slot is a ConcurrentHashMap, so null value will trigger NullPointerException + throw new NullParamException("data slot can't accept null param"); + } dataMap.put(CHAIN_REQ_PREFIX + chainId, t); } @@ -105,6 +117,10 @@ public abstract class AbsSlot implements Slot { } public void setData(String key, T t){ + if (null == t) { + //data slot is a ConcurrentHashMap, so null value will trigger NullPointerException + throw new NullParamException("data slot can't accept null param"); + } dataMap.put(key, t); } @@ -133,6 +149,10 @@ public abstract class AbsSlot implements Slot { } public void setCondResult(String key, T t){ + if (null == t) { + //data slot is a ConcurrentHashMap, so null value will trigger NullPointerException + throw new NullParamException("data slot can't accept null param"); + } dataMap.put(COND_NODE_PREFIX + key, t); } @@ -141,6 +161,10 @@ public abstract class AbsSlot implements Slot { } public void setChainName(String chainName) { + if (null == chainName) { + //data slot is a ConcurrentHashMap, so null value will trigger NullPointerException + throw new NullParamException("data slot can't accept null param"); + } dataMap.put(CHAINNAME, chainName); } @@ -187,6 +211,10 @@ public abstract class AbsSlot implements Slot { @Override public void setException(Exception e) { + if (null == e) { + //data slot is a ConcurrentHashMap, so null value will trigger NullPointerException + throw new NullParamException("data slot can't accept null param"); + } this.dataMap.put(EXCEPTION, e); } }