Table of Contents

Interface IJobControl

Namespace
Tlabs.JobCntrl
Assembly
Tlabs.JobCntrl.dll

Interface of a JobControl.

public interface IJobControl : IDisposable
Inherited Members
Extension Methods

Properties

CompletionPersister

Returns the IStarterCompletionPersister used to persist activator completion data.

IStarterCompletionPersister? CompletionPersister { get; }

Property Value

IStarterCompletionPersister

ConfigLoader

Returns the IJobControlCfgLoader used by the JobControl to load it's configuration.

IJobControlCfgLoader ConfigLoader { get; }

Property Value

IJobControlCfgLoader

CurrentJobActivationCount

Current number of (starter) activation(s).

int CurrentJobActivationCount { get; }

Property Value

int

FullCompletion

Returns a Task that completes once CurrentJobActivationCount is 0>.

Task FullCompletion { get; }

Property Value

Task

Jobs

Dictionary of runtime IJob(s).

IReadOnlyDictionary<string, IJob> Jobs { get; }

Property Value

IReadOnlyDictionary<string, IJob>

MasterModels

Master model's configuration.

IMasterCfg MasterModels { get; }

Property Value

IMasterCfg

Starters

Dictionary of runtime IStarter(s).

IReadOnlyDictionary<string, IStarter> Starters { get; }

Property Value

IReadOnlyDictionary<string, IStarter>

Methods

Init()

Initializes the IJobControl runtime by loading its configuration.

void Init()

Exceptions

JobCntrlException

thrown when JobControl was already started

Start()

Load and start activating configured starter(s) and job(s).

void Start()

Exceptions

JobCntrlException

thrown when JobControl was already started or not initialized.

Stop()

Stop executing any starter(s) and jobs(s) and discards any configuration.

void Stop()

Remarks

It is required to invoke Init() before re-starting the runtime.