mirror of
https://gitee.com/dromara/liteFlow.git
synced 2026-05-18 05:48:09 +08:00
EL表达式组装单测使用validate验证,并修复分号输出、data调用问题。
This commit is contained in:
@@ -39,40 +39,15 @@ public class AndELWrapper extends ELWrapper {
|
||||
}
|
||||
|
||||
@Override
|
||||
public AndELWrapper data(String dataName, Object object) {
|
||||
setData(JsonUtil.toJsonString(object));
|
||||
setDataName(dataName);
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public AndELWrapper data(String dataName, String jsonString) {
|
||||
// 校验字符串符合Json格式
|
||||
try {
|
||||
JsonUtil.parseObject(jsonString);
|
||||
} catch (Exception e){
|
||||
throw new RuntimeException("字符串不符合Json格式!");
|
||||
}
|
||||
setData(jsonString);
|
||||
setDataName(dataName);
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public AndELWrapper data(String dataName, Map<String, Object> jsonMap) {
|
||||
setData(JsonUtil.toJsonString(jsonMap));
|
||||
setDataName(dataName);
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
protected AndELWrapper maxWaitSeconds(Integer maxWaitSeconds){
|
||||
public AndELWrapper maxWaitSeconds(Integer maxWaitSeconds){
|
||||
setMaxWaitSeconds(maxWaitSeconds);
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
protected String toEL(Integer depth, StringBuilder paramContext) {
|
||||
checkMaxWaitSeconds();
|
||||
|
||||
// 根据depth是否为null,决定输出是否格式化
|
||||
Integer sonDepth = depth == null ? null : depth + 1;
|
||||
StringBuilder sb = new StringBuilder();
|
||||
|
||||
@@ -39,32 +39,6 @@ public class CatchELWrapper extends ELWrapper {
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public CatchELWrapper data(String dataName, Object object) {
|
||||
setData(JsonUtil.toJsonString(object));
|
||||
setDataName(dataName);
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public CatchELWrapper data(String dataName, String jsonString) {
|
||||
try {
|
||||
JsonUtil.parseObject(jsonString);
|
||||
} catch (Exception e){
|
||||
throw new RuntimeException("字符串不符合Json格式!");
|
||||
}
|
||||
setData(jsonString);
|
||||
setDataName(dataName);
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public CatchELWrapper data(String dataName, Map<String, Object> jsonMap) {
|
||||
setData(JsonUtil.toJsonString(jsonMap));
|
||||
setDataName(dataName);
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public CatchELWrapper maxWaitSeconds(Integer maxWaitSeconds){
|
||||
setMaxWaitSeconds(maxWaitSeconds);
|
||||
@@ -73,6 +47,8 @@ public class CatchELWrapper extends ELWrapper {
|
||||
|
||||
@Override
|
||||
protected String toEL(Integer depth, StringBuilder paramContext) {
|
||||
checkMaxWaitSeconds();
|
||||
|
||||
Integer sonDepth = depth == null ? null : depth + 1;
|
||||
StringBuilder sb = new StringBuilder();
|
||||
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
package com.yomahub.liteflow.builder.el;
|
||||
|
||||
import cn.hutool.core.util.StrUtil;
|
||||
import com.yomahub.liteflow.util.JsonUtil;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Arrays;
|
||||
@@ -111,7 +112,11 @@ public abstract class ELWrapper {
|
||||
* @param object JavaBean
|
||||
* @return {@link ELWrapper}
|
||||
*/
|
||||
protected abstract ELWrapper data(String dataName, Object object);
|
||||
protected ELWrapper data(String dataName, Object object){
|
||||
setData("'" + JsonUtil.toJsonString(object) + "'");
|
||||
setDataName(dataName);
|
||||
return this;
|
||||
}
|
||||
|
||||
/**
|
||||
* 设置表达式data属性
|
||||
@@ -120,7 +125,11 @@ public abstract class ELWrapper {
|
||||
* @param jsonString JSON格式字符串
|
||||
* @return {@link ELWrapper}
|
||||
*/
|
||||
protected abstract ELWrapper data(String dataName, String jsonString);
|
||||
protected ELWrapper data(String dataName, String jsonString){
|
||||
setData(jsonString);
|
||||
setDataName(dataName);
|
||||
return this;
|
||||
}
|
||||
|
||||
/**
|
||||
* 设置data属性
|
||||
@@ -129,7 +138,12 @@ public abstract class ELWrapper {
|
||||
* @param jsonMap 键值映射
|
||||
* @return {@link ELWrapper}
|
||||
*/
|
||||
protected abstract ELWrapper data(String dataName, Map<String, Object> jsonMap);
|
||||
protected ELWrapper data(String dataName, Map<String, Object> jsonMap){
|
||||
setData("'" + JsonUtil.toJsonString(jsonMap) + "'");
|
||||
setDataName(dataName);
|
||||
return this;
|
||||
}
|
||||
|
||||
|
||||
protected ELWrapper maxWaitSeconds(Integer maxWaitSeconds){
|
||||
setMaxWaitSeconds(maxWaitSeconds);
|
||||
@@ -144,7 +158,7 @@ public abstract class ELWrapper {
|
||||
public String toEL(){
|
||||
StringBuilder paramContext = new StringBuilder();
|
||||
String elContext = toEL(null, paramContext);
|
||||
return paramContext.append(elContext).toString();
|
||||
return paramContext.append(elContext).append(";").toString();
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -161,7 +175,7 @@ public abstract class ELWrapper {
|
||||
} else {
|
||||
elContext = toEL(0, paramContext);
|
||||
}
|
||||
return paramContext.append(elContext).toString();
|
||||
return paramContext.append(elContext).append(";").toString();
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -186,10 +200,6 @@ public abstract class ELWrapper {
|
||||
if(this.getTag() != null){
|
||||
elContext.append(StrUtil.format(".tag(\"{}\")", this.getTag()));
|
||||
}
|
||||
if(this.getData() != null){
|
||||
elContext.append(StrUtil.format(".data({})", this.getDataName()));
|
||||
paramContext.append(StrUtil.format("{} = '{}';\n", this.getDataName(), this.getData()));
|
||||
}
|
||||
if(this.getMaxWaitSeconds() != null){
|
||||
elContext.append(StrUtil.format(".maxWaitSeconds({})", String.valueOf(this.getMaxWaitSeconds())));
|
||||
}
|
||||
@@ -218,4 +228,15 @@ public abstract class ELWrapper {
|
||||
elContext.append(StrUtil.repeat(ELBus.TAB, depth));
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 检查子表达式是否有最长等待秒数定义
|
||||
*/
|
||||
protected void checkMaxWaitSeconds(){
|
||||
for(ELWrapper sonElWrapper : this.getElWrapperList()){
|
||||
if(sonElWrapper != null && sonElWrapper.getMaxWaitSeconds() != null){
|
||||
throw new IllegalArgumentException("maxWaitSeconds必须定义在完整的语义之后!");
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -31,32 +31,6 @@ public class FinallyELWrapper extends ELWrapper {
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public FinallyELWrapper data(String dataName, Object object) {
|
||||
setData(JsonUtil.toJsonString(object));
|
||||
setDataName(dataName);
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public FinallyELWrapper data(String dataName, String jsonString) {
|
||||
try {
|
||||
JsonUtil.parseObject(jsonString);
|
||||
} catch (Exception e){
|
||||
throw new RuntimeException("字符串不符合Json格式!");
|
||||
}
|
||||
setData(jsonString);
|
||||
setDataName(dataName);
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public FinallyELWrapper data(String dataName, Map<String, Object> jsonMap) {
|
||||
setData(JsonUtil.toJsonString(jsonMap));
|
||||
setDataName(dataName);
|
||||
return this;
|
||||
}
|
||||
|
||||
/**
|
||||
* 后置组件无法设置maxWaitSeconds属性,重载用protected修饰
|
||||
*
|
||||
@@ -71,6 +45,8 @@ public class FinallyELWrapper extends ELWrapper {
|
||||
|
||||
@Override
|
||||
protected String toEL(Integer depth, StringBuilder paramContext) {
|
||||
checkMaxWaitSeconds();
|
||||
|
||||
Integer sonDepth = depth == null ? null : depth + 1;
|
||||
StringBuilder sb = new StringBuilder();
|
||||
|
||||
@@ -108,9 +84,5 @@ public class FinallyELWrapper extends ELWrapper {
|
||||
if(this.getTag() != null){
|
||||
elContext.append(StrUtil.format(".tag(\"{}\")", this.getTag()));
|
||||
}
|
||||
if(this.getData() != null){
|
||||
elContext.append(StrUtil.format(".data({})", this.getDataName()));
|
||||
paramContext.append(StrUtil.format("{} = '{}'\n", this.getDataName(), this.getData()));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -55,32 +55,6 @@ public class ForELWrapper extends LoopELWrapper {
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public ForELWrapper data(String dataName, Object object) {
|
||||
setData(JsonUtil.toJsonString(object));
|
||||
setDataName(dataName);
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public ForELWrapper data(String dataName, String jsonString) {
|
||||
try {
|
||||
JsonUtil.parseObject(jsonString);
|
||||
} catch (Exception e){
|
||||
throw new RuntimeException("字符串不符合Json格式!");
|
||||
}
|
||||
setData(jsonString);
|
||||
setDataName(dataName);
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public ForELWrapper data(String dataName, Map<String, Object> jsonMap) {
|
||||
setData(JsonUtil.toJsonString(jsonMap));
|
||||
setDataName(dataName);
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public ForELWrapper maxWaitSeconds(Integer maxWaitSeconds){
|
||||
setMaxWaitSeconds(maxWaitSeconds);
|
||||
|
||||
@@ -213,32 +213,6 @@ public class IfELWrapper extends ELWrapper {
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public IfELWrapper data(String dataName, Object object) {
|
||||
setData(JsonUtil.toJsonString(object));
|
||||
setDataName(dataName);
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public IfELWrapper data(String dataName, String jsonString) {
|
||||
try {
|
||||
JsonUtil.parseObject(jsonString);
|
||||
} catch (Exception e){
|
||||
throw new RuntimeException("字符串不符合Json格式!");
|
||||
}
|
||||
setData(jsonString);
|
||||
setDataName(dataName);
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public IfELWrapper data(String dataName, Map<String, Object> jsonMap) {
|
||||
setData(JsonUtil.toJsonString(jsonMap));
|
||||
setDataName(dataName);
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public IfELWrapper maxWaitSeconds(Integer maxWaitSeconds){
|
||||
setMaxWaitSeconds(maxWaitSeconds);
|
||||
@@ -247,6 +221,8 @@ public class IfELWrapper extends ELWrapper {
|
||||
|
||||
@Override
|
||||
protected String toEL(Integer depth, StringBuilder paramContext) {
|
||||
checkMaxWaitSeconds();
|
||||
|
||||
Integer sonDepth = depth == null ? null : depth + 1;
|
||||
StringBuilder sb = new StringBuilder();
|
||||
|
||||
|
||||
@@ -43,32 +43,6 @@ public class IteratorELWrapper extends LoopELWrapper {
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public IteratorELWrapper data(String dataName, Object object) {
|
||||
setData(JsonUtil.toJsonString(object));
|
||||
setDataName(dataName);
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public IteratorELWrapper data(String dataName, String jsonString) {
|
||||
try {
|
||||
JsonUtil.parseObject(jsonString);
|
||||
} catch (Exception e){
|
||||
throw new RuntimeException("字符串不符合Json格式!");
|
||||
}
|
||||
setData(jsonString);
|
||||
setDataName(dataName);
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public IteratorELWrapper data(String dataName, Map<String, Object> jsonMap) {
|
||||
setData(JsonUtil.toJsonString(jsonMap));
|
||||
setDataName(dataName);
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public IteratorELWrapper maxWaitSeconds(Integer maxWaitSeconds){
|
||||
setMaxWaitSeconds(maxWaitSeconds);
|
||||
|
||||
@@ -54,32 +54,6 @@ public abstract class LoopELWrapper extends ELWrapper {
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public LoopELWrapper data(String dataName, Object object) {
|
||||
setData(JsonUtil.toJsonString(object));
|
||||
setDataName(dataName);
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public LoopELWrapper data(String dataName, String jsonString) {
|
||||
try {
|
||||
JsonUtil.parseObject(jsonString);
|
||||
} catch (Exception e){
|
||||
throw new RuntimeException("字符串不符合Json格式!");
|
||||
}
|
||||
setData(jsonString);
|
||||
setDataName(dataName);
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public LoopELWrapper data(String dataName, Map<String, Object> jsonMap) {
|
||||
setData(JsonUtil.toJsonString(jsonMap));
|
||||
setDataName(dataName);
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public LoopELWrapper maxWaitSeconds(Integer maxWaitSeconds){
|
||||
setMaxWaitSeconds(maxWaitSeconds);
|
||||
@@ -88,6 +62,8 @@ public abstract class LoopELWrapper extends ELWrapper {
|
||||
|
||||
@Override
|
||||
protected String toEL(Integer depth, StringBuilder paramContext) {
|
||||
checkMaxWaitSeconds();
|
||||
|
||||
Integer sonDepth = depth == null ? null : depth + 1;
|
||||
StringBuilder sb = new StringBuilder();
|
||||
|
||||
|
||||
@@ -60,18 +60,18 @@ public class NodeELWrapper extends ELWrapper {
|
||||
|
||||
@Override
|
||||
public NodeELWrapper data(String dataName, Object object) {
|
||||
setData(JsonUtil.toJsonString(object));
|
||||
setData("'" + JsonUtil.toJsonString(object) + "'");
|
||||
setDataName(dataName);
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public NodeELWrapper data(String dataName, String jsonString) {
|
||||
try {
|
||||
JsonUtil.parseObject(jsonString);
|
||||
} catch (Exception e){
|
||||
throw new RuntimeException("字符串不符合Json格式!");
|
||||
}
|
||||
// try {
|
||||
// JsonUtil.parseObject(jsonString);
|
||||
// } catch (Exception e){
|
||||
// throw new RuntimeException("字符串不符合Json格式!");
|
||||
// }
|
||||
setData(jsonString);
|
||||
setDataName(dataName);
|
||||
return this;
|
||||
@@ -79,7 +79,7 @@ public class NodeELWrapper extends ELWrapper {
|
||||
|
||||
@Override
|
||||
public NodeELWrapper data(String dataName, Map<String, Object> jsonMap) {
|
||||
setData(JsonUtil.toJsonString(jsonMap));
|
||||
setData("'" + JsonUtil.toJsonString(jsonMap) + "'");
|
||||
setDataName(dataName);
|
||||
return this;
|
||||
}
|
||||
@@ -114,7 +114,8 @@ public class NodeELWrapper extends ELWrapper {
|
||||
}
|
||||
if(this.getData() != null){
|
||||
elContext.append(StrUtil.format(".data({})", this.getDataName()));
|
||||
paramContext.append(StrUtil.format("{} = '{}'\n", this.getDataName(), this.getData()));
|
||||
// paramContext.append(StrUtil.format("{} = '{}'\n", this.getDataName(), this.getData()));
|
||||
paramContext.append(StrUtil.format("{} = {}", this.getDataName(), this.getData())).append(";\n");
|
||||
}
|
||||
if(this.getMaxWaitSeconds() != null){
|
||||
elContext.append(StrUtil.format(".maxWaitSeconds({})", String.valueOf(this.getMaxWaitSeconds())));
|
||||
|
||||
@@ -30,32 +30,6 @@ public class NotELWrapper extends ELWrapper {
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public NotELWrapper data(String dataName, Object object) {
|
||||
setData(JsonUtil.toJsonString(object));
|
||||
setDataName(dataName);
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public NotELWrapper data(String dataName, String jsonString) {
|
||||
try {
|
||||
JsonUtil.parseObject(jsonString);
|
||||
} catch (Exception e){
|
||||
throw new RuntimeException("字符串不符合Json格式!");
|
||||
}
|
||||
setData(jsonString);
|
||||
setDataName(dataName);
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public NotELWrapper data(String dataName, Map<String, Object> jsonMap) {
|
||||
setData(JsonUtil.toJsonString(jsonMap));
|
||||
setDataName(dataName);
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public NotELWrapper maxWaitSeconds(Integer maxWaitSeconds){
|
||||
setMaxWaitSeconds(maxWaitSeconds);
|
||||
@@ -64,6 +38,8 @@ public class NotELWrapper extends ELWrapper {
|
||||
|
||||
@Override
|
||||
protected String toEL(Integer depth, StringBuilder paramContext) {
|
||||
checkMaxWaitSeconds();
|
||||
|
||||
Integer sonDepth = depth == null ? null : depth + 1;
|
||||
StringBuilder sb = new StringBuilder();
|
||||
|
||||
|
||||
@@ -38,32 +38,6 @@ public class OrELWrapper extends ELWrapper {
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public OrELWrapper data(String dataName, Object object) {
|
||||
setData(JsonUtil.toJsonString(object));
|
||||
setDataName(dataName);
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public OrELWrapper data(String dataName, String jsonString) {
|
||||
try {
|
||||
JsonUtil.parseObject(jsonString);
|
||||
} catch (Exception e){
|
||||
throw new RuntimeException("字符串不符合Json格式!");
|
||||
}
|
||||
setData(jsonString);
|
||||
setDataName(dataName);
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public OrELWrapper data(String dataName, Map<String, Object> jsonMap) {
|
||||
setData(JsonUtil.toJsonString(jsonMap));
|
||||
setDataName(dataName);
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public OrELWrapper maxWaitSeconds(Integer maxWaitSeconds){
|
||||
setMaxWaitSeconds(maxWaitSeconds);
|
||||
@@ -72,6 +46,8 @@ public class OrELWrapper extends ELWrapper {
|
||||
|
||||
@Override
|
||||
protected String toEL(Integer depth, StringBuilder paramContext) {
|
||||
checkMaxWaitSeconds();
|
||||
|
||||
Integer sonDepth = depth == null ? null : depth + 1;
|
||||
StringBuilder sb = new StringBuilder();
|
||||
|
||||
|
||||
@@ -30,32 +30,6 @@ public class PreELWrapper extends ELWrapper {
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public PreELWrapper data(String dataName, Object object) {
|
||||
setData(JsonUtil.toJsonString(object));
|
||||
setDataName(dataName);
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public PreELWrapper data(String dataName, String jsonString) {
|
||||
try {
|
||||
JsonUtil.parseObject(jsonString);
|
||||
} catch (Exception e){
|
||||
throw new RuntimeException("字符串不符合Json格式!");
|
||||
}
|
||||
setData(jsonString);
|
||||
setDataName(dataName);
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public PreELWrapper data(String dataName, Map<String, Object> jsonMap) {
|
||||
setData(JsonUtil.toJsonString(jsonMap));
|
||||
setDataName(dataName);
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public PreELWrapper maxWaitSeconds(Integer maxWaitSeconds){
|
||||
setMaxWaitSeconds(maxWaitSeconds);
|
||||
@@ -64,6 +38,8 @@ public class PreELWrapper extends ELWrapper {
|
||||
|
||||
@Override
|
||||
protected String toEL(Integer depth, StringBuilder paramContext) {
|
||||
checkMaxWaitSeconds();
|
||||
|
||||
Integer sonDepth = depth == null ? null : depth + 1;
|
||||
StringBuilder sb = new StringBuilder();
|
||||
|
||||
|
||||
@@ -50,32 +50,6 @@ public class SwitchELWrapper extends ELWrapper {
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public SwitchELWrapper data(String dataName, Object object) {
|
||||
setData(JsonUtil.toJsonString(object));
|
||||
setDataName(dataName);
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public SwitchELWrapper data(String dataName, String jsonString) {
|
||||
try {
|
||||
JsonUtil.parseObject(jsonString);
|
||||
} catch (Exception e){
|
||||
throw new RuntimeException("字符串不符合Json格式!");
|
||||
}
|
||||
setData(jsonString);
|
||||
setDataName(dataName);
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public SwitchELWrapper data(String dataName, Map<String, Object> jsonMap) {
|
||||
setData(JsonUtil.toJsonString(jsonMap));
|
||||
setDataName(dataName);
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public SwitchELWrapper maxWaitSeconds(Integer maxWaitSeconds){
|
||||
setMaxWaitSeconds(maxWaitSeconds);
|
||||
@@ -84,6 +58,8 @@ public class SwitchELWrapper extends ELWrapper {
|
||||
|
||||
@Override
|
||||
protected String toEL(Integer depth, StringBuilder paramContext) {
|
||||
checkMaxWaitSeconds();
|
||||
|
||||
Integer sonDepth = depth == null ? null : depth + 1;
|
||||
StringBuilder sb = new StringBuilder();
|
||||
|
||||
|
||||
@@ -76,39 +76,6 @@ public class ThenELWrapper extends ELWrapper {
|
||||
return this;
|
||||
}
|
||||
|
||||
/**
|
||||
* data关键字的约束:允许以Bean、jsonString、map类型输入数据,必须包含dataName参数。
|
||||
*
|
||||
* @param dataName data名称
|
||||
* @param javaBean JavaBean
|
||||
* @return {@link ThenELWrapper}
|
||||
*/
|
||||
@Override
|
||||
public ThenELWrapper data(String dataName, Object javaBean) {
|
||||
setData(JsonUtil.toJsonString(javaBean));
|
||||
setDataName(dataName);
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public ThenELWrapper data(String dataName, String jsonString) {
|
||||
try {
|
||||
JsonUtil.parseObject(jsonString);
|
||||
} catch (Exception e){
|
||||
throw new RuntimeException("字符串不符合Json格式!");
|
||||
}
|
||||
setData(jsonString);
|
||||
setDataName(dataName);
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public ThenELWrapper data(String dataName, Map<String, Object> jsonMap) {
|
||||
setData(JsonUtil.toJsonString(jsonMap));
|
||||
setDataName(dataName);
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public ThenELWrapper maxWaitSeconds(Integer maxWaitSeconds){
|
||||
setMaxWaitSeconds(maxWaitSeconds);
|
||||
@@ -117,6 +84,8 @@ public class ThenELWrapper extends ELWrapper {
|
||||
|
||||
@Override
|
||||
protected String toEL(Integer depth, StringBuilder paramContext) {
|
||||
checkMaxWaitSeconds();
|
||||
|
||||
Integer sonDepth = depth == null ? null : depth + 1;
|
||||
StringBuilder sb = new StringBuilder();
|
||||
|
||||
|
||||
@@ -69,32 +69,6 @@ public class WhenELWrapper extends ELWrapper {
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public WhenELWrapper data(String dataName, Object object) {
|
||||
setData(JsonUtil.toJsonString(object));
|
||||
setDataName(dataName);
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public WhenELWrapper data(String dataName, String jsonString) {
|
||||
try {
|
||||
JsonUtil.parseObject(jsonString);
|
||||
} catch (Exception e){
|
||||
throw new RuntimeException("字符串不符合Json格式!");
|
||||
}
|
||||
setData(jsonString);
|
||||
setDataName(dataName);
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public WhenELWrapper data(String dataName, Map<String, Object> jsonMap) {
|
||||
setData(JsonUtil.toJsonString(jsonMap));
|
||||
setDataName(dataName);
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public WhenELWrapper maxWaitSeconds(Integer maxWaitSeconds){
|
||||
setMaxWaitSeconds(maxWaitSeconds);
|
||||
@@ -103,6 +77,8 @@ public class WhenELWrapper extends ELWrapper {
|
||||
|
||||
@Override
|
||||
protected String toEL(Integer depth, StringBuilder paramContext) {
|
||||
checkMaxWaitSeconds();
|
||||
|
||||
Integer sonDepth = depth == null ? null : depth + 1;
|
||||
StringBuilder sb = new StringBuilder();
|
||||
|
||||
|
||||
@@ -50,32 +50,6 @@ public class WhileELWrapper extends LoopELWrapper {
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public WhileELWrapper data(String dataName, Object object) {
|
||||
setData(JsonUtil.toJsonString(object));
|
||||
setDataName(dataName);
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public WhileELWrapper data(String dataName, String jsonString) {
|
||||
try {
|
||||
JsonUtil.parseObject(jsonString);
|
||||
} catch (Exception e){
|
||||
throw new RuntimeException("字符串不符合Json格式!");
|
||||
}
|
||||
setData(jsonString);
|
||||
setDataName(dataName);
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public WhileELWrapper data(String dataName, Map<String, Object> jsonMap) {
|
||||
setData(JsonUtil.toJsonString(jsonMap));
|
||||
setDataName(dataName);
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public WhileELWrapper maxWaitSeconds(Integer maxWaitSeconds){
|
||||
setMaxWaitSeconds(maxWaitSeconds);
|
||||
|
||||
Reference in New Issue
Block a user