r-io suiter-io suiteinterceptor docs
← Model loading
Node interceptor / Causal generation

Induced risk resource

Generates the induced risk chains again when an asset appears or is renamed, so that a new resource or a new source of a danger gets its risks and its susceptibility.

IRR

InducedRiskResourceInterceptor

Keeps the generated risks in step with the assets of the knowledge space.

afterAdd · afterUpdate
TriggerThe node inherits Asset (Resource, Person, Good, Sensor, Territory, Stock…) and is not FREEZE.
AFTER ADDA new asset

The model chains of every risk induced by a potential are generated again: a new instance of the concept a risk is about gets its risk instances and its Is_Susceptible_To; a new asset generating a danger adds its source to the law.

AFTER UPDATEA renamed asset

Only when the name changes: the risk instances are named after the resource and the source, so all the chains are generated again. Any other update is ignored.

DELETENothing

No hook acts on deletion: the generated risks of a deleted asset stay until the modeler removes them.

01 · Behaviour

A thin trigger on the Induces generation

Asset added or renamednot FREEZE
Every Inducesall potentials
Generate againmodel chain of each risk
Skip touched elementsfingerprint

The interceptor holds no logic of its own: it calls the generation of the Induces interceptor for all potentials. What exists and was not changed by hand is written only when it differs, and what the modeler changed is left as it is. The roles are not handled here: a resource that gets a role through Has is handled by the Has interceptor.

afterAdd · afterUpdatesimplified
if node is FREEZE or does not inherit Asset: return
afterAdd(node):
    generateModelChainsInducedBy(all potentials)
afterUpdate(previous, node):
    if previous is null or name(previous) != name(node):
        generateModelChainsInducedBy(all potentials)
Where it fits

See the causal chain for what a potential, an induced risk and a susceptibility mean, and the 2L language for the law generated on each Is_Susceptible_To.

Browse the complete node lifecycleAll node interceptors →
Intercepteur de nœud / Génération causale

Ressource à risque induit

Régénère les chaînes des risques induits quand un actif apparaît ou est renommé, pour qu’une nouvelle ressource ou une nouvelle source d’un danger reçoive ses risques et sa susceptibilité.

IRR

InducedRiskResourceInterceptor

Garde les risques générés en phase avec les actifs de l’espace de connaissance.

afterAdd · afterUpdate
DéclencheurLe nœud hérite d’Asset (Resource, Person, Good, Sensor, Territory, Stock…) et n’est pas en FREEZE.
APRÈS AJOUTUn nouvel actif

Les chaînes modèles de tous les risques induits par un potentiel sont régénérées : une nouvelle instance du concept visé par un risque reçoit ses instances de risque et son Is_Susceptible_To ; un nouvel actif qui génère un danger ajoute sa source à la loi.

APRÈS MISE À JOURUn actif renommé

Seulement quand le nom change : les instances de risque sont nommées d’après la ressource et la source, donc toutes les chaînes sont régénérées. Toute autre mise à jour est ignorée.

SUPPRESSIONRien

Aucun hook n’agit à la suppression : les risques générés d’un actif supprimé restent jusqu’à ce que le modélisateur les retire.

01 · Comportement

Un simple déclencheur de la génération Induces

Actif ajouté ou renomméhors FREEZE
Tous les Inducestous les potentiels
Régénérerchaîne modèle de chaque risque
Ignorer les retouchesempreinte

L’intercepteur n’a pas de logique propre : il appelle la génération de l’intercepteur Induces pour tous les potentiels. Ce qui existe et n’a pas été retouché n’est réécrit que s’il diffère, et ce que le modélisateur a changé reste tel quel. Les rôles ne sont pas traités ici : une ressource qui reçoit un rôle par Has relève de l’intercepteur Has.

afterAdd · afterUpdatesimplifié
si le nœud est en FREEZE ou n’hérite pas d’Asset : sortir
aprèsAjout(nœud) :
    generateModelChainsInducedBy(tous les potentiels)
aprèsMiseÀJour(précédent, nœud) :
    si précédent est null ou nom(précédent) != nom(nœud) :
        generateModelChainsInducedBy(tous les potentiels)
Où il s’insère

Voir la chaîne causale pour ce que sont un potentiel, un risque induit et une susceptibilité, et le langage 2L pour la loi générée sur chaque Is_Susceptible_To.

Consulter le cycle de vie completTous les intercepteurs de nœuds →