Я использую drools для проверки объекта. Объект также имеет метод getChildrenList(), который возвращает дочерние объекты, связанные с этим объектом (отношение master-detail).Drools: как вставить факт после проверки, если он еще не присутствует в рабочей памяти
я сделать некоторые валидации на объекте, а затем я хочу, чтобы проверить дочерние объекты, а также, так что я вставить все дочерние объекты, а также в рабочей память, используя следующее правило:
rule "Insert Children"
when
$parent : Parent (eval(childrenList != empty))
$ch : Child() from $p.childrenList
then
insert($ch);
end
сейчас как я могу убедиться, что это правило не запускается, если дети уже вставлены. Я имею в виду, потому что я изменяю какой-то факт, что правило снова увольняется. Как я могу это предотвратить?
Благодаря
Нет, что кажется хорошо - делать что-то подобное. Или вы можете использовать группу потоков или что-то, чтобы убедиться, что вы делаете это только спереди ... –