warbot.kernel
Class WarbotScheduler

java.lang.Object
  extended by madkit.kernel.AbstractAgent
      extended by madkit.kernel.Agent
          extended by madkit.kernel.Scheduler
              extended by warbot.kernel.WarbotScheduler
All Implemented Interfaces:
java.io.Serializable, java.lang.Runnable

public final class WarbotScheduler
extends Scheduler

See Also:
Serialized Form

Field Summary
static java.lang.String AUTHOR
           
static java.lang.String DATE
           
static java.lang.String VERSION
           
 
Method Summary
 void activate()
          This method is initially called when the micro-kernel registers the agent.
 void end()
          the end method will remove all the activators which have been used by the scheduler.
 long getCycleNumber()
           
 boolean isRunning()
           
 void live()
          This method defines the main behavior of threaded agents.
 void setEnvironment(WarbotEnvironment w)
           
 void setRunning(boolean t)
           
 
Methods inherited from class madkit.kernel.Scheduler
addActivator, addActivator, getActivators, removeActivator, removeAllActivators
 
Methods inherited from class madkit.kernel.Agent
connectAgencyToAgency, createPlace, createPlace, enableMobility, enableMobility, exitImmediatlyOnKill, getAgencyNamed, joinPlace, joinPlace, joinPlace, pause, receiveMessage, run, waitNextMessage, waitNextMessage
 
Methods inherited from class madkit.kernel.AbstractAgent
broadcastMessage, broadcastMessage, connectedWithCommunity, createGroup, createGroup, debug, destroyGroup, disposeMyGUI, foundGroup, getAddress, getAgentsWithRole, getAgentsWithRole, getAgentWithRole, getAgentWithRole, getAvailableCommunities, getBean, getController, getCurrentKernelAddress, getDebug, getExistingGroups, getExistingGroups, getExistingRoles, getExistingRoles, getGroups, getGUIObject, getMessageBoxSize, getMyGroups, getMyGroups, getMyRoles, getMyRoles, getName, getRoles, hasGUI, hashCode, hideMyGUI, initGUI, isBelongingToGroup, isBelongingToGroup, isCommunity, isGroup, isGroup, isMemberOf, isMemberOf, isMessageBoxEmpty, isRole, isRole, joinGroup, killAgent, launchAgent, launchAgent, leaveGroup, leaveGroup, leaveRole, leaveRole, nextMessage, print, println, redisplayMyGUI, requestRole, requestRole, requestRole, restoreAgent, sendMessage, sendMessage, sendMessage, setBean, setController, setDebug, setGUIObject, setName, setOutput, setOutputWriter, toString, windowClosing
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Field Detail

VERSION

public static java.lang.String VERSION

AUTHOR

public static java.lang.String AUTHOR

DATE

public static java.lang.String DATE
Method Detail

getCycleNumber

public long getCycleNumber()

setRunning

public void setRunning(boolean t)

isRunning

public boolean isRunning()

setEnvironment

public void setEnvironment(WarbotEnvironment w)

activate

public void activate()
Description copied from class: AbstractAgent
This method is initially called when the micro-kernel registers the agent. Usually a good place to set up some initial groups and roles.

Here is a typical example (taken from the PingPong agent of MadKit (plugin demos)) :

public void activate()
{
        try {
                createGroup(true,"ping-pong",null,null);
                println ("No ping-pong group : I created one");
                creator=true;
        } catch (OrganizationRequestException e) { // the group already exists
                creator=false;
                println ("A ping-pong group already exists : I will join");
        }
        requestRole("ping-pong","player",null);
}
 

Overrides:
activate in class AbstractAgent

live

public void live()
Description copied from class: Agent
This method defines the main behavior of threaded agents.

Overrides:
live in class Agent

end

public void end()
Description copied from class: Scheduler
the end method will remove all the activators which have been used by the scheduler. Overriding this method, one should use super.end() first in order to ease the removal of simulated agents which will be killed. Doing so can greatly improved the "killing time" of simulation engines

Overrides:
end in class Scheduler
See Also:
AbstractAgent.end()


Copyright © Madkit Team (O. Gutknecht, J. Ferber, F. Michel et al.) All Rights Reserved.