/** * Check if plan is already aborted. */ protected void testBodyAborted(RPlan rplan) { // Throw error to exit body method of aborted plan. if(rplan!=null && rplan.aborted && rplan.getLifecycleState()==PlanLifecycleState.BODY) { // System.out.println("aborting after block: "+rplan); throw new BodyAborted(); } }
/** * Test if the action is valid. * @return True, if action is valid. */ public boolean isValid() { // todo: abort execution boolean ret = RPlan.PlanLifecycleState.NEW.equals(rplan.getLifecycleState()) || RPlan.PlanLifecycleState.BODY.equals(rplan.getLifecycleState()); // if(ret) // { // Object element = rplan.getReason(); // if(element instanceof RGoal) // { // RGoal rgoal = (RGoal)element; // ret = RGoal.GOALLIFECYCLESTATE_ACTIVE.equals(rgoal.getLifecycleState()) // && RGoal.GOALPROCESSINGSTATE_INPROCESS.equals(rgoal.getProcessingState()); // // todo: hack, how to avoid side effect // if(!ret) // rplan.abort(); // } // } // if(!ret) // System.out.println("not valid: "+rplan); return ret; }
/** * Test if the action is valid. * @return True, if action is valid. */ public boolean isValid() { // todo: abort execution boolean ret = RPlan.PlanLifecycleState.NEW.equals(rplan.getLifecycleState()) || RPlan.PlanLifecycleState.BODY.equals(rplan.getLifecycleState()); // if(ret) // { // Object element = rplan.getReason(); // if(element instanceof RGoal) // { // RGoal rgoal = (RGoal)element; // ret = RGoal.GOALLIFECYCLESTATE_ACTIVE.equals(rgoal.getLifecycleState()) // && RGoal.GOALPROCESSINGSTATE_INPROCESS.equals(rgoal.getProcessingState()); // // todo: hack, how to avoid side effect // if(!ret) // rplan.abort(); // } // } // if(!ret) // System.out.println("not valid: "+rplan); return ret; }
/** * Create a new action. */ public AdoptGoalAction(RGoal goal) { // System.out.println("adopting: "+goal.getId()+" "+goal.getPojoElement().getClass().getName()); this.goal = goal; if(goal.getParentPlan()!=null) this.state = goal.getParentPlan().getLifecycleState(); }
/** * Check if plan is already aborted. */ protected void testBodyAborted(RPlan rplan) { // Throw error to exit body method of aborted plan. if(rplan!=null && rplan.isFinishing() && rplan.getLifecycleState()==PlanLifecycleState.BODY) { // System.out.println("aborting after block: "+rplan); throw new BodyAborted(); } }
/** * Check if plan is already aborted. */ protected void testBodyAborted(RPlan rplan) { // Throw error to exit body method of aborted plan. if(rplan!=null && rplan.isFinishing() && rplan.getLifecycleState()==PlanLifecycleState.BODY) { // System.out.println("aborting after block: "+rplan); throw new BodyAborted(); } }
/** * Create a new action. */ public AdoptGoalAction(RGoal goal) { // System.out.println("adopting: "+goal.getId()+" "+goal.getPojoElement().getClass().getName()); this.goal = goal; // todo: support this also for a parent goal?! if(goal.getParent() instanceof RPlan) { this.state = goal.getParentPlan().getLifecycleState(); } }
/** * */ protected void dumpPlans() { if(plans!=null) { System.out.println("plans: "+plans.size()); System.out.println("--------"); for(RPlan plan: plans) { StringBuffer buf = new StringBuffer(); determineValid(plan, plan, buf); if(plan.aborted) System.out.println("aborted zombie plan: "+plan.getId()); System.out.println(buf.toString()); System.out.println(plan.getId()+" "+plan.getLifecycleState()+" "+plan.getProcessingState()); System.out.println("--------"); } } }
/** * */ protected void dumpPlans() { if(plans!=null) { System.out.println("plans: "+plans.size()); System.out.println("--------"); for(RPlan plan: plans) { StringBuffer buf = new StringBuffer(); determineValid(plan, plan, buf); if(plan.isFinishing()) System.out.println("aborted zombie plan: "+plan.getId()); System.out.println(buf.toString()); System.out.println(plan.getId()+" "+plan.getLifecycleState()+" "+plan.getProcessingState()); System.out.println("--------"); } } }
/** * Test if the action is valid. * @return True, if action is valid. */ public boolean isValid() { return (state==null|| state.equals(goal.getParentPlan().getLifecycleState())) && RGoal.GoalLifecycleState.NEW.equals(goal.getLifecycleState()); }
/** * Test if the action is valid. * @return True, if action is valid. */ public boolean isValid() { return (state==null || state.equals(goal.getParentPlan().getLifecycleState())) && RGoal.GoalLifecycleState.NEW.equals(goal.getLifecycleState()); }
PlanLifecycleState state = rplan.getLifecycleState(); if(state.equals(RPlan.PlanLifecycleState.PASSED) && exclude.equals(MProcessableElement.EXCLUDE_WHEN_SUCCEEDED)
if(isFinishing() && PlanLifecycleState.BODY.equals(getLifecycleState()))
RPlan.RPLANS.set(rplan); Exception e = ex; if(rplan.isFinishing() && rplan.getLifecycleState()==PlanLifecycleState.BODY) e = new PlanAbortedException(); if(e!=null)
/** * Called when a plan has finished. */ public void planFinished(IInternalAccess ia, IInternalPlan rplan) { super.planFinished(ia, rplan); finished = true; if(rplan instanceof RPlan) { PlanLifecycleState state = ((RPlan)rplan).getLifecycleState(); if(state.equals(RPlan.PlanLifecycleState.FAILED)) { setException(rplan.getException()); } } notifyListeners(); }
return new PlanInfo(id, type, plan.getLifecycleState().toString());
/** * Called when a plan has finished. */ public void planFinished(IInternalAccess ia, RPlan rplan) { super.planFinished(ia, rplan); finished = true; if(rplan!=null) { PlanLifecycleState state = rplan.getLifecycleState(); if(state.equals(RPlan.PlanLifecycleState.FAILED)) { setException(rplan.getException()); } } notifyListeners(); }
return new PlanInfo(id, type, plan.getLifecycleState().toString());
public void resultAvailable(final ITimer timer) if(lcs.equals(getLifecycleState()))
public void resultAvailable(final ITimer timer) if(lcs.equals(getLifecycleState()))