在查询中访问用户定义的方法属性 - Esper

Access user defined method properties on query - Esper

我实现了一个查询,从数据库中挖掘数据,但我必须更改它,所以我从代码中的自定义函数中挖掘数据。我阅读了文档并在配置中添加了注释导入。查询抛出该错误:

Failed to resolve event type, named window or table by name 'path.to.my.class.customfunction'

我不知道我的函数必须 return 的类型,但我尝试了 Arraylist 和 Hashmaps,键是一个整数,值是一个自定义 class 但没有成功。

我的最终查询看起来像这样:

select * from LocationEvent as loc,
                   ***CustomFuntion()*** as product
                        where loc.id=product.id  ;

我保留了用于数据库连接的结构。我不知道是否有另一种方法可以解决这个问题。谢谢

编辑:我设法使用该查询调用了自定义函数:

select  path.to.class.getProducts() as product from pattern[every timer:interval(3 sec)]

我现在的函数 return 一个 ArrayList 和查询 return 这个:

[Product{ProductID=124,.....,},Product{...}]

所以现在我的问题是我无法在 products.ProductID

等查询中访问 Product 的属性

如果您想在 from 子句中使用自定义函数,可以使用“方法:”。文档在此处对此进行了描述:Accessing Non-Relational Data via Method。 Esper 运行时然后调用您的方法来获取 events/rows.