Package io.quarkus.quartz.runtime
Class QuartzSchedulerImpl
java.lang.Object
io.quarkus.quartz.runtime.QuartzSchedulerImpl
- All Implemented Interfaces:
QuartzScheduler,io.quarkus.scheduler.Scheduler
@Typed({QuartzScheduler.class,io.quarkus.scheduler.Scheduler.class})
@Singleton
public class QuartzSchedulerImpl
extends Object
implements QuartzScheduler
Although this class is not part of the public API it must not be renamed in order to preserve backward compatibility. The
name of this class can be stored in a Quartz table in the database. See https://github.com/quarkusio/quarkus/issues/29177
for more information.
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescription(package private) static interface(package private) static classAlthough this class is not part of the public API it must not be renamed in order to preserve backward compatibility.(package private) static class(package private) class(package private) static class(package private) static class(package private) static classNested classes/interfaces inherited from interface io.quarkus.scheduler.Scheduler
io.quarkus.scheduler.Scheduler.JobDefinition -
Field Summary
Fields -
Constructor Summary
ConstructorsConstructorDescriptionQuartzSchedulerImpl(io.quarkus.scheduler.common.runtime.SchedulerContext context, QuartzSupport quartzSupport, SchedulerRuntimeConfig schedulerRuntimeConfig, jakarta.enterprise.event.Event<io.quarkus.scheduler.SkippedExecution> skippedExecutionEvent, jakarta.enterprise.event.Event<io.quarkus.scheduler.SuccessfulExecution> successExecutionEvent, jakarta.enterprise.event.Event<io.quarkus.scheduler.FailedExecution> failedExecutionEvent, jakarta.enterprise.event.Event<io.quarkus.scheduler.SchedulerPaused> schedulerPausedEvent, jakarta.enterprise.event.Event<io.quarkus.scheduler.SchedulerResumed> schedulerResumedEvent, jakarta.enterprise.event.Event<io.quarkus.scheduler.ScheduledJobPaused> scheduledJobPausedEvent, jakarta.enterprise.event.Event<io.quarkus.scheduler.ScheduledJobResumed> scheduledJobResumedEvent, jakarta.enterprise.inject.Instance<org.quartz.Job> jobs, jakarta.enterprise.inject.Instance<jakarta.transaction.UserTransaction> userTransaction, io.vertx.core.Vertx vertx, SchedulerConfig schedulerConfig, jakarta.enterprise.inject.Instance<io.quarkus.scheduler.spi.JobInstrumenter> jobInstrumenter) -
Method Summary
Modifier and TypeMethodDescription(package private) QuartzSchedulerImpl.QuartzTriggercreateJobDefinitionQuartzTrigger(QuartzSchedulerImpl.ExecutionMetadata executionMetadata, io.quarkus.scheduler.common.runtime.SyntheticScheduled scheduled, org.quartz.Trigger oldTrigger) (package private) voiddestroy()(package private) voidNeed to gracefully shut down the scheduler making sure that all triggers have been released before datasource shutdown.io.quarkus.scheduler.TriggergetScheduledJob(String identity) List<io.quarkus.scheduler.Trigger>org.quartz.Scheduler(package private) SchedulerRuntimeConfig.StartModeinitStartMode(SchedulerRuntimeConfig schedulerRuntimeConfig, QuartzRuntimeConfig quartzRuntimeConfig) booleanbooleanio.quarkus.scheduler.Scheduler.JobDefinitionvoidpause()void(package private) org.quartz.Schedulervoidresume()void(package private) voidstart(io.quarkus.runtime.StartupEvent startupEvent) io.quarkus.scheduler.TriggerunscheduleJob(String identity)
-
Field Details
-
SCHEDULED_METADATA
- See Also:
-
EXECUTION_METADATA_TASK_CLASS
- See Also:
-
EXECUTION_METADATA_ASYNC_TASK_CLASS
- See Also:
-
EXECUTION_METADATA_RUN_ON_VIRTUAL_THREAD
- See Also:
-
EXECUTION_METADATA_SKIP_PREDICATE_CLASS
- See Also:
-
-
Constructor Details
-
QuartzSchedulerImpl
public QuartzSchedulerImpl(io.quarkus.scheduler.common.runtime.SchedulerContext context, QuartzSupport quartzSupport, SchedulerRuntimeConfig schedulerRuntimeConfig, jakarta.enterprise.event.Event<io.quarkus.scheduler.SkippedExecution> skippedExecutionEvent, jakarta.enterprise.event.Event<io.quarkus.scheduler.SuccessfulExecution> successExecutionEvent, jakarta.enterprise.event.Event<io.quarkus.scheduler.FailedExecution> failedExecutionEvent, jakarta.enterprise.event.Event<io.quarkus.scheduler.SchedulerPaused> schedulerPausedEvent, jakarta.enterprise.event.Event<io.quarkus.scheduler.SchedulerResumed> schedulerResumedEvent, jakarta.enterprise.event.Event<io.quarkus.scheduler.ScheduledJobPaused> scheduledJobPausedEvent, jakarta.enterprise.event.Event<io.quarkus.scheduler.ScheduledJobResumed> scheduledJobResumedEvent, jakarta.enterprise.inject.Instance<org.quartz.Job> jobs, jakarta.enterprise.inject.Instance<jakarta.transaction.UserTransaction> userTransaction, io.vertx.core.Vertx vertx, SchedulerConfig schedulerConfig, jakarta.enterprise.inject.Instance<io.quarkus.scheduler.spi.JobInstrumenter> jobInstrumenter)
-
-
Method Details
-
produceQuartzScheduler
@Produces @Singleton org.quartz.Scheduler produceQuartzScheduler() -
getScheduler
public org.quartz.Scheduler getScheduler()- Specified by:
getSchedulerin interfaceQuartzScheduler- Returns:
- the underlying
Schedulerinstance, ornullif the scheduler was not started
-
pause
public void pause()- Specified by:
pausein interfaceio.quarkus.scheduler.Scheduler
-
pause
- Specified by:
pausein interfaceio.quarkus.scheduler.Scheduler
-
isPaused
- Specified by:
isPausedin interfaceio.quarkus.scheduler.Scheduler
-
resume
public void resume()- Specified by:
resumein interfaceio.quarkus.scheduler.Scheduler
-
resume
- Specified by:
resumein interfaceio.quarkus.scheduler.Scheduler
-
isRunning
public boolean isRunning()- Specified by:
isRunningin interfaceio.quarkus.scheduler.Scheduler
-
getScheduledJobs
- Specified by:
getScheduledJobsin interfaceio.quarkus.scheduler.Scheduler
-
getScheduledJob
- Specified by:
getScheduledJobin interfaceio.quarkus.scheduler.Scheduler
-
newJob
- Specified by:
newJobin interfaceio.quarkus.scheduler.Scheduler
-
unscheduleJob
- Specified by:
unscheduleJobin interfaceio.quarkus.scheduler.Scheduler
-
start
void start(@Observes @Priority(0) io.quarkus.runtime.StartupEvent startupEvent) -
destroy
void destroy(@Observes(notifyObserver=IF_EXISTS) @BeforeDestroyed(jakarta.enterprise.context.ApplicationScoped.class) Object event) Need to gracefully shut down the scheduler making sure that all triggers have been released before datasource shutdown.- Parameters:
event- ignored
-
destroy
@PreDestroy void destroy() -
initStartMode
SchedulerRuntimeConfig.StartMode initStartMode(SchedulerRuntimeConfig schedulerRuntimeConfig, QuartzRuntimeConfig quartzRuntimeConfig) -
createJobDefinitionQuartzTrigger
QuartzSchedulerImpl.QuartzTrigger createJobDefinitionQuartzTrigger(QuartzSchedulerImpl.ExecutionMetadata executionMetadata, io.quarkus.scheduler.common.runtime.SyntheticScheduled scheduled, org.quartz.Trigger oldTrigger)
-