在Drool DSL语句中重用条件(何时)

时间:2013-09-27 02:03:49

标签: drools dsl

是否可以在DSL文件中将when / condition语句重用到另一个/ condition语句?

例如,我有两个条件:

[condition][]The client is invalid = Client( name == null || email == null )
[condition][]All the clients are invalid = forall( Client( name == null || email == null ) )

请注意,第二个条件只是为 forall 命令区分第一个条件,但内部语句为equals。在这些情况下,我想将第一个条件重用到第二个条件中。

有可能吗?怎么样? 谢谢。

1 个答案:

答案 0 :(得分:0)

即使最新版本的drools也只允许您根据文档here将值替换为pojo或相应地图的模板。

但这不适用于您的用例。

由于drool文件只是文本文件,因此没有什么可以阻止您考虑使用更强大的模板工具包。

可能性包括Apache VelocityANTLRScala