搜索

85.2. 将事实声明为事件

download PDF

您可以将事实声明为 Java 类或 DRL 规则文件中的事件,以便决策引擎在复杂事件处理期间将事实作为事件处理。您可以将事实声明为基于间隔的事件或时间点事件。基于间隔的事件的时间,并在决策引擎的工作内存中保留一段时间,直到它们的持续时间可用为止。点内事件没有持续时间,基本上是基于 interval 的事件,且持续为零。

流程

对于 Java 类或 DRL 规则文件中的相关事实类型,请输入 @role(事件) 元数据标签和参数。@role 元数据标签接受以下两个值:

  • 事实:(Default)Declas 类型作为常规事实
  • 事件: 拒绝类型作为事件

例如,以下片段声明 stock broker 应用中的 StockPoint 事实类型必须作为事件进行处理:

将事实类型声明为事件

import some.package.StockPoint

declare StockPoint
  @role( event )
end

如果 StockPoint 是 DRL 规则文件中声明的事实类型,而不是在预先存在的类中声明事件,您可以在应用程序代码中声明事件:

声明事实类型 in-line,并将它分配到事件角色

declare StockPoint
  @role( event )

  datetime : java.util.Date
  symbol : String
  price : double
end

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.