Package jason.stdlib

Class at

java.lang.Object
All Implemented Interfaces:
InternalAction, java.io.Serializable

@Manual(literal=".at(when,event)",
        hint="used to send messages to other agents",
        argsHint={"the time for the event to be generated","the event to be created"},
        argsType={"string","trigger term"},
        examples={".at(\"now +3 minutes\", {+!g}): generates the event +!g 3 minutes from now.",".at(\"now +1 m\", {+!g})",".at(\"now +2 h\", {+!g})"},
        seeAlso="jason.stdlib.wait")
public class at
extends DefaultInternalAction

Internal action: .at.

Description: creates an event at some time in the future. This command is based on the unix "at" command, although not fully implemented yet.

Parameters:

  • + when (string): the time for the event to be generated.
    The syntax of this string in the current implementation has the following format:
    now + <number> [<time_unit>]
    where <time_unit> can be "s" or "second(s)", "m" or "minute(s)", "h" or "hour(s)", "d" or "day(s)". The default <time_unit> is milliseconds.

  • + event (trigger term): the event to be created. The event should follow the Jason Syntax for event and be enclosed by { and }.

Examples:

  • .at("now +3 minutes", {+!g}): generates the event +!g 3 minutes from now.
  • .at("now +1 m", {+!g})
  • .at("now +2 h", {+!g})
See Also:
wait, Serialized Form
  • Field Details

    • atAtom

      public static final java.lang.String atAtom
      See Also:
      Constant Field Values
    • idCount

      private static java.util.concurrent.atomic.AtomicInteger idCount
    • ats

      private java.util.Map<java.lang.Integer,​at.CheckDeadline> ats
  • Constructor Details

    • at

      public at()
  • Method Details

    • getMinArgs

      public int getMinArgs()
      Overrides:
      getMinArgs in class DefaultInternalAction
    • getMaxArgs

      public int getMaxArgs()
      Overrides:
      getMaxArgs in class DefaultInternalAction
    • 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 DefaultInternalAction
      Throws:
      java.lang.Exception
    • cancelAts

      public void cancelAts()