* @return void
*/
public function registerTask ($taskName, Visitable $taskInstance) {
+ // Get interval delay
+ $intervalDelay = $this->getConfigInstance()->getConfigEntry('task_' . $taskName . '_interval_delay');
+ $startupDelay = $this->getConfigInstance()->getConfigEntry('task_' . $taskName . '_startup_delay');
+
+ // If the task is 'idle_loop', a deplay of zero seconds is fine
+ assert($intervalDelay >= 0);
+ assert(($taskName === 'idle_loop') && ($intervalDelay > 0));
+ assert(($taskName === 'idle_loop') && ($startupDelay > 0));
+
// Create the entry
$taskEntry = array(
// Identifier for the generateHash() method
// Task instance itself
'task_instance' => $taskInstance,
// Startup delay in milliseconds
- 'task_startup_delay' => $this->getConfigInstance()->getConfigEntry('task_' . $taskName . '_startup_delay'),
+ 'task_startup_delay' => $startupDelay,
// Interval time (delay) in milliseconds before this task is executed again
- 'task_interval_delay' => $this->getConfigInstance()->getConfigEntry('task_' . $taskName . '_interval_delay'),
+ 'task_interval_delay' => $intervalDelay,
// How often should this task run?
'task_max_runs' => $this->getConfigInstance()->getConfigEntry('task_' . $taskName . '_max_runs'),
);