feat - 增加文档变更事件

This commit is contained in:
wangli 2025-10-10 10:43:05 +08:00
parent 19df0b5816
commit bc3e061700

View File

@ -2,6 +2,7 @@ package cn.axzo.workflow.starter;
import cn.axzo.workflow.starter.common.enums.FailHandleTypeEnum; import cn.axzo.workflow.starter.common.enums.FailHandleTypeEnum;
import cn.axzo.workflow.starter.common.exception.WorkflowUnsupportedException; import cn.axzo.workflow.starter.common.exception.WorkflowUnsupportedException;
import cn.axzo.workflow.starter.handler.DocEventHandler;
import cn.axzo.workflow.starter.handler.MessageNotificationEventHandler; import cn.axzo.workflow.starter.handler.MessageNotificationEventHandler;
import cn.axzo.workflow.starter.handler.ProcessActivityEventHandler; import cn.axzo.workflow.starter.handler.ProcessActivityEventHandler;
import cn.axzo.workflow.starter.handler.ProcessInstanceEventHandler; import cn.axzo.workflow.starter.handler.ProcessInstanceEventHandler;
@ -12,6 +13,7 @@ import cn.axzo.workflow.starter.handler.execute.interceptor.ExecutorInvoker;
import cn.axzo.workflow.starter.handler.execute.interceptor.FailFastInterceptor; import cn.axzo.workflow.starter.handler.execute.interceptor.FailFastInterceptor;
import cn.axzo.workflow.starter.handler.execute.interceptor.FailOverInterceptor; import cn.axzo.workflow.starter.handler.execute.interceptor.FailOverInterceptor;
import cn.axzo.workflow.starter.handler.execute.interceptor.LogInterceptor; import cn.axzo.workflow.starter.handler.execute.interceptor.LogInterceptor;
import cn.axzo.workflow.starter.handler.filter.DocEventFilter;
import cn.axzo.workflow.starter.handler.filter.MessageNotificationEventFilter; import cn.axzo.workflow.starter.handler.filter.MessageNotificationEventFilter;
import cn.axzo.workflow.starter.handler.filter.ProcessActivityEventFilter; import cn.axzo.workflow.starter.handler.filter.ProcessActivityEventFilter;
import cn.axzo.workflow.starter.handler.filter.ProcessInstanceEventFilter; import cn.axzo.workflow.starter.handler.filter.ProcessInstanceEventFilter;
@ -19,6 +21,7 @@ import cn.axzo.workflow.starter.handler.filter.ProcessTaskEventFilter;
import cn.axzo.workflow.starter.handler.monitor.BroadcastDLQReporter; import cn.axzo.workflow.starter.handler.monitor.BroadcastDLQReporter;
import cn.axzo.workflow.starter.handler.monitor.RpcDLQReporter; import cn.axzo.workflow.starter.handler.monitor.RpcDLQReporter;
import cn.axzo.workflow.starter.mq.broadcast.consumer.InnerActivityEventListener; import cn.axzo.workflow.starter.mq.broadcast.consumer.InnerActivityEventListener;
import cn.axzo.workflow.starter.mq.broadcast.consumer.InnerDocEventListener;
import cn.axzo.workflow.starter.mq.broadcast.consumer.InnerInstanceEventListener; import cn.axzo.workflow.starter.mq.broadcast.consumer.InnerInstanceEventListener;
import cn.axzo.workflow.starter.mq.broadcast.consumer.InnerNotificationEventListener; import cn.axzo.workflow.starter.mq.broadcast.consumer.InnerNotificationEventListener;
import cn.axzo.workflow.starter.mq.broadcast.consumer.InnerTaskEventListener; import cn.axzo.workflow.starter.mq.broadcast.consumer.InnerTaskEventListener;
@ -101,6 +104,13 @@ public class WorkflowEngineStarterAutoConfiguration {
return new InnerNotificationEventListener(executor, handlerProvider, filterProvider); return new InnerNotificationEventListener(executor, handlerProvider, filterProvider);
} }
@Bean
public InnerDocEventListener innerDocEventListener(ListenerExecutor executor,
ObjectProvider<List<DocEventHandler>> handlerProvider,
ObjectProvider<List<DocEventFilter>> filterProvider) {
return new InnerDocEventListener(executor, handlerProvider, filterProvider);
}
private ExecuteInterceptor getFailInterceptor(WorkflowEngineStarterProperties starterProperties) { private ExecuteInterceptor getFailInterceptor(WorkflowEngineStarterProperties starterProperties) {
BroadcastListenerProperties listenerRetry = starterProperties.getBroadcast(); BroadcastListenerProperties listenerRetry = starterProperties.getBroadcast();
FailHandleTypeEnum failHandleType = listenerRetry.getFailHandleType(); FailHandleTypeEnum failHandleType = listenerRetry.getFailHandleType();