From 0ab8dd31af1056fcbb52f6e829a85c5cb73e8552 Mon Sep 17 00:00:00 2001 From: Marius Bogoevici Date: Wed, 20 Aug 2008 05:00:40 +0000 Subject: [PATCH] Fix for job naming - generating better unique names. --- .../integration/quartz/QuartzScheduleServiceProvider.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/org.springframework.integration.quartz/src/main/java/org/springframework/integration/quartz/QuartzScheduleServiceProvider.java b/org.springframework.integration.quartz/src/main/java/org/springframework/integration/quartz/QuartzScheduleServiceProvider.java index d0edec7d1b..d4b046a475 100644 --- a/org.springframework.integration.quartz/src/main/java/org/springframework/integration/quartz/QuartzScheduleServiceProvider.java +++ b/org.springframework.integration.quartz/src/main/java/org/springframework/integration/quartz/QuartzScheduleServiceProvider.java @@ -24,6 +24,7 @@ import java.util.concurrent.ExecutionException; import java.util.concurrent.ScheduledFuture; import java.util.concurrent.TimeUnit; import java.util.concurrent.TimeoutException; +import java.util.concurrent.atomic.AtomicLong; import org.quartz.CronTrigger; import org.quartz.InterruptableJob; @@ -60,6 +61,7 @@ public class QuartzScheduleServiceProvider implements ScheduleServiceProvider { private static final String TRIGGER_NAME_PARAMETER = "triggerName"; + private static final AtomicLong sequenceNumber = new AtomicLong(Long.MIN_VALUE); private final Scheduler scheduler; @@ -151,7 +153,7 @@ public class QuartzScheduleServiceProvider implements ScheduleServiceProvider { } private static String generateNameForInstance(Object instance) { - return instance.getClass().getName() + "#" + System.identityHashCode(instance); + return instance.getClass().getName() + "#" + sequenceNumber.incrementAndGet(); } private static Date getFutureDate(long delay, TimeUnit timeUnit) {