Вызвать метод с client.soda (объектная модель оператора)

Я пытаюсь создать операторы Esper EPL на Java.

Я использую для этого библиотеку com.espertech.esper.client.soda, но не могу найти учебник, который бы мне помог.

PatternExpressions — единственная часть, которая мне нужна на данный момент.

В качестве примера возьмем EPL:

every a=Event((a).getEventTypeCode()='E00001')

Таким образом, он должен срабатывать при каждом событии с кодом типа события E00001, мы получаем код, вызывая метод getEventTypeCode.

Как спроецировать это на SOM?

С:

PatternExpr pattern = Patterns.everyFilter("Event","a");

Я получаю только:

every a=Event

(конечно)

Я знаю, что есть класс под названием "MethodInvocationStream", но я не знаю, как его использовать. И я не могу найти примеры его использования.

Благодаря пользователю 650839 я узнал, как добавлять Методы через SOM. Вот простой EPL как объект SOM: https://imgur.com/SDrTsa7 EPL как объект SOM


person Splitframe    schedule 29.07.2014    source источник


Ответы (1)


Одним из источников информации является javadoc. Вы можете просто сделать обратное и скомпилировать текст EPL в объект модели и проверить его. Используйте "epAdmin.compileEPL", на выходе будет тот же объект, который вы хотите построить через API.\

person user650839    schedule 29.07.2014
comment
Привет, спасибо за ответ! Я читал javadoc раньше, но это не могло мне помочь. Однако ваше предложение с классом EPAdministrator было очень хорошим. Это дало мне представление о структуре, в которой я нуждался (после того, как я загрузил ее с помощью выражения). Трудно найти подходящие примеры и руководства по эсперу даже в кодовой. Спасибо еще раз! - person Splitframe; 30.07.2014