Last change
on this file since 528 was
199,
checked in by gav, 15 years ago
|
Upgrade quartz plugin to 0.4.1 propper.
Refactor and enable quartz scheduling for recurring tasks.
Adjust svn ignores to ignore all log files.
Create a pseudo system person for automated insertions.
|
File size:
1.4 KB
|
Rev | Line | |
---|
[199] | 1 | import org.codehaus.groovy.grails.commons.* |
---|
[123] | 2 | |
---|
[199] | 3 | /** |
---|
| 4 | * Provides a quartz job that reviews and generates all recurring tasks. |
---|
| 5 | * The quartz scheduler is restarted if this file is edited so startDelay will then delay again. |
---|
| 6 | * The execute method is called once every repeatInterval (in milliseconds). |
---|
| 7 | * With concurrent=false the repeat interval starts counting after the previous job completes. |
---|
| 8 | * Apparently we need a hibernate session otherwise we get a LazyInitializationException, default is true but we specify it to be sure. |
---|
| 9 | */ |
---|
| 10 | class TaskRecurringScheduleJob { |
---|
[123] | 11 | |
---|
[199] | 12 | def taskRecurringScheduleService |
---|
| 13 | |
---|
| 14 | def concurrent = false |
---|
| 15 | def sessionRequired = true |
---|
| 16 | |
---|
| 17 | static triggers = { |
---|
| 18 | simple name: "GenerateAll", |
---|
| 19 | startDelay: 60000, |
---|
| 20 | repeatInterval: ConfigurationHolder.config.taskRecurringScheduleJob.repeatInterval*1000 |
---|
| 21 | } |
---|
| 22 | |
---|
[123] | 23 | def execute() { |
---|
| 24 | |
---|
[199] | 25 | // Some information can be accessed if we run with "def execute(context) ". |
---|
| 26 | // For more info see: http://quartz.sourceforge.net/javadoc/org/quartz/JobExecutionContext.html |
---|
| 27 | // log.debug context.getTrigger() |
---|
| 28 | // log.debug context.getPreviousFireTime() |
---|
| 29 | // log.debug context.getFireTime() |
---|
[123] | 30 | |
---|
[199] | 31 | // We do everything via services, quartz just sets up and fires off the thread. |
---|
| 32 | taskRecurringScheduleService.generateAll() |
---|
| 33 | } |
---|
[123] | 34 | } |
---|
Note: See
TracBrowser
for help on using the repository browser.