From 552d1ac87271464fae4cd596f919db927d2cf8bc Mon Sep 17 00:00:00 2001 From: redkale Date: Thu, 4 Jan 2024 02:33:32 +0800 Subject: [PATCH] =?UTF-8?q?ScheduleManager=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/java/org/redkale/schedule/ScheduleEvent.java | 4 ++-- .../org/redkale/schedule/spi/ScheduleManagerService.java | 7 +++++-- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/src/main/java/org/redkale/schedule/ScheduleEvent.java b/src/main/java/org/redkale/schedule/ScheduleEvent.java index d0132d8cc..33d393f5a 100644 --- a/src/main/java/org/redkale/schedule/ScheduleEvent.java +++ b/src/main/java/org/redkale/schedule/ScheduleEvent.java @@ -19,7 +19,7 @@ import org.redkale.util.Utility; * * @since 2.8.0 */ -public class ScheduleEvent { +public final class ScheduleEvent { private final Map map; @@ -71,6 +71,6 @@ public class ScheduleEvent { @Override public String toString() { - return JsonConvert.root().convertTo(this); + return JsonConvert.root().convertTo(map); } } diff --git a/src/main/java/org/redkale/schedule/spi/ScheduleManagerService.java b/src/main/java/org/redkale/schedule/spi/ScheduleManagerService.java index b7838089d..c12fe3c41 100644 --- a/src/main/java/org/redkale/schedule/spi/ScheduleManagerService.java +++ b/src/main/java/org/redkale/schedule/spi/ScheduleManagerService.java @@ -157,7 +157,7 @@ public class ScheduleManagerService implements ScheduleManager, Service { } methodKeys.add(mk); if (method.getParameterCount() != 0 - && (method.getParameterCount() == 1 && method.getParameterTypes()[0] == ScheduleEvent.class)) { + && !(method.getParameterCount() == 1 && method.getParameterTypes()[0] == ScheduleEvent.class)) { throw new RedkaleException("@" + Scheduled.class.getSimpleName() + " must be on non-parameter or " + ScheduleEvent.class.getSimpleName() + "-parameter method, but on " + method); } @@ -247,12 +247,15 @@ public class ScheduleManagerService implements ScheduleManager, Service { if (event == null) { rs = mh.invoke(obj); } else { - rs = mh.invoke(obj, event.clear()); + rs = mh.invoke(obj, event); } } } catch (Throwable t) { logger.log(Level.SEVERE, "schedule task error", t); } + if (event != null) { + event.clear(); + } return rs; }; } catch (IllegalAccessException e) {