Democrite serves as an orchestrator for vgrains, utilizing serializable definitions as work orders.
These definitions are primarily formulated and stored in an external system such as databases.
The objective of the "Dynamic Definitions" feature is to generate definitions (sequences, triggers, etc.) at runtime, with a lifecycle linked to storage.
If no specific storage is provided, the definition will exist only for the duration of the cluster's lifetime.
This capability enables dynamic testing of new sequences, creation of temporary triggers, and activation of temporary debugging features, among other functionalities.
The service "IDynamicDefinitionHandler" will enable all the dynamic features
// Push new or updtae definition
await this._dynamicDefinitionHandler.PushDefinitionAsync(seqDefinition, true, this._identityCard, default);
// Enable or disable a dynamic feature
await this._dynamicDefinitionHandler.ChangeStatus(definitionId, true/false, this._identityCard_, token);
// Get all the dynamic definition meta data
await this._dynamicDefinitionHandler.GetDynamicDefinitionMetaDatasAsync(token: token);
Caution
Attention: IDynamicDefinitionHandler will have an impact above all the cluster.
Sensible method require an IIdentityCard.
This card will be used to managed the security and right.
** Create **
- "/create/sequence" : Create a simple sequence that will take the sentence, split words and organize them in function of the enum value.
- "/create/trigger/cron" : Create a cron trigger (second format) that will call a sequence
** Execute **
- "/execute/sequence" : Execute a sequence by its Uid
** Inspect **
- "/definition/sequences" : Look through the classic ISequenceDefinitionProvider all the sequences available (You will see the dynamic appeard here)
- "/definition/dynamics" : Look through the IDynamicDefinitionHandler all the dynamic definition available.
** Change dynamic definitions **
- "/definition/dynamics/ChangeStatus" : Allow to enable/disable a dynamic definition.
- "/definition/dynamics/Remove" : Remove a specific definition.
- "/definition/dynamics/Clear" : Clear all the dynamic definitions.