From 30e37e663023bc954a8740b0e0a0b3100309dcff Mon Sep 17 00:00:00 2001 From: SerLiunx-ctrl <17689543@qq.com> Date: Thu, 6 Feb 2025 15:33:31 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E5=B9=B6=E5=8F=91=E6=80=A7=E5=BD=93?= =?UTF-8?q?=E5=89=8D=E7=8A=B6=E6=80=81=E8=8E=B7=E5=8F=96=E5=BC=82=E5=B8=B8?= =?UTF-8?q?=E3=80=81=E4=BB=A3=E7=A0=81=E8=B0=83=E6=95=B4.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../statemanagement/machine/AbstractStateMachine.java | 8 ++++++++ .../machine/DefaultConcurrentStateMachine.java | 4 ++-- .../statemanagement/machine/StandardStateMachine.java | 8 -------- 3 files changed, 10 insertions(+), 10 deletions(-) diff --git a/src/main/java/com/serliunx/statemanagement/machine/AbstractStateMachine.java b/src/main/java/com/serliunx/statemanagement/machine/AbstractStateMachine.java index 81bc86c..64bc2be 100644 --- a/src/main/java/com/serliunx/statemanagement/machine/AbstractStateMachine.java +++ b/src/main/java/com/serliunx/statemanagement/machine/AbstractStateMachine.java @@ -185,6 +185,14 @@ public abstract class AbstractStateMachine extends AbstractStateManager im } } + @Override + public void publish(Object event) { + List>> consumers = context.eventRegistries.get(event); + if (consumers != null) { + consumers.forEach(consumer -> consumer.accept(this)); + } + } + @Override public S switchPrevAndGet() { return switchPrevAndGet(true); diff --git a/src/main/java/com/serliunx/statemanagement/machine/DefaultConcurrentStateMachine.java b/src/main/java/com/serliunx/statemanagement/machine/DefaultConcurrentStateMachine.java index 1e20b10..b001399 100644 --- a/src/main/java/com/serliunx/statemanagement/machine/DefaultConcurrentStateMachine.java +++ b/src/main/java/com/serliunx/statemanagement/machine/DefaultConcurrentStateMachine.java @@ -143,8 +143,8 @@ public class DefaultConcurrentStateMachine extends AbstractStateMachine im } @Override - public void publish(Object event) { - + public S current() { + return get(index.get()); } /** diff --git a/src/main/java/com/serliunx/statemanagement/machine/StandardStateMachine.java b/src/main/java/com/serliunx/statemanagement/machine/StandardStateMachine.java index 213d9e1..143a201 100644 --- a/src/main/java/com/serliunx/statemanagement/machine/StandardStateMachine.java +++ b/src/main/java/com/serliunx/statemanagement/machine/StandardStateMachine.java @@ -35,12 +35,4 @@ public class StandardStateMachine extends AbstractStateMachine implements ) { super(stateList, entryHandlers, leaveHandlers, exchangeHandlers, eventRegistries, executor, async); } - - @Override - public void publish(Object event) { - List>> consumers = context.eventRegistries.get(event); - if (consumers != null) { - consumers.forEach(consumer -> consumer.accept(this)); - } - } }