Package jason.runtime

Interface RuntimeServices

All Known Subinterfaces:
RuntimeServicesInfraTier
All Known Implementing Classes:
BaseRuntimeServices, DelegatedRuntimeServices, JadeRuntimeServices, LocalRuntimeServices

public interface RuntimeServices
This interface is implemented by the infrastructure (Jade/Local/...) to provide concrete runtime services.
  • Method Summary

    Modifier and Type Method Description
    AgArch clone​(Agent source, java.util.Collection<java.lang.String> archClasses, java.lang.String agName)
    Clones an agent
    java.lang.String createAgent​(java.lang.String agName, java.lang.String agSource, java.lang.String agClass, java.util.Collection<java.lang.String> archClasses, ClassParameters bbPars, Settings stts, Agent father)
    Creates a new agent with agName from source agSource, using agClass as agent class (default value is "jason.asSemantics.Agent"), archClasses as agent architecture classes, bbPars as the belief base class (default value is "DefaultBeliefBase"), stts as Settings (default value is new Settings()), and father is the agent creating this agent (null is none).
    default void dfDeRegister​(java.lang.String agName, java.lang.String service, java.lang.String type)  
    default void dfRegister​(java.lang.String agName, java.lang.String service, java.lang.String type)  
    default java.util.Collection<java.lang.String> dfSearch​(java.lang.String service, java.lang.String type)  
    default void dfSubscribe​(java.lang.String agName, java.lang.String service, java.lang.String type)  
    java.util.Collection<java.lang.String> getAgentsNames()
    Returns a set of all agents' name
    int getAgentsQty()
    Gets the number of agents in the MAS.
    default java.util.Collection<java.lang.String> getDefaultAgArchs()  
    default java.util.Map<java.lang.String,​java.util.Set<java.lang.String>> getDF()  
    java.lang.String getNewAgentName​(java.lang.String baseName)  
    default java.util.Map<java.lang.String,​java.util.Map<java.lang.String,​java.lang.Object>> getWP()  
    boolean isRunning()  
    boolean killAgent​(java.lang.String agName, java.lang.String byAg, int deadline)
    Kills the agent named agName as a requested by byAg.
    default void registerDefaultAgArch​(java.lang.String agArch)
    register a class to be included as new agents archs
    void startAgent​(java.lang.String agName)
    starts an agent (e.g.
    default void stopMAS()  
    void stopMAS​(int deadline, boolean stopJVM, int exitValue)
    Stops all MAS (the agents, the environment, the controller, ...)
  • Method Details

    • createAgent

      java.lang.String createAgent​(java.lang.String agName, java.lang.String agSource, java.lang.String agClass, java.util.Collection<java.lang.String> archClasses, ClassParameters bbPars, Settings stts, Agent father) throws java.lang.Exception
      Creates a new agent with agName from source agSource, using agClass as agent class (default value is "jason.asSemantics.Agent"), archClasses as agent architecture classes, bbPars as the belief base class (default value is "DefaultBeliefBase"), stts as Settings (default value is new Settings()), and father is the agent creating this agent (null is none). if no archClasses is informed (null value), if fathers is informed use father's ag archs else use default ag archs (see registerDefaultAgArch)

      Example: createAgent("bob", "bob.asl", "mypkg.MyAgent", null, null, null); Returns the name of the agent

      Throws:
      java.lang.Exception
    • getNewAgentName

      java.lang.String getNewAgentName​(java.lang.String baseName)
    • registerDefaultAgArch

      default void registerDefaultAgArch​(java.lang.String agArch)
      register a class to be included as new agents archs
    • getDefaultAgArchs

      default java.util.Collection<java.lang.String> getDefaultAgArchs()
    • startAgent

      void startAgent​(java.lang.String agName)
      starts an agent (e.g. create thread for it)
    • clone

      AgArch clone​(Agent source, java.util.Collection<java.lang.String> archClasses, java.lang.String agName) throws JasonException
      Clones an agent
      Parameters:
      source - : the agent used as source for beliefs, plans, ...
      archClassName - : agent architectures that will be used
      agName - : the name of the clone
      Returns:
      the agent arch created
      Throws:
      JasonException
    • killAgent

      boolean killAgent​(java.lang.String agName, java.lang.String byAg, int deadline)
      Kills the agent named agName as a requested by byAg. Agent.stopAg() method is called before the agent is removed.
    • getAgentsNames

      java.util.Collection<java.lang.String> getAgentsNames()
      Returns a set of all agents' name
    • getAgentsQty

      int getAgentsQty()
      Gets the number of agents in the MAS.
    • isRunning

      boolean isRunning()
    • stopMAS

      void stopMAS​(int deadline, boolean stopJVM, int exitValue) throws java.lang.Exception
      Stops all MAS (the agents, the environment, the controller, ...)
      Throws:
      java.lang.Exception
    • stopMAS

      default void stopMAS() throws java.lang.Exception
      Throws:
      java.lang.Exception
    • dfRegister

      default void dfRegister​(java.lang.String agName, java.lang.String service, java.lang.String type)
    • dfDeRegister

      default void dfDeRegister​(java.lang.String agName, java.lang.String service, java.lang.String type)
    • dfSearch

      default java.util.Collection<java.lang.String> dfSearch​(java.lang.String service, java.lang.String type)
    • dfSubscribe

      default void dfSubscribe​(java.lang.String agName, java.lang.String service, java.lang.String type)
    • getDF

      default java.util.Map<java.lang.String,​java.util.Set<java.lang.String>> getDF()
    • getWP

      default java.util.Map<java.lang.String,​java.util.Map<java.lang.String,​java.lang.Object>> getWP()