ScheduleClientType

PackageFCQRS.Workflows
The schedules of an actor system, from C#. Get it from `ScheduleHost.Register`.

Specification

Kind
Type
Members
8
Examples
0
ChangeAsyncSignature
this.ChangeAsync
CreateAsyncSignature
this.CreateAsync
CreateAsyncSignature
this.CreateAsync
DeleteAsyncSignature
this.DeleteAsync
PauseAsyncSignature
this.PauseAsync

Summary

NameSignatureSynopsis
ChangeAsyncthis.ChangeAsyncReplaces the schedule's workflow, input, rule and catch-up policy.
CreateAsyncthis.CreateAsync`CreateAsync` with `CatchUp.Latest`, the default policy: after downtime, the schedule starts one run, for the most recent missed due time.
CreateAsyncthis.CreateAsyncCreates the schedule `id`, which starts the workflow named `workflow` with `input` at each due time of `rule`, with `catchUp` deciding which missed due times run (the overload without it uses the default, `CatchUp.Latest`).
DeleteAsyncthis.DeleteAsyncEnds the schedule.
PauseAsyncthis.PauseAsyncStops the schedule from starting runs.
ResumeAsyncthis.ResumeAsyncLets a paused schedule start runs again, from the first due time after the resume.
Statethis.StateThe schedule as the dispatcher's index knows it, or null when the index has not read it.
Handlethis.HandleThe handle the F# functions of `Schedules` take.

ChangeAsync

this.ChangeAsync
Member
Replaces the schedule's workflow, input, rule and catch-up policy. An `Every` rule counts from the change. A run decided before the change starts the workflow, with the input, it was decided with. Throws `ArgumentException` and `InvalidOperationException` as `CreateAsync` does, and `InvalidOperationException` when the schedule does not exist or was deleted.

Parameters

NameTypeDescription
idstring
workflowstring
input'TInput
ruleScheduleRule
catchUpCatchUp

Returns

Task

CreateAsync

this.CreateAsync
Member
`CreateAsync` with `CatchUp.Latest`, the default policy: after downtime, the schedule starts one run, for the most recent missed due time. Throws as the overload with a policy does.

Parameters

NameTypeDescription
idstring
workflowstring
input'TInput
ruleScheduleRule

Returns

Task

CreateAsync

this.CreateAsync
Member
Creates the schedule `id`, which starts the workflow named `workflow` with `input` at each due time of `rule`, with `catchUp` deciding which missed due times run (the overload without it uses the default, `CatchUp.Latest`). Completes once the schedule is stored. Throws `ArgumentException` for a rule that `ScheduleRule.validate` rejects, a null rule or policy, or an ID that is blank, contains '~', or is too long (see `Schedules.MaxIdLength`). Throws `InvalidOperationException` when the saga starters are not wired, when the workflow is not registered with the dispatcher or takes another input, and when the schedule refuses: a schedule with this ID exists with a different content, or was deleted. A repeat with the same content is accepted and stores nothing; a weekly rule's days are sorted and their repeats removed before the comparison.

Parameters

NameTypeDescription
idstring
workflowstring
input'TInput
ruleScheduleRule
catchUpCatchUp

Returns

Task

DeleteAsync

this.DeleteAsync
Member
Ends the schedule. A run decided before the delete still starts. The ID cannot be used for a new schedule. Throws `InvalidOperationException` when the schedule does not exist.

Parameters

NameTypeDescription
idstring

Returns

Task

PauseAsync

this.PauseAsync
Member
Stops the schedule from starting runs. A run decided before the pause still starts. Throws `InvalidOperationException` when the schedule does not exist or was deleted.

Parameters

NameTypeDescription
idstring

Returns

Task

ResumeAsync

this.ResumeAsync
Member
Lets a paused schedule start runs again, from the first due time after the resume. Throws `InvalidOperationException` when the schedule does not exist, was deleted, or is not paused.

Parameters

NameTypeDescription
idstring

Returns

Task

State

this.State
Member
The schedule as the dispatcher's index knows it, or null when the index has not read it. A deleted schedule leaves the index once no run decided before the delete waits to start. The index lags the schedule by one projection pass.

Parameters

NameTypeDescription
idstring

Returns

ScheduleView

Handle

this.Handle
Member
The handle the F# functions of `Schedules` take.

Returns

ScheduleHandle