facts 是方便easy-rules传递数据的地方,同时也是线程不安全的地方,facts 是一个hashmap,我们可以在不同的优先级的
rule 中分享以及操作facts
facts 格式
HashMap<String, Object>
facts 代码方式定义
Facts facts = new Facts();
facts.add("rain", true);
rule 引用facts 数据
通过注解@facts
@Rule
class WeatherRule {
@Condition
public boolean itRains(@Fact("rain") boolean rain) {
return rain;
}
@Action
public void takeAnUmbrella(@Fact("rain") Facts facts) {
System.out.println("It rains, take an umbrella!");
// can add/remove/modify facts
}
}
参考资料
https://github.com/j-easy/easy-rules/wiki/defining-facts
来源:oschina
链接:https://my.oschina.net/u/4309973/blog/3234161