[
https://issues.jboss.org/browse/SEAMCRON-11?page=com.atlassian.jira.plugi...
]
Peter Royle commented on SEAMCRON-11:
-------------------------------------
This API is implemented, but the underlying scheduling will not work as expected. For
example it's using "*/40 * ..." for @Every(nth=40, SECOND), but that will no
execute at 0, 40, 20, 0, 40 20 ... instead it will only fire at 0, 40, 0, 40. Need to
improve the underlying scheduling code and use part of the Quartz API which gives us more
control than a cron specification does.
Add java.util.concurrent.TimeUnit attribute on @Every
-----------------------------------------------------
Key: SEAMCRON-11
URL:
https://issues.jboss.org/browse/SEAMCRON-11
Project: Seam Cron
Issue Type: Enhancement
Reporter: Peter Royle
Assignee: Peter Royle
Fix For: 3.0.0.Alpha1
Idea courtesy of George Gastaldi. This would allow us to replace Second, Minute and Hour
with the standard CronEvent for better consistency, without breaking the readability.
public void doStuff(@Observes @Every(SECONDS) CronEvent
Unfortunately there's a couple of teeny tiny hiccups:
- TimeUnit only goes up to SECONDS in JDK 1.5, and I want to support 1.5 so that Seam
Cron can be used n the various CDI JavaSE flavors.
- TimeUnit values are pluralised which don't read very well, eg: @Observes
@Every(HOURS)
So obviously, we just create our own replacement for TimeUnit. I guess it will have to be
... CronTimeUnit?
I should also note that this flies in the face of the possibility of implementing
something like:
@Observes @Every @Nth(5) Minute m
We could maybe do something like this instead?:
@Observes @Every(nth=5, value=MINUTE) CronEvent e
--
This message is automatically generated by JIRA.
For more information on JIRA, see:
http://www.atlassian.com/software/jira