如何为WSO2CEP 3.0.0编写自定义输出属性聚合器函数

如何为WSO2CEP 3.0.0编写自定义输出属性聚合器函数,wso2,Wso2,根据上的文档,无法决定如何实现函数processAdd或processRemove。有人能帮我理解这些职能的职责吗 此外,尽管已实现,newInstance函数未在提供的示例中使用。此函数的用途是什么?processAdd和processRemove分别在查询处理器状态中添加和删除事件时调用。当从查询处理器状态删除事件时,Siddhi引擎将事件包装在实现org.wso2.Siddhi.core.event.remove.RemoveStream的类中。类似地,org.wso2.siddhi.co

根据上的文档,无法决定如何实现函数
processAdd
processRemove
。有人能帮我理解这些职能的职责吗


此外,尽管已实现,
newInstance
函数未在提供的示例中使用。此函数的用途是什么?

processAdd
processRemove
分别在查询处理器状态中添加和删除事件时调用。当从查询处理器状态删除事件时,Siddhi引擎将事件包装在实现
org.wso2.Siddhi.core.event.remove.RemoveStream
的类中。类似地,
org.wso2.siddhi.core.event.in.InStream
的实现可用于识别新事件

基于此,您可以确定是否正在为保持状态的查询(如在窗口、序列、模式等中)添加/删除事件。以这种方式调用方法允许您以最小的性能影响以最佳方式执行某些计算(例如,在计算平均值时,您只需将其添加到已可用的总数并进行除法,而无需遍历需要考虑的整个事件列表)

您可以浏览Siddhi代码库中类的代码或类似的类,以更好地了解
OutputAttributeAggregator
类的用法

Siddhi的内部工作有时需要输出属性聚合器的新实例。您只需要创建一个类的新实例,并在
newInstance
方法中返回它