Я следующие два класса HeartRate с полями:Esper язык правила: контекст вложенности
int heartrate;
String heartratesTimestamp;
String macAddress;
И шаги с полями:
int steps;
String stepsTimestamp;
String macAddress;
Правило я написал пожары, когда число шагов более 100 за последние 1 минуту и частота сердечных сокращений выше 160.
EPStatement cepStatementRule7 = cepRule.createEPL("context PartitionByMac select * from "
+ "Steps.win:time(1 min) S, HeartRate.win:time(1 min) H "
+ "having (max(S.steps)-min(S.steps) > 100) and (H.heartrate > 160)");
cepStatementRule7.addListener(new rule7Listener());
Я хотел бы cha это правило, чтобы оно было основано на контексте macAddress. Так что правило только рассматривает шаги и душевные переживания с тем же macAddress. Я написал контекстное правило для macAddress шагов и один для macAddress heartrate. Они работают индивидуально, но когда я пытаюсь их вложить, правило больше не срабатывает.
cepRule.createEPL("create context PartitionByMac
context PartitionByMacSteps partition by macAddress from Steps,
context PartitionByMacHeartRate partition by macAddress from HeartRate");
Что я делаю неправильно?