Scheduling Module

The Scheduling Module provides the primary interface for interacting with the IPF Persistent Scheduler. It offers a compact set of operations for managing scheduled jobs: creation, updates, cancellation, and status queries.

Core Operations

scheduleJob and updateJob

Creates or updates a scheduled job.

Input: JobSpecificationDto

Output: Returns the persisted job specification

The method:

  • Persists the job specification

  • Enqueues the job in Quartz with the provided cron expression and calendar (if specified)

  • Updates the existing job if the same key is found

By default, one-off jobs with trigger dates in the past will be rejected. To allow jobs to be triggered retroactively, set the ipf.persistent.scheduler.past-acceptance-window with an appropriate duration.

cancelJob

Cancels future executions of a job.

Input: JobSpecificationKey

The cancellation:

  • Prevents any future executions

  • Retains the job’s execution history

findJobById

Retrieves current job information.

Input: JobSpecificationKey

Output: Returns the job’s specification and most recent execution status