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
Modifier and TypeClassDescription(package private) static interface
(package private) static class
Although 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 class
Nested classes/interfaces inherited from interface io.quarkus.scheduler.Scheduler
io.quarkus.scheduler.Scheduler.JobDefinition
-
Field Summary
-
Constructor Summary
ConstructorDescriptionQuartzSchedulerImpl
(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.QuartzTrigger
createJobDefinitionQuartzTrigger
(QuartzSchedulerImpl.ExecutionMetadata executionMetadata, io.quarkus.scheduler.common.runtime.SyntheticScheduled scheduled, org.quartz.Trigger oldTrigger) (package private) void
destroy()
(package private) void
Need to gracefully shut down the scheduler making sure that all triggers have been released before datasource shutdown.io.quarkus.scheduler.Trigger
getScheduledJob
(String identity) List<io.quarkus.scheduler.Trigger>
org.quartz.Scheduler
(package private) SchedulerRuntimeConfig.StartMode
initStartMode
(SchedulerRuntimeConfig schedulerRuntimeConfig, QuartzRuntimeConfig quartzRuntimeConfig) boolean
boolean
io.quarkus.scheduler.Scheduler.JobDefinition
void
pause()
void
(package private) org.quartz.Scheduler
void
resume()
void
(package private) void
start
(io.quarkus.runtime.StartupEvent startupEvent) io.quarkus.scheduler.Trigger
unscheduleJob
(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:
getScheduler
in interfaceQuartzScheduler
- Returns:
- the underlying
Scheduler
instance, ornull
if the scheduler was not started
-
pause
public void pause()- Specified by:
pause
in interfaceio.quarkus.scheduler.Scheduler
-
pause
- Specified by:
pause
in interfaceio.quarkus.scheduler.Scheduler
-
isPaused
- Specified by:
isPaused
in interfaceio.quarkus.scheduler.Scheduler
-
resume
public void resume()- Specified by:
resume
in interfaceio.quarkus.scheduler.Scheduler
-
resume
- Specified by:
resume
in interfaceio.quarkus.scheduler.Scheduler
-
isRunning
public boolean isRunning()- Specified by:
isRunning
in interfaceio.quarkus.scheduler.Scheduler
-
getScheduledJobs
- Specified by:
getScheduledJobs
in interfaceio.quarkus.scheduler.Scheduler
-
getScheduledJob
- Specified by:
getScheduledJob
in interfaceio.quarkus.scheduler.Scheduler
-
newJob
- Specified by:
newJob
in interfaceio.quarkus.scheduler.Scheduler
-
unscheduleJob
- Specified by:
unscheduleJob
in 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)
-