jason.stdlib
Class fail_goal

Package class diagram package fail_goal
java.lang.Object
  extended by jason.asSemantics.DefaultInternalAction
      extended by jason.stdlib.succeed_goal
          extended by jason.stdlib.fail_goal
All Implemented Interfaces:
InternalAction, java.io.Serializable

public class fail_goal
extends succeed_goal

Internal action: .fail_goal(G).

Description: aborts goals G in the agent circumstance as if a plan for such goal had failed. Assuming that one of the plans requiring G was G0 <- !G; ..., an event -!G0 is generated. In case G was triggered by !!G (and therefore not a subgoal, as happens also when an "achieve" performative is used), the generated event is -!G. A literal G is a goal if there is a triggering event +!G in any plan within any intention; also note that intentions can be suspended hence appearing in sets E, PA, or PI of the agent's circumstance as well.

Example:

(Note: this internal action was introduced in a DALT 2006 paper, where it was called .dropGoal(G,false).)

See Also:
intend, desire, drop_all_desires, drop_all_events, drop_all_intentions, drop_intention, drop_desire, succeed_goal, current_intention, suspend, suspended, resume, Serialized Form

Constructor Summary
fail_goal()
           
 
Method Summary
 java.lang.Object execute(TransitionSystem ts, Unifier un, Term[] args)
          Executes the internal action.
 
Methods inherited from class jason.stdlib.succeed_goal
checkArguments, drop, getMaxArgs, getMinArgs
 
Methods inherited from class jason.asSemantics.DefaultInternalAction
canBeUsedInContext, prepareArguments, suspendIntention
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

fail_goal

public fail_goal()
Method Detail

execute

public java.lang.Object execute(TransitionSystem ts,
                                Unifier un,
                                Term[] args)
                         throws java.lang.Exception
Description copied from interface: InternalAction
Executes the internal action. It should return a Boolean or an Iterator. A true boolean return means that the IA was successfully executed. An Iterator result means that there is more than one answer for this IA (e.g. see member internal action).

Specified by:
execute in interface InternalAction
Overrides:
execute in class succeed_goal
Throws:
java.lang.Exception