diff --git a/deploy.bat b/deploy.bat new file mode 100644 index 000000000..c382c102f --- /dev/null +++ b/deploy.bat @@ -0,0 +1 @@ +mvn clean install deploy \ No newline at end of file diff --git a/pom.xml b/pom.xml index 27c0b52ba..cfbd990a3 100644 --- a/pom.xml +++ b/pom.xml @@ -13,6 +13,7 @@ 3.4 4.1 2.4 + 1.2 4.2.6.RELEASE 1.7.21 1.2.17 @@ -49,6 +50,16 @@ spring-context ${spring.version} + + org.springframework + spring-aop + ${spring.version} + + + org.springframework + spring-expression + ${spring.version} + org.springframework spring-test @@ -84,6 +95,11 @@ junit ${junit.version} + + commons-logging + commons-logging + ${commons-logging.version} + @@ -107,4 +123,17 @@ + + + + nexus-releases + nexus-releases + http://118.178.236.200:8087/nexus/content/repositories/thirdparty + + + nexus-snapshots + nexus-snapshots + http://118.178.236.200:8087/nexus/content/repositories/snapshots + + \ No newline at end of file diff --git a/src/main/java/com/thebeastshop/liteflow/core/FlowExecutor.java b/src/main/java/com/thebeastshop/liteflow/core/FlowExecutor.java index 708fce999..7ab5e7e56 100644 --- a/src/main/java/com/thebeastshop/liteflow/core/FlowExecutor.java +++ b/src/main/java/com/thebeastshop/liteflow/core/FlowExecutor.java @@ -23,6 +23,7 @@ import com.thebeastshop.liteflow.entity.config.Node; import com.thebeastshop.liteflow.entity.config.ThenCondition; import com.thebeastshop.liteflow.entity.config.WhenCondition; import com.thebeastshop.liteflow.entity.data.DataBus; +import com.thebeastshop.liteflow.exception.FlowException; import com.thebeastshop.liteflow.flow.FlowBus; import com.thebeastshop.liteflow.parser.FlowParser; @@ -78,13 +79,15 @@ public class FlowExecutor { if(component.isAccess()){ component.execute(); }else{ - LOG.info("component[{}] do not gain access",component.getClass().getSimpleName()); + LOG.error("component[{}] do not gain access",component.getClass().getSimpleName()); + throw new FlowException("component ["+component.getClass().getSimpleName()+"] do not gain access"); } }catch(Throwable t){ if(component.isContinueOnError()){ LOG.error("component[{}] cause error,but flow is still go on",t,component.getClass().getSimpleName()); }else{ - throw new Exception(t); + LOG.error(t.getMessage(),t); + throw t; } } } @@ -100,7 +103,7 @@ public class FlowExecutor { return DataBus.getSlot(slotIndex).getResponseData(); }catch(Exception e){ LOG.error("executor cause error",e); - return null; + throw new FlowException("executor cause error"); }finally{ DataBus.releaseSlot(slotIndex); } diff --git a/src/main/java/com/thebeastshop/liteflow/exception/FlowException.java b/src/main/java/com/thebeastshop/liteflow/exception/FlowException.java new file mode 100644 index 000000000..e3b1f5e3b --- /dev/null +++ b/src/main/java/com/thebeastshop/liteflow/exception/FlowException.java @@ -0,0 +1,21 @@ +package com.thebeastshop.liteflow.exception; + +public class FlowException extends RuntimeException { + + private static final long serialVersionUID = 1L; + + /** 异常信息 */ + private String message; + + public FlowException(String message) { + this.message = message; + } + + public String getMessage() { + return message; + } + + public void setMessage(String message) { + this.message = message; + } +} diff --git a/src/test/java/com/thebeastshop/liteflow/test/TestWithSpringMain.java b/src/test/java/com/thebeastshop/liteflow/test/TestWithSpringMain.java index 55de356f1..2a0c459ea 100644 --- a/src/test/java/com/thebeastshop/liteflow/test/TestWithSpringMain.java +++ b/src/test/java/com/thebeastshop/liteflow/test/TestWithSpringMain.java @@ -25,7 +25,7 @@ public class TestWithSpringMain { public void test1() throws Exception { ExecutorService executorService = Executors.newFixedThreadPool(10); - for(int i=0;i<100;i++){ + for(int i=0;i<1;i++){ executorService.submit(new Thread(){ @Override public void run() { diff --git a/src/test/resources/flow.xml b/src/test/resources/config/flow.xml similarity index 100% rename from src/test/resources/flow.xml rename to src/test/resources/config/flow.xml diff --git a/src/test/resources/spring-test.xml b/src/test/resources/spring-test.xml index 4caa5f00f..8cc2046d7 100644 --- a/src/test/resources/spring-test.xml +++ b/src/test/resources/spring-test.xml @@ -13,7 +13,7 @@ - flow.xml + config/flow.xml