/** * Add a new rule. * @param rule The rule. */ public IFuture<Void> addRule(IRule<?> rule) { Future<Void> ret = new Future<Void>(); try { getRulebase().addRule(rule); Set<Integer> evs = new HashSet<Integer>(); Integer callid = Integer.valueOf(ret.hashCode()); callfutures.put(callid, ret); opencalls.put(callid, evs); notifySubscribers(new RuleAddedEvent(callid.intValue(), rule), evs).addResultListener(new DelegationResultListener<Void>(ret)); } catch(RuntimeException e) { ret.setException(e); } return ret; }
/** * Add a new rule. * @param rule The rule. */ public IFuture<Void> addRule(IRule<?> rule) { Future<Void> ret = new Future<Void>(); try { getRulebase().addRule(rule); Set<Integer> evs = new HashSet<Integer>(); Integer callid = Integer.valueOf(ret.hashCode()); callfutures.put(callid, ret); opencalls.put(callid, evs); notifySubscribers(new RuleAddedEvent(callid.intValue(), rule), evs).addResultListener(new DelegationResultListener<Void>(ret)); } catch(RuntimeException e) { ret.setException(e); } return ret; }
rulebase.addRule(rule);
public void intermediateResultAvailable(IRulebaseEvent event) { if(event instanceof RuleAddedEvent) { rulesystem.getRulebase().addRule(((RuleAddedEvent)event).getRule()); // System.out.println("Added rule: "+event); } else if(event instanceof RuleRemovedEvent) { rulesystem.getRulebase().removeRule(((RuleRemovedEvent)event).getRuleName()); // System.out.println("Removed rule: "+event); } ((ARulebaseEvent)event).setFinished(subscription); }
public void resultAvailable(final ITimer timer) { if(timer!=null) rescom.setTimer(timer); Rule<Void> rule = new Rule<Void>(rulename, ICondition.TRUE_CONDITION, new IAction<Void>() { public IFuture<Void> execute(IEvent event, IRule<Void> rule, Object context, Object condresult) { // if(rescom.equals(getResumeCommand())) { setDispatchedElement(new ChangeEvent(event)); RPlan.executePlan(RPlan.this, ia, rescom); } return IFuture.DONE; } }); rule.addEvent(et); ip.getRuleSystem().getRulebase().addRule(rule); } });
public void intermediateResultAvailable(IRulebaseEvent event) { if(event instanceof RuleAddedEvent) { rulesystem.getRulebase().addRule(((RuleAddedEvent)event).getRule()); // System.out.println("Added rule: "+event); } else if(event instanceof RuleRemovedEvent) { rulesystem.getRulebase().removeRule(((RuleRemovedEvent)event).getRuleName()); // System.out.println("Removed rule: "+event); } ((ARulebaseEvent)event).setFinished(subscription); }
public void resultAvailable(final ITimer timer) { if(timer!=null) rescom.setTimer(timer); Rule<Void> rule = new Rule<Void>(rulename, filter==null? ICondition.TRUE_CONDITION: new ICondition() { public IFuture<Tuple2<Boolean, Object>> evaluate(IEvent event) { return new Future<Tuple2<Boolean, Object>>(filter.filter((ChangeInfo<?>)event.getContent())? ICondition.TRUE: ICondition.FALSE); } }, new IAction<Void>() { public IFuture<Void> execute(IEvent event, IRule<Void> rule, Object context, Object condresult) { // if(rescom.equals(getResumeCommand())) // { setDispatchedElement(new ChangeEvent(event)); rescom.execute(null); // RPlan.executePlan(RPlan.this, getAgent(), rescom); // } return IFuture.DONE; } }); // rule.addEvent(et); rule.setEvents(ets); getRuleSystem().getRulebase().addRule(rule); } });
public void resultAvailable(final ITimer timer) { if(timer!=null) rescom.setTimer(timer); Rule<Void> rule = new Rule<Void>(rulename, ICondition.TRUE_CONDITION, new IAction<Void>() { public IFuture<Void> execute(IEvent event, IRule<Void> rule, Object context, Object condresult) { // if(rescom.equals(getResumeCommand())) { setDispatchedElement(new ChangeEvent(event)); RPlan.executePlan(RPlan.this, ia, rescom); } return IFuture.DONE; } }); rule.addEvent(eta); rule.addEvent(etb); ip.getRuleSystem().getRulebase().addRule(rule); } });
public void resultAvailable(final ITimer timer) { if(timer!=null) rescom.setTimer(timer); Rule<Void> rule = new Rule<Void>(rulename, cond!=null? cond: ICondition.TRUE_CONDITION, new IAction<Void>() { public IFuture<Void> execute(IEvent event, IRule<Void> rule, Object context, Object condresult) { // if(rescom.equals(getResumeCommand())) { setDispatchedElement(new ChangeEvent(event)); RPlan.executePlan(RPlan.this, ia, rescom); } return IFuture.DONE; } }); for(String ev: events) { rule.addEvent(new EventType(ev)); } ip.getRuleSystem().getRulebase().addRule(rule); } });
public void resultAvailable(final ITimer timer) { if(timer!=null) rescom.setTimer(timer); Rule<Void> rule = new Rule<Void>(rulename, cond!=null? cond: ICondition.TRUE_CONDITION, new IAction<Void>() { public IFuture<Void> execute(IEvent event, IRule<Void> rule, Object context, Object condresult) { // if(rescom.equals(getResumeCommand())) // { setDispatchedElement(new ChangeEvent(event)); rescom.execute(null); // RPlan.executePlan(RPlan.this, getAgent(), rescom); // } return IFuture.DONE; } }); for(String ev: events) { rule.addEvent(new EventType(ev)); } getRuleSystem().getRulebase().addRule(rule); } });
getRuleSystem().getRulebase().addRule(rule);
getRuleSystem().getRulebase().addRule(rule);
rule.setEvents(events); BDIAgentInterpreter ip = (BDIAgentInterpreter)getInterpreter(); ip.getRuleSystem().getRulebase().addRule(rule);
ip.getRuleSystem().getRulebase().addRule(rule);
bdif.getRuleSystem().getRulebase().addRule(rule); ret.get(timeout);
bdif.getRuleSystem().getRulebase().addRule(rule); ret.get(timeout);
getRuleSystem().getRulebase().addRule(rule); getRuleSystem().getRulebase().addRule(rule); getRuleSystem().getRulebase().addRule(rule); events.add(new EventType(new String[]{ChangeEvent.GOALADOPTED, mgoal.getName()})); rule.setEvents(events); getRuleSystem().getRulebase().addRule(rule); events.add(new EventType(new String[]{ChangeEvent.GOALADOPTED, mgoal.getName()})); rule.setEvents(events); getRuleSystem().getRulebase().addRule(rule); getRuleSystem().getRulebase().addRule(rule); events.add(new EventType(new String[]{ChangeEvent.GOALADOPTED, mgoal.getName()})); rule.setEvents(events); getRuleSystem().getRulebase().addRule(rule); getRuleSystem().getRulebase().addRule(rule); events.add(new EventType(new String[]{ChangeEvent.GOALADOPTED, mgoal.getName()})); rule.setEvents(events); getRuleSystem().getRulebase().addRule(rule); getRuleSystem().getRulebase().addRule(rule); rulesystem.getRulebase().addRule(rule);
rulesystem.getRulebase().addRule(rule); rulesystem.getRulebase().addRule(rule); rulesystem.getRulebase().addRule(rule); rulesystem.getRulebase().addRule(rule); rulesystem.getRulebase().addRule(rule); events.add(new EventType(new String[]{ChangeEvent.GOALADOPTED, mgoal.getName()})); rule.setEvents(events); rulesystem.getRulebase().addRule(rule); events.add(new EventType(new String[]{ChangeEvent.GOALADOPTED, mgoal.getName()})); rule.setEvents(events); rulesystem.getRulebase().addRule(rule); rulesystem.getRulebase().addRule(rule); events.add(new EventType(new String[]{ChangeEvent.GOALADOPTED, mgoal.getName()})); rule.setEvents(events); rulesystem.getRulebase().addRule(rule); rulesystem.getRulebase().addRule(rule); events.add(new EventType(new String[]{ChangeEvent.GOALADOPTED, mgoal.getName()})); rule.setEvents(events); rulesystem.getRulebase().addRule(rule);