cómo lidiar con las reglas dinámicas en un flujo

3

Estoy usando el motor de reglas de Nools y tengo la necesidad de modificar las reglas sobre la marcha sin afectar la integridad del motor de reglas.

Hasta ahora, estaba usando el grupo de acción 'principal' predeterminado para almacenar mis reglas predeterminadas y usando un grupo de acción específico para almacenar reglas que pertenecen a una empresa. Pero si una empresa desea cambiar / agregar / eliminar reglas, necesitaría crear nuevamente todo el flujo. No pude encontrar algo al respecto en la documentación. Para mí, eliminar un flujo (que contendrá las reglas para todas mis empresas) y crearlo de nuevo parece funcionar mucho para las operaciones de reglas crudas. Por eso, comencé a pensar que tal vez un flujo por empresa sería una mejor estrategia, pero aún así, si quieren cambiar las reglas, el flujo en sí debe eliminarse y agregarse nuevamente, pero con las nuevas reglas, las reglas alteradas y sin las reglas. reglas eliminadas. El problema es que las reglas podrían modificarse / eliminarse / agregarse sobre la marcha.

Mis preguntas:

  1. ¿Cómo se ocupan otros motores de reglas con las operaciones crud dinámicas sobre las reglas?
  2. ¿Debería utilizar un flujo por empresa?
  3. ¿Hay alguna forma de agregar / eliminar / modificar reglas para un flujo dinámicamente en nools?
  4. ¿Existe una solución de estilo de motor de reglas más para esto?

Cualquier ayuda sería apreciada.

Gracias

0

Prefiero trabajar en hacer un encadenamiento de objetos (herencia) basado en la explicación dada para crear reglas programáticamente para satisfacer este requisito