ScheduleHostType

PackageFCQRS.Workflows
Starts the schedule dispatcher from C#.

Specification

Kind
Type
Members
2
Examples
0
RegisterSignature
ScheduleHost.Register(actor, workflows)
WorkflowSignature
ScheduleHost.Workflow(client)

Summary

NameSignatureSynopsis
RegisterScheduleHost.Register(actor, workflows)Registers the schedule aggregate and starts this actor system's dispatcher, which may start the listed workflows.
WorkflowScheduleHost.Workflow(client)A registered workflow whose input is a `ScheduledRun<TInput>`, for `Register`.

Register

ScheduleHost.Register(actor, workflows)
Member
Registers the schedule aggregate and starts this actor system's dispatcher, which may start the listed workflows. Register each workflow with `WorkflowHost.Register` first. Throws `InvalidOperationException` when the actor system has a dispatcher already, `ConfigurationException` when `akka.fcqrs.schedule-check-interval` is not positive, and `ArgumentException` when Akka's query journal and write journal differ in connection string, schema, table, or columns. The dispatcher keeps its index in the table `fcqrs_schedule_index` in the journal's database, as `Schedules.register` describes. The schedule aggregate stores no event until the actor system's saga starters are wired, and terminates the process when they are not wired within `akka.fcqrs.saga-start-timeout`: call `ActorWiring.InitSagaStarterEmpty` (or `InitSagaStarter` with the sagas) after registering every aggregate and saga. `AddFcqrs` wires them when the host starts. Until they are wired the dispatcher fires nothing and every `ScheduleClient` command throws `InvalidOperationException`.

Parameters

NameTypeDescription
actorIActor
workflowsScheduledWorkflow[]

Returns

ScheduleClient

Workflow

ScheduleHost.Workflow(client)
Member
A registered workflow whose input is a `ScheduledRun<TInput>`, for `Register`.

Parameters

NameTypeDescription
clientIWorkflowClient<ScheduledRun<'TInput>, 'TResult>

Returns

ScheduledWorkflow