我試圖從艾斯波文檔的where
枚舉法爲例擴大,並有問題。這裏是有問題的例子:嘗試使用艾斯波Lambda表達式
select items.where(i => i.location.x = 0 and i.location.y = 0) as zeroloc
from LocationReport
我想要做的事似乎很簡單。相反,選擇items
匹配這個表達式的:
我想選擇包含至少一個
item
該表達式匹配LocationReport
秒。它通過time_batch窗口(強調文本非批處理時間窗口也是一種可能性)。
所以每ň的秒數我會收到的LocationReport
S IN,每個報告包含在項目清單至少一個零位置的集合。
作爲參考,這裏是在艾斯波例中使用的Java對象的結構:
公共類LocationReport {列表項; ...
public class Item {String assetId; //乘客或行李資產 id位置位置; //(x,y)位置布爾型行李箱; // 如果此項目是行李件,則爲true String assetIdPassenger; //如果 該項目是行李,乘客含有相關...
公共類位置{INT X; int y; ...
背景細節:假設LocationReport
是實際的對象我感興趣的...
使用EPL如上面的例子中,where
邏輯的作品,但問題是,在只有回國該items
成員,我沒有看到LocationReport
類它是從哪裏來的,它包含除了items
我UpdateListener
需要的其他屬性。
此外,可能不相關,但在我的情況下,我收到很多LocationReports重複(或足夠接近被認爲重複)的消息率,並且我的where子句將需要做出該決定並且僅轉發「新」消息。
謝謝!
你應該添加一些可測試的代碼(重現問題)。提及預期結果與當前結果,然後有人可以幫助您解決問題。 –