Class DispatcherThread

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

public class DispatcherThread
extends java.lang.Thread


Field Summary
private  LinkedListQ Agenda
           
private  Semaphore dispatcher_wait
           
private  Semaphore executor_notify
           
private  LinkedListQ incomingQueue
           
private  Agent local
           
private static int msgNum
           
private  LinkedListQ Objectives
           
private  java.util.Hashtable Pending
           
private  java.lang.String[] performs
           
private  Semaphore planner_notify
           
 
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
DispatcherThread(LinkedListQ incomingQueue, LinkedListQ Objectives, LinkedListQ Agenda, java.util.Hashtable Pending, Agent local, Semaphore one, Semaphore two, Semaphore three)
           
 
Method Summary
 void achieve(KQMLmsg msg)
           
 void DebugDispatch(java.lang.String Message)
           
private  boolean inPerforms(java.lang.String performative)
           
 void run()
           
private  void runDispatcher()
           
 
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

Objectives

private LinkedListQ Objectives

msgNum

private static int msgNum

local

private Agent local

incomingQueue

private LinkedListQ incomingQueue

Agenda

private LinkedListQ Agenda

Pending

private java.util.Hashtable Pending

dispatcher_wait

private Semaphore dispatcher_wait

planner_notify

private Semaphore planner_notify

executor_notify

private Semaphore executor_notify

performs

private java.lang.String[] performs
Constructor Detail

DispatcherThread

public DispatcherThread(LinkedListQ incomingQueue,
                        LinkedListQ Objectives,
                        LinkedListQ Agenda,
                        java.util.Hashtable Pending,
                        Agent local,
                        Semaphore one,
                        Semaphore two,
                        Semaphore three)
Method Detail

run

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

runDispatcher

private void runDispatcher()
                    throws NonCriticalAgentException,
                           CriticalAgentException

achieve

public void achieve(KQMLmsg msg)
             throws NonCriticalAgentException,
                    CriticalAgentException

inPerforms

private boolean inPerforms(java.lang.String performative)

DebugDispatch

public void DebugDispatch(java.lang.String Message)