/** * */ public IFuture<Tuple2<Boolean, Object>> evaluate(IEvent event) { Object res = command.execute(event); return evaluateResult(res); }
public void customResultAvailable(Object res) { evaluateResult(res).addResultListener(new DelegationResultListener<Tuple2<Boolean,Object>>(ret)); } });
/** * Evaluate the condition. */ public IFuture<Tuple2<Boolean, Object>> evaluate(IEvent event) { IFuture<Tuple2<Boolean, Object>> ret = null; try { fetcher.setValue("$event", event); IParsedExpression exp = SJavaParser.parseExpression(expression, null, null); // todo: classloader? Object res = exp.getValue(fetcher); ret = CommandCondition.evaluateResult(res); } catch(Exception e) { ret = new Future<Tuple2<Boolean, Object>>(e); // throw new RuntimeException(e); } return ret; }
/** * Evaluate the condition. */ public IFuture<Tuple2<Boolean, Object>> evaluate(IEvent event) { Future<Tuple2<Boolean, Object>> fut = new Future<Tuple2<Boolean,Object>>(); try { CommandCondition.evaluateResult(invokeMethod(event)).addResultListener(new DelegationResultListener<Tuple2<Boolean,Object>>(fut) { public void customResultAvailable(Tuple2<Boolean, Object> result) { if(invert) { Boolean b = result.getFirstEntity().booleanValue()? Boolean.FALSE: Boolean.TRUE; result = new Tuple2<Boolean, Object>(b, result.getSecondEntity()); } super.customResultAvailable(result); } }); } catch(Exception e) { fut.setException(e); //throw SUtil.throwUnchecked(e); } return fut; }