mirror of
https://gitee.com/dromara/liteFlow.git
synced 2026-05-14 12:12:08 +08:00
feature #I4UPWG 模块架构调整,支持非Spring的项目使用
This commit is contained in:
@@ -11,7 +11,7 @@ import com.yomahub.liteflow.exception.ExecutableItemNotFoundException;
|
||||
import com.yomahub.liteflow.flow.FlowBus;
|
||||
import com.yomahub.liteflow.parser.RegexEntity;
|
||||
import com.yomahub.liteflow.parser.RegexNodeEntity;
|
||||
import com.yomahub.liteflow.spi.factory.ContextAwareFactory;
|
||||
import com.yomahub.liteflow.spi.holder.ContextAwareHolder;
|
||||
|
||||
import java.util.ArrayList;
|
||||
|
||||
@@ -88,7 +88,7 @@ public class LiteFlowConditionBuilder {
|
||||
this.condition.getNodeList().add(chain);
|
||||
} else {
|
||||
//元数据没有的话,从spring上下文再取一遍,这部分是为了防止标有@Lazy懒加载的组件
|
||||
NodeComponent nodeComponent = ContextAwareFactory.loadContextAware().getBean(item.getId());
|
||||
NodeComponent nodeComponent = ContextAwareHolder.loadContextAware().getBean(item.getId());
|
||||
if (ObjectUtil.isNotNull(nodeComponent)){
|
||||
FlowBus.addSpringScanNode(item.getId(), nodeComponent);
|
||||
return setValue(value);
|
||||
|
||||
@@ -8,7 +8,7 @@ import com.yomahub.liteflow.entity.executor.NodeExecutor;
|
||||
import com.yomahub.liteflow.enums.NodeTypeEnum;
|
||||
import com.yomahub.liteflow.property.LiteflowConfig;
|
||||
import com.yomahub.liteflow.property.LiteflowConfigGetter;
|
||||
import com.yomahub.liteflow.spi.factory.LiteflowComponentSupportFactory;
|
||||
import com.yomahub.liteflow.spi.holder.LiteflowComponentSupportHolder;
|
||||
|
||||
/**
|
||||
* 组件初始化器
|
||||
@@ -35,7 +35,7 @@ public class ComponentInitializer {
|
||||
//@LiteflowComponent标注只在spring体系下生效,这里用了spi机制取到相应环境下的实现类
|
||||
nodeComponent.setName(desc);
|
||||
if (nodeComponent.getType().equals(NodeTypeEnum.COMMON) && StrUtil.isBlank(nodeComponent.getName())){
|
||||
String name = LiteflowComponentSupportFactory.loadLiteflowComponentSupport().getCmpName(nodeComponent);
|
||||
String name = LiteflowComponentSupportHolder.loadLiteflowComponentSupport().getCmpName(nodeComponent);
|
||||
nodeComponent.setName(name);
|
||||
}
|
||||
|
||||
|
||||
@@ -18,7 +18,7 @@ import com.yomahub.liteflow.enums.FlowParserTypeEnum;
|
||||
import com.yomahub.liteflow.exception.*;
|
||||
import com.yomahub.liteflow.parser.*;
|
||||
import com.yomahub.liteflow.property.LiteflowConfig;
|
||||
import com.yomahub.liteflow.spi.factory.ContextAwareFactory;
|
||||
import com.yomahub.liteflow.spi.holder.ContextAwareHolder;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
@@ -175,11 +175,11 @@ public class FlowExecutor {
|
||||
Class<?> c = Class.forName(path);
|
||||
switch (pattern) {
|
||||
case TYPE_XML:
|
||||
return (XmlFlowParser) ContextAwareFactory.loadContextAware().registerBean(c);
|
||||
return (XmlFlowParser) ContextAwareHolder.loadContextAware().registerBean(c);
|
||||
case TYPE_JSON:
|
||||
return (JsonFlowParser) ContextAwareFactory.loadContextAware().registerBean(c);
|
||||
return (JsonFlowParser) ContextAwareHolder.loadContextAware().registerBean(c);
|
||||
case TYPE_YML:
|
||||
return (YmlFlowParser) ContextAwareFactory.loadContextAware().registerBean(c);
|
||||
return (YmlFlowParser) ContextAwareHolder.loadContextAware().registerBean(c);
|
||||
default:
|
||||
}
|
||||
} else if (isZKConfig(path)) {
|
||||
|
||||
@@ -14,8 +14,8 @@ import com.alibaba.ttl.TransmittableThreadLocal;
|
||||
import com.yomahub.liteflow.entity.executor.NodeExecutor;
|
||||
import com.yomahub.liteflow.entity.executor.DefaultNodeExecutor;
|
||||
import com.yomahub.liteflow.enums.NodeTypeEnum;
|
||||
import com.yomahub.liteflow.spi.factory.CmpAroundAspectFactory;
|
||||
import com.yomahub.liteflow.spi.factory.ContextAwareFactory;
|
||||
import com.yomahub.liteflow.spi.holder.CmpAroundAspectHolder;
|
||||
import com.yomahub.liteflow.spi.holder.ContextAwareHolder;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
@@ -69,7 +69,7 @@ public abstract class NodeComponent{
|
||||
private final TransmittableThreadLocal<Boolean> isEndTL = new TransmittableThreadLocal<>();
|
||||
|
||||
public NodeComponent() {
|
||||
monitorBus = ContextAwareFactory.loadContextAware().getBean(MonitorBus.class);
|
||||
monitorBus = ContextAwareHolder.loadContextAware().getBean(MonitorBus.class);
|
||||
}
|
||||
|
||||
public void execute() throws Exception{
|
||||
@@ -82,9 +82,9 @@ public abstract class NodeComponent{
|
||||
|
||||
//全局切面只在spring体系下生效,这里用了spi机制取到相应环境下的实现类
|
||||
//非spring环境下,全局切面为空实现
|
||||
CmpAroundAspectFactory.loadCmpAroundAspect().beforeProcess(this.getNodeId(), slot);
|
||||
CmpAroundAspectHolder.loadCmpAroundAspect().beforeProcess(this.getNodeId(), slot);
|
||||
self.process();
|
||||
CmpAroundAspectFactory.loadCmpAroundAspect().afterProcess(this.getNodeId(), slot);
|
||||
CmpAroundAspectHolder.loadCmpAroundAspect().afterProcess(this.getNodeId(), slot);
|
||||
|
||||
stopWatch.stop();
|
||||
|
||||
|
||||
@@ -2,7 +2,7 @@ package com.yomahub.liteflow.entity.executor;
|
||||
|
||||
import cn.hutool.core.util.ObjectUtil;
|
||||
import com.google.common.collect.Maps;
|
||||
import com.yomahub.liteflow.spi.factory.ContextAwareFactory;
|
||||
import com.yomahub.liteflow.spi.holder.ContextAwareHolder;
|
||||
|
||||
import java.util.Map;
|
||||
|
||||
@@ -41,7 +41,7 @@ public class NodeExecutorHelper {
|
||||
// 此处无需使用同步锁进行同步-因为即使同时创建了两个实例,但是添加到缓存中的只会存在一个且不会存在并发问题-具体是由ConcurrentMap保证
|
||||
if (ObjectUtil.isNull(nodeExecutor)) {
|
||||
// 获取重试执行器实例
|
||||
nodeExecutor = ContextAwareFactory.loadContextAware().registerBean(nodeExecutorClass);
|
||||
nodeExecutor = ContextAwareHolder.loadContextAware().registerBean(nodeExecutorClass);
|
||||
// 缓存
|
||||
nodeExecutorMap.put(nodeExecutorClass, nodeExecutor);
|
||||
}
|
||||
|
||||
@@ -28,7 +28,7 @@ import com.yomahub.liteflow.parser.LocalYmlFlowParser;
|
||||
import com.yomahub.liteflow.script.ScriptExecutor;
|
||||
import com.yomahub.liteflow.script.ScriptExecutorFactory;
|
||||
import com.yomahub.liteflow.script.exception.ScriptSpiException;
|
||||
import com.yomahub.liteflow.spi.factory.ContextAwareFactory;
|
||||
import com.yomahub.liteflow.spi.holder.ContextAwareHolder;
|
||||
import com.yomahub.liteflow.util.CopyOnWriteHashMap;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
@@ -106,7 +106,7 @@ public class FlowBus {
|
||||
//如果是script类型的节点,因为class只有一个,所以也不能注册进spring上下文,注册的时候需要new Instance
|
||||
NodeComponent cmpInstance = null;
|
||||
if (!CollectionUtil.newArrayList(NodeTypeEnum.SCRIPT, NodeTypeEnum.COND_SCRIPT).contains(type)){
|
||||
cmpInstance = ContextAwareFactory.loadContextAware().registerOrGet(nodeId, cmpClazz);
|
||||
cmpInstance = ContextAwareHolder.loadContextAware().registerOrGet(nodeId, cmpClazz);
|
||||
}
|
||||
|
||||
if (ObjectUtil.isNull(cmpInstance)) {
|
||||
|
||||
@@ -16,7 +16,7 @@ import com.yomahub.liteflow.exception.EmptyConditionValueException;
|
||||
import com.yomahub.liteflow.exception.NodeTypeNotSupportException;
|
||||
import com.yomahub.liteflow.exception.NotSupportConditionException;
|
||||
import com.yomahub.liteflow.flow.FlowBus;
|
||||
import com.yomahub.liteflow.spi.factory.ContextCmpInitFactory;
|
||||
import com.yomahub.liteflow.spi.holder.ContextCmpInitHolder;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
import java.util.*;
|
||||
@@ -56,7 +56,7 @@ public abstract class JsonFlowParser implements FlowParser {
|
||||
//在相应的环境下进行节点的初始化工作
|
||||
//在spring体系下会获得spring扫描后的节点,接入元数据
|
||||
//在非spring体系下是一个空实现,等于不做此步骤
|
||||
ContextCmpInitFactory.loadContextCmpInit().initCmp();
|
||||
ContextCmpInitHolder.loadContextCmpInit().initCmp();
|
||||
|
||||
//先在元数据里放上chain
|
||||
//先放有一个好处,可以在parse的时候先映射到FlowBus的chainMap,然后再去解析
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
package com.yomahub.liteflow.parser;
|
||||
|
||||
import com.yomahub.liteflow.spi.factory.PathContentParserFactory;
|
||||
import com.yomahub.liteflow.spi.holder.PathContentParserHolder;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@@ -12,7 +12,7 @@ public class LocalJsonFlowParser extends JsonFlowParser{
|
||||
|
||||
@Override
|
||||
public void parseMain(List<String> pathList) throws Exception {
|
||||
List<String> contentList = PathContentParserFactory.loadContextAware().parseContent(pathList);
|
||||
List<String> contentList = PathContentParserHolder.loadContextAware().parseContent(pathList);
|
||||
parse(contentList);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
*/
|
||||
package com.yomahub.liteflow.parser;
|
||||
|
||||
import com.yomahub.liteflow.spi.factory.PathContentParserFactory;
|
||||
import com.yomahub.liteflow.spi.holder.PathContentParserHolder;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@@ -18,7 +18,7 @@ import java.util.List;
|
||||
public class LocalXmlFlowParser extends XmlFlowParser{
|
||||
|
||||
public void parseMain(List<String> pathList) throws Exception {
|
||||
List<String> contentList = PathContentParserFactory.loadContextAware().parseContent(pathList);
|
||||
List<String> contentList = PathContentParserHolder.loadContextAware().parseContent(pathList);
|
||||
parse(contentList);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
package com.yomahub.liteflow.parser;
|
||||
|
||||
import com.yomahub.liteflow.spi.factory.PathContentParserFactory;
|
||||
import com.yomahub.liteflow.spi.holder.PathContentParserHolder;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@@ -14,7 +14,7 @@ public class LocalYmlFlowParser extends YmlFlowParser {
|
||||
|
||||
@Override
|
||||
public void parseMain(List<String> pathList) throws Exception {
|
||||
List<String> contentList = PathContentParserFactory.loadContextAware().parseContent(pathList);
|
||||
List<String> contentList = PathContentParserHolder.loadContextAware().parseContent(pathList);
|
||||
parse(contentList);
|
||||
}
|
||||
|
||||
|
||||
@@ -11,7 +11,7 @@ import com.yomahub.liteflow.enums.ConditionTypeEnum;
|
||||
import com.yomahub.liteflow.enums.NodeTypeEnum;
|
||||
import com.yomahub.liteflow.exception.*;
|
||||
import com.yomahub.liteflow.flow.FlowBus;
|
||||
import com.yomahub.liteflow.spi.factory.ContextCmpInitFactory;
|
||||
import com.yomahub.liteflow.spi.holder.ContextCmpInitHolder;
|
||||
import org.dom4j.Document;
|
||||
import org.dom4j.DocumentHelper;
|
||||
import org.dom4j.Element;
|
||||
@@ -49,7 +49,7 @@ public abstract class XmlFlowParser implements FlowParser {
|
||||
//在相应的环境下进行节点的初始化工作
|
||||
//在spring体系下会获得spring扫描后的节点,接入元数据
|
||||
//在非spring体系下是一个空实现,等于不做此步骤
|
||||
ContextCmpInitFactory.loadContextCmpInit().initCmp();
|
||||
ContextCmpInitHolder.loadContextCmpInit().initCmp();
|
||||
|
||||
//先在元数据里放上chain
|
||||
//先放有一个好处,可以在parse的时候先映射到FlowBus的chainMap,然后再去解析
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
package com.yomahub.liteflow.property;
|
||||
|
||||
import cn.hutool.core.util.ObjectUtil;
|
||||
import com.yomahub.liteflow.spi.factory.ContextAwareFactory;
|
||||
import com.yomahub.liteflow.spi.holder.ContextAwareHolder;
|
||||
|
||||
/**
|
||||
* liteflow的配置获取器
|
||||
@@ -12,7 +12,7 @@ public class LiteflowConfigGetter {
|
||||
|
||||
public static LiteflowConfig get(){
|
||||
if (ObjectUtil.isNull(liteflowConfig)){
|
||||
liteflowConfig = ContextAwareFactory.loadContextAware().getBean(LiteflowConfig.class);
|
||||
liteflowConfig = ContextAwareHolder.loadContextAware().getBean(LiteflowConfig.class);
|
||||
//这里liteflowConfig不可能为null
|
||||
//如果在springboot环境,由于自动装配,所以不可能为null
|
||||
//在spring环境,如果xml没配置,在FlowExecutor的init时候就已经报错了
|
||||
|
||||
@@ -1,12 +0,0 @@
|
||||
package com.yomahub.liteflow.spi.factory;
|
||||
|
||||
public class SpiFactoryCleaner {
|
||||
|
||||
public static void clean(){
|
||||
CmpAroundAspectFactory.clean();
|
||||
ContextAwareFactory.clean();
|
||||
ContextCmpInitFactory.clean();
|
||||
LiteflowComponentSupportFactory.clean();
|
||||
PathContentParserFactory.clean();
|
||||
}
|
||||
}
|
||||
@@ -1,4 +1,4 @@
|
||||
package com.yomahub.liteflow.spi.factory;
|
||||
package com.yomahub.liteflow.spi.holder;
|
||||
|
||||
import cn.hutool.core.util.ObjectUtil;
|
||||
import com.yomahub.liteflow.spi.CmpAroundAspect;
|
||||
@@ -13,7 +13,7 @@ import java.util.ServiceLoader;
|
||||
* @author Bryan.Zhang
|
||||
* @since 2.6.11
|
||||
*/
|
||||
public class CmpAroundAspectFactory {
|
||||
public class CmpAroundAspectHolder {
|
||||
|
||||
private static CmpAroundAspect cmpAroundAspect;
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package com.yomahub.liteflow.spi.factory;
|
||||
package com.yomahub.liteflow.spi.holder;
|
||||
|
||||
import cn.hutool.core.util.ObjectUtil;
|
||||
import com.yomahub.liteflow.spi.ContextAware;
|
||||
@@ -14,7 +14,7 @@ import java.util.ServiceLoader;
|
||||
* @author Bryan.Zhang
|
||||
* @since 2.6.11
|
||||
*/
|
||||
public class ContextAwareFactory {
|
||||
public class ContextAwareHolder {
|
||||
|
||||
private static ContextAware contextAware;
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package com.yomahub.liteflow.spi.factory;
|
||||
package com.yomahub.liteflow.spi.holder;
|
||||
|
||||
import cn.hutool.core.util.ObjectUtil;
|
||||
import com.yomahub.liteflow.spi.ContextCmpInit;
|
||||
@@ -13,7 +13,7 @@ import java.util.ServiceLoader;
|
||||
* @author Bryan.Zhang
|
||||
* @since 2.6.11
|
||||
*/
|
||||
public class ContextCmpInitFactory {
|
||||
public class ContextCmpInitHolder {
|
||||
|
||||
private static ContextCmpInit contextCmpInit;
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package com.yomahub.liteflow.spi.factory;
|
||||
package com.yomahub.liteflow.spi.holder;
|
||||
|
||||
import cn.hutool.core.util.ObjectUtil;
|
||||
import com.yomahub.liteflow.spi.LiteflowComponentSupport;
|
||||
@@ -12,7 +12,7 @@ import java.util.ServiceLoader;
|
||||
* @author Bryan.Zhang
|
||||
* @since 2.6.11
|
||||
*/
|
||||
public class LiteflowComponentSupportFactory {
|
||||
public class LiteflowComponentSupportHolder {
|
||||
|
||||
private static LiteflowComponentSupport liteflowComponentSupport;
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
package com.yomahub.liteflow.spi.factory;
|
||||
package com.yomahub.liteflow.spi.holder;
|
||||
|
||||
import cn.hutool.core.util.ObjectUtil;
|
||||
import com.yomahub.liteflow.spi.ContextAware;
|
||||
import com.yomahub.liteflow.spi.PathContentParser;
|
||||
|
||||
import java.util.ArrayList;
|
||||
@@ -9,7 +8,7 @@ import java.util.Comparator;
|
||||
import java.util.List;
|
||||
import java.util.ServiceLoader;
|
||||
|
||||
public class PathContentParserFactory {
|
||||
public class PathContentParserHolder {
|
||||
|
||||
private static PathContentParser pathContentParser;
|
||||
|
||||
@@ -0,0 +1,12 @@
|
||||
package com.yomahub.liteflow.spi.holder;
|
||||
|
||||
public class SpiFactoryCleaner {
|
||||
|
||||
public static void clean(){
|
||||
CmpAroundAspectHolder.clean();
|
||||
ContextAwareHolder.clean();
|
||||
ContextCmpInitHolder.clean();
|
||||
LiteflowComponentSupportHolder.clean();
|
||||
PathContentParserHolder.clean();
|
||||
}
|
||||
}
|
||||
@@ -1,6 +1,6 @@
|
||||
package com.yomahub.liteflow.util;
|
||||
|
||||
import com.yomahub.liteflow.spi.factory.ContextAwareFactory;
|
||||
import com.yomahub.liteflow.spi.holder.ContextAwareHolder;
|
||||
import com.yomahub.liteflow.thread.ExecutorHelper;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
@@ -19,7 +19,7 @@ public class LiteFlowExecutorPoolShutdown {
|
||||
|
||||
@PreDestroy
|
||||
public void destroy() throws Exception {
|
||||
ExecutorService executorService = ContextAwareFactory.loadContextAware().getBean("whenExecutors");
|
||||
ExecutorService executorService = ContextAwareHolder.loadContextAware().getBean("whenExecutors");
|
||||
|
||||
LOG.info("Start closing the liteflow-when-calls...");
|
||||
ExecutorHelper.loadInstance().shutdownAwaitTermination(executorService);
|
||||
|
||||
@@ -2,7 +2,7 @@ package com.yomahub.liteflow.test;
|
||||
|
||||
import com.yomahub.liteflow.flow.FlowBus;
|
||||
import com.yomahub.liteflow.property.LiteflowConfigGetter;
|
||||
import com.yomahub.liteflow.spi.factory.SpiFactoryCleaner;
|
||||
import com.yomahub.liteflow.spi.holder.SpiFactoryCleaner;
|
||||
import com.yomahub.liteflow.spring.ComponentScanner;
|
||||
import com.yomahub.liteflow.thread.ExecutorHelper;
|
||||
import org.junit.AfterClass;
|
||||
|
||||
@@ -2,7 +2,7 @@ package com.yomahub.liteflow.test;
|
||||
|
||||
import com.yomahub.liteflow.flow.FlowBus;
|
||||
import com.yomahub.liteflow.property.LiteflowConfigGetter;
|
||||
import com.yomahub.liteflow.spi.factory.SpiFactoryCleaner;
|
||||
import com.yomahub.liteflow.spi.holder.SpiFactoryCleaner;
|
||||
import com.yomahub.liteflow.spring.ComponentScanner;
|
||||
import com.yomahub.liteflow.thread.ExecutorHelper;
|
||||
import org.junit.AfterClass;
|
||||
|
||||
@@ -2,7 +2,7 @@ package com.yomahub.liteflow.test;
|
||||
|
||||
import com.yomahub.liteflow.flow.FlowBus;
|
||||
import com.yomahub.liteflow.property.LiteflowConfigGetter;
|
||||
import com.yomahub.liteflow.spi.factory.SpiFactoryCleaner;
|
||||
import com.yomahub.liteflow.spi.holder.SpiFactoryCleaner;
|
||||
import com.yomahub.liteflow.spring.ComponentScanner;
|
||||
import com.yomahub.liteflow.thread.ExecutorHelper;
|
||||
import org.junit.AfterClass;
|
||||
|
||||
@@ -2,7 +2,7 @@ package com.yomahub.liteflow.test.customWhenThreadPool;
|
||||
|
||||
import cn.hutool.core.util.ObjectUtil;
|
||||
import com.yomahub.liteflow.property.LiteflowConfig;
|
||||
import com.yomahub.liteflow.spi.factory.ContextAwareFactory;
|
||||
import com.yomahub.liteflow.spi.holder.ContextAwareHolder;
|
||||
import com.yomahub.liteflow.thread.ExecutorBuilder;
|
||||
|
||||
import java.util.concurrent.*;
|
||||
@@ -11,7 +11,7 @@ public class CustomThreadExecutor1 implements ExecutorBuilder {
|
||||
|
||||
@Override
|
||||
public ExecutorService buildExecutor() {
|
||||
LiteflowConfig liteflowConfig = ContextAwareFactory.loadContextAware().getBean(LiteflowConfig.class);
|
||||
LiteflowConfig liteflowConfig = ContextAwareHolder.loadContextAware().getBean(LiteflowConfig.class);
|
||||
//只有在非spring的场景下liteflowConfig才会为null
|
||||
if (ObjectUtil.isNull(liteflowConfig)) {
|
||||
liteflowConfig = new LiteflowConfig();
|
||||
|
||||
@@ -2,7 +2,7 @@ package com.yomahub.liteflow.test.customWhenThreadPool;
|
||||
|
||||
import cn.hutool.core.util.ObjectUtil;
|
||||
import com.yomahub.liteflow.property.LiteflowConfig;
|
||||
import com.yomahub.liteflow.spi.factory.ContextAwareFactory;
|
||||
import com.yomahub.liteflow.spi.holder.ContextAwareHolder;
|
||||
import com.yomahub.liteflow.thread.ExecutorBuilder;
|
||||
|
||||
import java.util.concurrent.*;
|
||||
@@ -10,7 +10,7 @@ import java.util.concurrent.*;
|
||||
public class CustomThreadExecutor2 implements ExecutorBuilder {
|
||||
@Override
|
||||
public ExecutorService buildExecutor() {
|
||||
LiteflowConfig liteflowConfig = ContextAwareFactory.loadContextAware().getBean(LiteflowConfig.class);
|
||||
LiteflowConfig liteflowConfig = ContextAwareHolder.loadContextAware().getBean(LiteflowConfig.class);
|
||||
//只有在非spring的场景下liteflowConfig才会为null
|
||||
if (ObjectUtil.isNull(liteflowConfig)) {
|
||||
liteflowConfig = new LiteflowConfig();
|
||||
|
||||
@@ -2,7 +2,7 @@ package com.yomahub.liteflow.test.customWhenThreadPool;
|
||||
|
||||
import cn.hutool.core.util.ObjectUtil;
|
||||
import com.yomahub.liteflow.property.LiteflowConfig;
|
||||
import com.yomahub.liteflow.spi.factory.ContextAwareFactory;
|
||||
import com.yomahub.liteflow.spi.holder.ContextAwareHolder;
|
||||
import com.yomahub.liteflow.thread.ExecutorBuilder;
|
||||
|
||||
import java.util.concurrent.ExecutorService;
|
||||
@@ -10,7 +10,7 @@ import java.util.concurrent.ExecutorService;
|
||||
public class CustomThreadExecutor3 implements ExecutorBuilder {
|
||||
@Override
|
||||
public ExecutorService buildExecutor() {
|
||||
LiteflowConfig liteflowConfig = ContextAwareFactory.loadContextAware().getBean(LiteflowConfig.class);
|
||||
LiteflowConfig liteflowConfig = ContextAwareHolder.loadContextAware().getBean(LiteflowConfig.class);
|
||||
//只有在非spring的场景下liteflowConfig才会为null
|
||||
if (ObjectUtil.isNull(liteflowConfig)) {
|
||||
liteflowConfig = new LiteflowConfig();
|
||||
|
||||
@@ -2,7 +2,7 @@ package com.yomahub.liteflow.test;
|
||||
|
||||
import com.yomahub.liteflow.flow.FlowBus;
|
||||
import com.yomahub.liteflow.property.LiteflowConfigGetter;
|
||||
import com.yomahub.liteflow.spi.factory.SpiFactoryCleaner;
|
||||
import com.yomahub.liteflow.spi.holder.SpiFactoryCleaner;
|
||||
import com.yomahub.liteflow.spring.ComponentScanner;
|
||||
import com.yomahub.liteflow.thread.ExecutorHelper;
|
||||
import org.junit.AfterClass;
|
||||
|
||||
@@ -2,7 +2,7 @@ package com.yomahub.liteflow.test.customWhenThreadPool;
|
||||
|
||||
import cn.hutool.core.util.ObjectUtil;
|
||||
import com.yomahub.liteflow.property.LiteflowConfig;
|
||||
import com.yomahub.liteflow.spi.factory.ContextAwareFactory;
|
||||
import com.yomahub.liteflow.spi.holder.ContextAwareHolder;
|
||||
import com.yomahub.liteflow.thread.ExecutorBuilder;
|
||||
|
||||
import java.util.concurrent.ExecutorService;
|
||||
@@ -11,7 +11,7 @@ public class CustomThreadExecutor1 implements ExecutorBuilder {
|
||||
|
||||
@Override
|
||||
public ExecutorService buildExecutor() {
|
||||
LiteflowConfig liteflowConfig = ContextAwareFactory.loadContextAware().getBean(LiteflowConfig.class);
|
||||
LiteflowConfig liteflowConfig = ContextAwareHolder.loadContextAware().getBean(LiteflowConfig.class);
|
||||
//只有在非spring的场景下liteflowConfig才会为null
|
||||
if (ObjectUtil.isNull(liteflowConfig)) {
|
||||
liteflowConfig = new LiteflowConfig();
|
||||
|
||||
@@ -2,7 +2,7 @@ package com.yomahub.liteflow.test.customWhenThreadPool;
|
||||
|
||||
import cn.hutool.core.util.ObjectUtil;
|
||||
import com.yomahub.liteflow.property.LiteflowConfig;
|
||||
import com.yomahub.liteflow.spi.factory.ContextAwareFactory;
|
||||
import com.yomahub.liteflow.spi.holder.ContextAwareHolder;
|
||||
import com.yomahub.liteflow.thread.ExecutorBuilder;
|
||||
|
||||
import java.util.concurrent.ExecutorService;
|
||||
@@ -10,7 +10,7 @@ import java.util.concurrent.ExecutorService;
|
||||
public class CustomThreadExecutor2 implements ExecutorBuilder {
|
||||
@Override
|
||||
public ExecutorService buildExecutor() {
|
||||
LiteflowConfig liteflowConfig = ContextAwareFactory.loadContextAware().getBean(LiteflowConfig.class);
|
||||
LiteflowConfig liteflowConfig = ContextAwareHolder.loadContextAware().getBean(LiteflowConfig.class);
|
||||
//只有在非spring的场景下liteflowConfig才会为null
|
||||
if (ObjectUtil.isNull(liteflowConfig)) {
|
||||
liteflowConfig = new LiteflowConfig();
|
||||
|
||||
@@ -2,7 +2,7 @@ package com.yomahub.liteflow.test.customWhenThreadPool;
|
||||
|
||||
import cn.hutool.core.util.ObjectUtil;
|
||||
import com.yomahub.liteflow.property.LiteflowConfig;
|
||||
import com.yomahub.liteflow.spi.factory.ContextAwareFactory;
|
||||
import com.yomahub.liteflow.spi.holder.ContextAwareHolder;
|
||||
import com.yomahub.liteflow.thread.ExecutorBuilder;
|
||||
|
||||
import java.util.concurrent.ExecutorService;
|
||||
@@ -10,7 +10,7 @@ import java.util.concurrent.ExecutorService;
|
||||
public class CustomThreadExecutor3 implements ExecutorBuilder {
|
||||
@Override
|
||||
public ExecutorService buildExecutor() {
|
||||
LiteflowConfig liteflowConfig = ContextAwareFactory.loadContextAware().getBean(LiteflowConfig.class);
|
||||
LiteflowConfig liteflowConfig = ContextAwareHolder.loadContextAware().getBean(LiteflowConfig.class);
|
||||
//只有在非spring的场景下liteflowConfig才会为null
|
||||
if (ObjectUtil.isNull(liteflowConfig)) {
|
||||
liteflowConfig = new LiteflowConfig();
|
||||
|
||||
Reference in New Issue
Block a user