Table of Contents

Interface IOperableTrigger

Namespace
Quartz.Extensibility
Assembly
Quartz.dll

Internal interface for managing triggers. This interface should not be used by the Quartz client.

public interface IOperableTrigger : IMutableTrigger, ITrigger
Inherited Members

Properties

FireInstanceId

The identity of one firing of this trigger, or null if it has not been fired.

string? FireInstanceId { get; set; }

Property Value

string

Remarks

Written by a job store as it hands the trigger to the scheduler, and read back to recognise the firing when the job completes; it is what InterruptFireInstance(string, CancellationToken) names. A trigger a caller built, and a trigger read back out of a store, have never been fired and answer null — so this is not an identity to key anything on outside the fire path.

Methods

ComputeFirstFireTimeUtc(ICalendar?)

This method should not be used by the Quartz client.

DateTimeOffset? ComputeFirstFireTimeUtc(ICalendar? calendar)

Parameters

calendar ICalendar

Returns

DateTimeOffset?

The first time at which the ITrigger will be fired by the scheduler, which is also the same value NextFireTimeUtc will return (until after the first firing of the ITrigger).

Remarks

Called by the scheduler at the time a ITrigger is first added to the scheduler, in order to have the ITrigger compute its first fire time, based on any associated calendar.

After this method has been called, NextFireTimeUtc should return a valid answer.

ExecutionComplete(IJobExecutionContext, JobExecutionException?)

This method should not be used by the Quartz client.

SchedulerInstruction ExecutionComplete(IJobExecutionContext context, JobExecutionException? result)

Parameters

context IJobExecutionContext

is the IJobExecutionContext that was used by the IJob'sExecute(IJobExecutionContext, CancellationToken) method.

result JobExecutionException

is the JobExecutionException thrown by the IJob, if any (may be null).

Returns

SchedulerInstruction

One of the SchedulerInstruction members.

Remarks

Called after the IScheduler has executed the IJobDetail associated with the ITrigger in order to get the final instruction code from the trigger.

See Also

Triggered(ICalendar?)

This method should not be used by the Quartz client.

void Triggered(ICalendar? calendar)

Parameters

calendar ICalendar

Remarks

Called when the IScheduler has decided to 'fire' the trigger (Execute the associated IJob), in order to give the ITrigger a chance to update itself for its next triggering (if any).

See Also

UpdateAfterMisfire(ICalendar?)

This method should not be used by the Quartz client.

To be implemented by the concrete classes that extend this class.

The implementation should update the ITrigger's state according to the misfire instruction the ITrigger was built with, read as MisfireInstructionCode.

void UpdateAfterMisfire(ICalendar? calendar)

Parameters

calendar ICalendar

UpdateWithNewCalendar(ICalendar, TimeSpan)

This method should not be used by the Quartz client.

The implementation should update the ITrigger's state based on the given new version of the associated ICalendar (the state should be updated so that it's next fire time is appropriate given the Calendar's new settings).

void UpdateWithNewCalendar(ICalendar calendar, TimeSpan misfireThreshold)

Parameters

calendar ICalendar
misfireThreshold TimeSpan

Validate()

Validates whether the properties of the IJobDetail are valid for submission into a IScheduler.

void Validate()