JobStoreSupport Class

Quartz.NET 3.0 API Documentation
Contains base functionality for ADO.NET-based JobStore implementations.
Inheritance Hierarchy

SystemObject
  Quartz.Impl.AdoJobStoreAdoConstants
    Quartz.Impl.AdoJobStoreJobStoreSupport
      Quartz.Impl.AdoJobStoreJobStoreCMT
      Quartz.Impl.AdoJobStoreJobStoreTX

Namespace:  Quartz.Impl.AdoJobStore
Assembly:  Quartz (in Quartz.dll) Version: 3.0.0
Syntax

C#
public abstract class JobStoreSupport : AdoConstants, 
	IJobStore

The JobStoreSupport type exposes the following members.

Constructors

  NameDescription
Protected methodJobStoreSupport
Initializes a new instance of the JobStoreSupport class.
Top
Properties

  NameDescription
Public propertyAcquireTriggersWithinLock
Whether or not the query and update to acquire a Trigger for firing should be performed after obtaining an explicit DB lock (to avoid possible race conditions on the trigger's db row). This is is considered unnecessary for most databases (due to the nature of the SQL update that is performed), and therefore a superfluous performance hit.
Public propertyCanUseProperties
Get whether String-only properties will be handled in JobDataMaps.
Public propertyClusterCheckinInterval
Get or set the frequency at which this instance "checks-in" with the other instances of the cluster. -- Affects the rate of detecting failed instances.
Public propertyClustered
Get or set whether this instance is part of a cluster.
Public propertyConnectionManager
Get or set the database connection manager.
Public propertyDataSource
Get or set the datasource name.
Protected propertyDbMetadata
Public propertyDbRetryInterval
Gets or sets the database retry interval.
Protected propertyDelegate
Get the driver delegate for DB operations.
Public propertyDontSetAutoCommitFalse
Don't call set autocommit(false) on connections obtained from the DataSource. This can be helpful in a few situations, such as if you have a driver that complains if it is called when it is already off.
Public propertyDoubleCheckLockMisfireHandler
Get whether to check to see if there are Triggers that have misfired before actually acquiring the lock to recover them. This should be set to false if the majority of the time, there are misfired Triggers.
Public propertyDriverDelegateInitString
The driver delegate's initialization string.
Public propertyDriverDelegateType
Get or set the ADO.NET driver delegate class name.
Public propertyEstimatedTimeToReleaseAndAcquireTrigger
Public propertyInstanceId
Get or set the instance Id of the Scheduler (must be unique within a cluster).
Public propertyInstanceName
Get or set the instance Id of the Scheduler (must be unique within this server instance).
Protected propertyLastCheckin
Protected propertyLockHandler
Public propertyLockOnInsert
Whether or not to obtain locks when inserting new jobs/triggers.
Public propertyMakeThreadsDaemons
Get whether the threads spawned by this JobStore should be marked as daemon. Possible threads include the MisfireHandler and the ClusterManager.
Public propertyMaxMisfiresToHandleAtATime
Get or set the maximum number of misfired triggers that the misfire handling thread will try to recover at one time (within one transaction). The default is 20.
Public propertyMisfireHandlerFrequency
How often should the misfire handler check for misfires. Defaults to MisfireThreshold.
Public propertyMisfireThreshold
The time span by which a trigger must have missed its next-fire-time, in order for it to be considered "misfired" and thus have its misfire instruction applied.
Protected propertyMisfireTime
Public propertyObjectSerializer
Public propertyRetryableActionErrorLogThreshold
Gets or sets the number of retries before an error is logged for recovery operations.
Public propertySelectWithLockSQL
set the SQL statement to use to select and lock a row in the "locks" table.
Public propertySupportsPersistence
Indicates whether this job store supports persistence.
Public propertyTablePrefix
Get or sets the prefix that should be pre-pended to all table names.
Public propertyThreadPoolSize
Public propertyTxIsolationLevelSerializable
Set the transaction isolation level of DB connections to sequential.
Protected propertyTypeLoadHelper
Public propertyUseDBLocks
Get or set whether this instance should use database-based thread synchronization.
Public propertyUseProperties
Set whether string-only properties will be handled in JobDataMaps.
Top
Methods

  NameDescription
Protected methodAcquireNextTrigger
Public methodAcquireNextTriggers
Get a handle to the next N triggers to be fired, and mark them as 'reserved' by the calling scheduler.
Protected methodCalcFailedIfAfter
Public methodCalendarExists(String, CancellationToken)
Determine whether a ICalendar with the given identifier already exists within the scheduler.
Protected methodCalendarExists(ConnectionAndTransactionHolder, String, CancellationToken)
Protected methodCheckBlockedState
Determines if a Trigger for the given job should be blocked. State can only transition to StatePausedBlocked/StateBlocked from StatePaused/StateWaiting respectively.
Public methodCheckExists(JobKey, CancellationToken)
Determine whether a IJob with the given identifier already exists within the scheduler.
Public methodCheckExists(TriggerKey, CancellationToken)
Determine whether a ITrigger with the given identifier already exists within the scheduler.
Protected methodCheckExists(ConnectionAndTransactionHolder, JobKey, CancellationToken)
Protected methodCheckExists(ConnectionAndTransactionHolder, TriggerKey, CancellationToken)
Protected methodCheckExists(ConnectionAndTransactionHolder, String, CancellationToken)
Protected methodCleanupConnection
Cleanup the given database connection. This means restoring any modified auto commit or transaction isolation connection attributes, and then closing the underlying connection.
Public methodClearAllSchedulingData(CancellationToken)
Clear (delete!) all scheduling data - all IJobs, ITriggers ICalendars.
Protected methodClearAllSchedulingData(ConnectionAndTransactionHolder, CancellationToken)
Protected methodCloseConnection
Closes the supplied connection.
Protected methodClusterCheckIn
Protected methodClusterRecover
Protected methodCommitConnection
Commit the supplied connection.
Protected methodDoCheckin
Protected methodDoRecoverMisfires
Public methodEquals
Determines whether the specified object is equal to the current object.
(Inherited from Object.)
Protected methodExecuteInLock(String, FuncConnectionAndTransactionHolder, Task, CancellationToken)
Protected methodExecuteInLockT(String, FuncConnectionAndTransactionHolder, TaskT, CancellationToken)
Execute the given callback having acquired the given lock. Depending on the JobStore, the surrounding transaction may be assumed to be already present (managed).
Protected methodExecuteInNonManagedTXLock(String, FuncConnectionAndTransactionHolder, Task, CancellationToken)
Protected methodExecuteInNonManagedTXLockT(String, FuncConnectionAndTransactionHolder, TaskT, CancellationToken)
Protected methodExecuteInNonManagedTXLockT(String, FuncConnectionAndTransactionHolder, TaskT, FuncConnectionAndTransactionHolder, T, TaskBoolean, CancellationToken)
Execute the given callback having optionally acquired the given lock. This uses the non-managed transaction connection.
Protected methodExecuteWithoutLockT
Execute the given callback in a transaction. Depending on the JobStore, the surrounding transaction may be assumed to be already present (managed).
Protected methodFinalize
Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection.
(Inherited from Object.)
Protected methodFindFailedInstances
Get a list of all scheduler instances in the cluster that may have failed. This includes this scheduler if it is checking in for the first time.
Public methodGetCalendarNames(CancellationToken)
Get the names of all of the ICalendar s in the IJobStore.
Protected methodGetCalendarNames(ConnectionAndTransactionHolder, CancellationToken)
Protected methodGetConnection
Gets the connection and starts a new transaction.
Protected methodGetFiredTriggerRecordId
Public methodGetHashCode
Serves as the default hash function.
(Inherited from Object.)
Public methodGetJobGroupNames(CancellationToken)
Get the names of all of the IJob groups.
Protected methodGetJobGroupNames(ConnectionAndTransactionHolder, CancellationToken)
Public methodGetJobKeys
Get the names of all of the IJob s that have the given group name.
Protected methodGetJobNames
Protected methodGetNonManagedTXConnection
Public methodGetNumberOfCalendars(CancellationToken)
Get the number of ICalendar s that are stored in the IJobStore.
Protected methodGetNumberOfCalendars(ConnectionAndTransactionHolder, CancellationToken)
Public methodGetNumberOfJobs(CancellationToken)
Get the number of IJob s that are stored in the IJobStore.
Protected methodGetNumberOfJobs(ConnectionAndTransactionHolder, CancellationToken)
Public methodGetNumberOfTriggers(CancellationToken)
Get the number of ITrigger s that are stored in the IJobStore.
Protected methodGetNumberOfTriggers(ConnectionAndTransactionHolder, CancellationToken)
Public methodGetPausedTriggerGroups(CancellationToken)
Public methodGetPausedTriggerGroups(ConnectionAndTransactionHolder, CancellationToken)
Pause all of the ITriggers in the given group.
Public methodGetTriggerGroupNames(CancellationToken)
Get the names of all of the ITrigger groups.
Protected methodGetTriggerGroupNames(ConnectionAndTransactionHolder, CancellationToken)
Public methodGetTriggerKeys
Get the names of all of the ITrigger s that have the given group name.
Protected methodGetTriggerNames
Public methodGetTriggersForJob(JobKey, CancellationToken)
Get all of the Triggers that are associated to the given Job.
Protected methodGetTriggersForJob(ConnectionAndTransactionHolder, JobKey, CancellationToken)
Public methodGetTriggerState(TriggerKey, CancellationToken)
Get the current state of the identified ITrigger.
Protected methodGetTriggerState(ConnectionAndTransactionHolder, TriggerKey, CancellationToken)
Gets the state of the trigger.
Public methodGetType
Gets the Type of the current instance.
(Inherited from Object.)
Public methodInitialize
Called by the QuartzScheduler before the IJobStore is used, in order to give it a chance to Initialize.
Public methodIsJobGroupPaused
Returns true if the given JobGroup is paused.
Protected methodIsTransient
Public methodIsTriggerGroupPaused
Returns true if the given TriggerGroup is paused.
Protected methodJobExists
Check existence of a given job.
Protected methodLogWarnIfNonZero
Protected methodMemberwiseClone
Creates a shallow copy of the current Object.
(Inherited from Object.)
Public methodPauseAll(CancellationToken)
Public methodPauseAll(ConnectionAndTransactionHolder, CancellationToken)
Public methodPauseJob
Pause the IJob with the given name - by pausing all of its current ITriggers.
Public methodPauseJobs
Pause all of the IJobs in the given group - by pausing all of their ITriggers.
Public methodPauseTrigger(TriggerKey, CancellationToken)
Pause the ITrigger with the given name.
Public methodPauseTrigger(ConnectionAndTransactionHolder, TriggerKey, CancellationToken)
Pause the ITrigger with the given name.
Public methodPauseTriggerGroup
Pause all of the ITriggers in the given group.
Public methodPauseTriggers
Pause all of the ITriggers in the given group.
Protected methodRecoverJobs(CancellationToken)
Will recover any failed or misfired jobs and clean up the data store as appropriate.
Protected methodRecoverJobs(ConnectionAndTransactionHolder, CancellationToken)
Will recover any failed or misfired jobs and clean up the data store as appropriate.
Public methodRecoverMisfiredJobs
Public methodReleaseAcquiredTrigger(IOperableTrigger, CancellationToken)
Inform the IJobStore that the scheduler no longer plans to fire the given ITrigger, that it had previously acquired (reserved).
Protected methodReleaseAcquiredTrigger(ConnectionAndTransactionHolder, IOperableTrigger, CancellationToken)
Protected methodReleaseLock
Public methodRemoveCalendar(String, CancellationToken)
Remove (delete) the ICalendar with the given name.
Protected methodRemoveCalendar(ConnectionAndTransactionHolder, String, CancellationToken)
Public methodRemoveJob(JobKey, CancellationToken)
Remove (delete) the IJob with the given name, and any ITrigger s that reference it.
Protected methodRemoveJob(ConnectionAndTransactionHolder, JobKey, Boolean, CancellationToken)
Public methodRemoveJobs
Public methodRemoveTrigger(TriggerKey, CancellationToken)
Remove (delete) the ITrigger with the given name.
Protected methodRemoveTrigger(ConnectionAndTransactionHolder, TriggerKey, CancellationToken)
Protected methodRemoveTrigger(ConnectionAndTransactionHolder, TriggerKey, IJobDetail, CancellationToken)
Public methodRemoveTriggers
Public methodReplaceTrigger(TriggerKey, IOperableTrigger, CancellationToken)
Protected methodReplaceTrigger(ConnectionAndTransactionHolder, TriggerKey, IOperableTrigger, CancellationToken)
Public methodResumeAll(CancellationToken)
Public methodResumeAll(ConnectionAndTransactionHolder, CancellationToken)
Resume (un-pause) all triggers - equivalent of calling ResumeTriggers(GroupMatcherTriggerKey, CancellationToken) on every group.

If any ITrigger missed one or more fire-times, then the ITrigger's misfire instruction will be applied.

Public methodResumeJob
Resume (un-pause) the IJob with the given name.
Public methodResumeJobs
Resume (un-pause) all of the IJobs in the given group.
Public methodResumeTrigger(TriggerKey, CancellationToken)
Public methodResumeTrigger(ConnectionAndTransactionHolder, TriggerKey, CancellationToken)
Resume (un-pause) the ITrigger with the given name.
Public methodResumeTriggers(GroupMatcherTriggerKey, CancellationToken)
Public methodResumeTriggers(ConnectionAndTransactionHolder, GroupMatcherTriggerKey, CancellationToken)
Resume (un-pause) all of the ITriggers in the given group.

If any ITrigger missed one or more fire-times, then the ITrigger's misfire instruction will be applied.

Public methodRetrieveCalendar(String, CancellationToken)
Retrieve the given ITrigger.
Protected methodRetrieveCalendar(ConnectionAndTransactionHolder, String, CancellationToken)
Public methodRetrieveJob(JobKey, CancellationToken)
Retrieve the IJobDetail for the given IJob.
Protected methodRetrieveJob(ConnectionAndTransactionHolder, JobKey, CancellationToken)
Public methodRetrieveTrigger(TriggerKey, CancellationToken)
Retrieve the given ITrigger.
Protected methodRetrieveTrigger(ConnectionAndTransactionHolder, TriggerKey, CancellationToken)
Protected methodRetryExecuteInNonManagedTXLock(String, FuncConnectionAndTransactionHolder, Task, CancellationToken)
Protected methodRetryExecuteInNonManagedTXLockT(String, FuncConnectionAndTransactionHolder, TaskT, CancellationToken)
Protected methodRollbackConnection
Rollback the supplied connection.
Public methodSchedulerPaused
Called by the QuartzScheduler to inform the JobStore that the scheduler has been paused.
Public methodSchedulerResumed
Called by the QuartzScheduler to inform the JobStore that the scheduler has resumed after being paused.
Public methodSchedulerStarted
Public methodShutdown
Called by the QuartzScheduler to inform the IJobStore that it should free up all of it's resources because the scheduler is shutting down.
Protected methodSignalSchedulingChangeImmediately
Public methodStoreCalendar(String, ICalendar, Boolean, Boolean, CancellationToken)
Store the given ICalendar.
Protected methodStoreCalendar(ConnectionAndTransactionHolder, String, ICalendar, Boolean, Boolean, CancellationToken)
Public methodStoreJob(IJobDetail, Boolean, CancellationToken)
Stores the given IJobDetail.
Protected methodStoreJob(ConnectionAndTransactionHolder, IJobDetail, Boolean, CancellationToken)

Insert or update a job.

Public methodStoreJobAndTrigger
Store the given IJobDetail and IOperableTrigger.
Public methodStoreJobsAndTriggers
Public methodStoreTrigger(IOperableTrigger, Boolean, CancellationToken)
Store the given ITrigger.
Protected methodStoreTrigger(ConnectionAndTransactionHolder, IOperableTrigger, IJobDetail, Boolean, String, Boolean, Boolean, CancellationToken)
Insert or update a trigger.
Public methodToString
Returns a string that represents the current object.
(Inherited from Object.)
Public methodTriggeredJobComplete(IOperableTrigger, IJobDetail, SchedulerInstruction, CancellationToken)
Inform the IJobStore that the scheduler has completed the firing of the given ITrigger (and the execution its associated IJob), and that the JobDataMap in the given IJobDetail should be updated if the IJob is stateful.
Protected methodTriggeredJobComplete(ConnectionAndTransactionHolder, IOperableTrigger, IJobDetail, SchedulerInstruction, CancellationToken)
Protected methodTriggerExists
Check existence of a given trigger.
Protected methodTriggerFired
Public methodTriggersFired
Protected methodUpdateMisfiredTrigger
Top
Fields

  NameDescription
Protected fieldcalendarCache
Protected fielddelegateType
Protected fieldfirstCheckIn
Protected fieldStatic memberLockStateAccess
Protected fieldStatic memberLockTriggerAccess
Top
See Also

Reference