J'ai une base de connaissances pour effectuer la validation de mon modèle de données. Les événements de modification de l'interface utilisateur sont publiés de manière asynchrone dans un thread distinct qui met à jour la base de connaissances et déclenche les règles. Les erreurs de validation déclenchent une insertion logique d'un objet d'erreur. Je peux les collecter et publier des événements de manière asynchrone dans le thread de l'interface utilisateur. Toutefois, pour faciliter la mise à jour de l'interface utilisateur, je souhaite également publier un événement lorsque l'utilisateur corrige une erreur, c'est-à-dire lorsqu'un objet d'erreur est retiré de la base de connaissances.Réception d'une notification d'événements de rétraction logique Drools
J'ai deux idées sur la façon de le faire, ni dont j'aime:
je pourrais écouter de travailler les événements de mémoire à partir du code de procédure, mais cela irait à l'encontre de l'encapsulation de la fonctionnalité de validation au sein de la base de connaissances.
Alternativement, je pourrais insérer un objet indicateur associé à mon insertion logique d'un objet d'erreur et écrire une règle qui détecte les indicateurs non appariés, les rétracte et déclenche l'événement "erreur corrigée".
Existe-t-il un moyen propre et simple d'activer une règle basée sur la rétraction logique d'un objet d'erreur comme décrit ci-dessus?