Table of Contents

Class SchedulerHeaderDto

Namespace
Quartz.Dashboard.Services
Assembly
Quartz.Dashboard.dll

One scheduler the container knows about, whether or not anything has built it.

public sealed record SchedulerHeaderDto : IEquatable<SchedulerHeaderDto>
Inheritance
SchedulerHeaderDto
Implements
Inherited Members

Remarks

Status and SchedulerInstanceId are null for a registration nothing has created: there is no scheduler to ask, and listing the registrations must not build one. The rest of what a built scheduler is made of arrives with SchedulerDetailDto, which is a read per scheduler rather than part of the listing.

Constructors

SchedulerHeaderDto(string, string?, SchedulerStatus?, SchedulerOrigin)

One scheduler the container knows about, whether or not anything has built it.

public SchedulerHeaderDto(string SchedulerName, string? SchedulerInstanceId, SchedulerStatus? Status, SchedulerOrigin Origin)

Parameters

SchedulerName string

The scheduler's name, spelled as it was registered.

SchedulerInstanceId string

The instance id of the scheduler behind this registration, or null when nothing has built one.

Status SchedulerStatus?

What state the scheduler is in, or null when no scheduler exists under this name.

Origin SchedulerOrigin

Where the scheduler came from.

Remarks

Status and SchedulerInstanceId are null for a registration nothing has created: there is no scheduler to ask, and listing the registrations must not build one. The rest of what a built scheduler is made of arrives with SchedulerDetailDto, which is a read per scheduler rather than part of the listing.

Properties

DisplayName

What a page calls this scheduler: prod/reporting for a scheduler reached through a target, and the bare name for one of this process.

public string DisplayName { get; }

Property Value

string

Remarks

The label, spelled as Key is. The two are kept apart so that a page may show one thing and address another — the picker shows the bare name under a group named for the target.

IsCluster

Whether this row is several targets fronting one cluster, shown as one scheduler. Added in 4.5.

public bool IsCluster { get; }

Property Value

bool

IsCreated

Whether a scheduler exists under this name, which is what decides whether the rest of the dashboard has anything to show for it.

public bool IsCreated { get; }

Property Value

bool

IsWindow

Whether this scheduler is a window onto an attached store rather than one of this process.

public bool IsWindow { get; }

Property Value

bool

Key

What every scheduler-scoped member of IQuartzApiClient takes for this scheduler, and what the picker holds: target/name, or the bare name for a scheduler reached through no target. Added in 4.5.

public string Key { get; }

Property Value

string

Remarks

A bare key resolves only to a scheduler reached through no target, so a deployment that fronts one process per name sees every key it ever used keep working, and two targets fronting schedulers of one name are told apart by the target. Parse(string) reads a key back.

LastSeenUtc

When the process behind an Agent last spoke to this one, or null for a scheduler whose liveness is asked rather than heard. Added in 4.5.

public DateTimeOffset? LastSeenUtc { get; init; }

Property Value

DateTimeOffset?

Members

The targets a Cluster is made of, sorted; empty for every other origin. Added in 4.5.

public string[] Members { get; init; }

Property Value

string[]

Origin

Where the scheduler came from.

public SchedulerOrigin Origin { get; init; }

Property Value

SchedulerOrigin

SchedulerInstanceId

The instance id of the scheduler behind this registration, or null when nothing has built one.

public string? SchedulerInstanceId { get; init; }

Property Value

string

SchedulerName

The scheduler's name, spelled as it was registered.

public string SchedulerName { get; init; }

Property Value

string

Status

What state the scheduler is in, or null when no scheduler exists under this name.

public SchedulerStatus? Status { get; init; }

Property Value

SchedulerStatus?

Target

The target this scheduler is reached through — the store a window is onto, an HTTP target's HttpClientOptions.Target, an agent's name, a cluster's a+b+c — or null for a scheduler reached through none.

public string? Target { get; init; }

Property Value

string

Remarks

With SchedulerName it is what Key spells, and what SchedulerRef reads back out of it.