Class AgendaManager

java.lang.Object
  |
  +--java.lang.Thread
        |
        +--AgendaManager

public class AgendaManager
extends java.lang.Thread


Field Summary
private  LinkedListQ ActionResQ
           
private  LinkedListQ AgendaQ
           
private  Semaphore Executor_notify
           
private  java.lang.String KQMLmessage
           
private  ProvisionCell Message
           
private  Agent myagent
           
private  Semaphore Scheduler_wait
           
private  LinkedListQ shutdownIds
           
private  boolean shuttingdown
           
private  LinkedListQ TaskQ
           
private  java.util.Hashtable Tasks
           
 
Fields inherited from class java.lang.Thread
contextClassLoader, daemon, eetop, group, inheritedAccessControlContext, MAX_PRIORITY, MIN_PRIORITY, name, NORM_PRIORITY, priority, single_step, stillborn, stopThreadPermission, target, threadInitNumber, threadQ, values
 
Constructor Summary
(package private) AgendaManager(Agent agent, LinkedListQ TQ, LinkedListQ ARes, LinkedListQ Agenda, Semaphore Sem1, Semaphore Sem2)
           
 
Method Summary
 void addAgenda(TaskCell Task)
           
 void addAgendaNOPROV(java.lang.String root_task, java.lang.String Message)
           
 void DebugSched(java.lang.String str)
           
 void dip(TaskCell Task, ProvisionCell Parg)
           
 void distributeInputProvision(TaskCell Task, java.lang.String Provision, java.lang.String Value)
           
 void distributeOutcomeProvision(TaskCell Task, ProvisionCell Parg)
           
 LinkedListQ getMsgList(java.lang.String message)
           
private  void getShutdownIds(java.util.Hashtable t)
           
private  void mergeHT(java.util.Hashtable A, java.util.Hashtable B)
           
 void RemoveTasks(TaskCell T)
           
 void run_Scheduler()
           
 void run()
           
 boolean TaskCompleted(TaskCell T)
           
 
Methods inherited from class java.lang.Thread
, activeCount, checkAccess, countStackFrames, currentThread, destroy, dumpStack, enumerate, exit, getContextClassLoader, getName, getPriority, getThreadGroup, init, interrupt, interrupt0, interrupted, isAlive, isDaemon, isInterrupted, isInterrupted, join, join, join, nextThreadNum, registerNatives, resume, resume0, setContextClassLoader, setDaemon, setName, setPriority, setPriority0, sleep, sleep, start, stop, stop, stop0, suspend, suspend0, toString, yield
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

myagent

private Agent myagent

TaskQ

private LinkedListQ TaskQ

ActionResQ

private LinkedListQ ActionResQ

AgendaQ

private LinkedListQ AgendaQ

Scheduler_wait

private Semaphore Scheduler_wait

Executor_notify

private Semaphore Executor_notify

Tasks

private java.util.Hashtable Tasks

shuttingdown

private boolean shuttingdown

shutdownIds

private LinkedListQ shutdownIds

KQMLmessage

private java.lang.String KQMLmessage

Message

private ProvisionCell Message
Constructor Detail

AgendaManager

AgendaManager(Agent agent,
              LinkedListQ TQ,
              LinkedListQ ARes,
              LinkedListQ Agenda,
              Semaphore Sem1,
              Semaphore Sem2)
Method Detail

run

public void run()
Overrides:
run in class java.lang.Thread

run_Scheduler

public void run_Scheduler()
                   throws CriticalAgentException,
                          NonCriticalAgentException

distributeInputProvision

public void distributeInputProvision(TaskCell Task,
                                     java.lang.String Provision,
                                     java.lang.String Value)

distributeOutcomeProvision

public void distributeOutcomeProvision(TaskCell Task,
                                       ProvisionCell Parg)

dip

public void dip(TaskCell Task,
                ProvisionCell Parg)

addAgenda

public void addAgenda(TaskCell Task)

TaskCompleted

public boolean TaskCompleted(TaskCell T)

RemoveTasks

public void RemoveTasks(TaskCell T)

addAgendaNOPROV

public void addAgendaNOPROV(java.lang.String root_task,
                            java.lang.String Message)

mergeHT

private void mergeHT(java.util.Hashtable A,
                     java.util.Hashtable B)

getMsgList

public LinkedListQ getMsgList(java.lang.String message)

getShutdownIds

private void getShutdownIds(java.util.Hashtable t)

DebugSched

public void DebugSched(java.lang.String str)