org.globus.cog.karajan.workflow.events
Class EventBus

java.lang.Object
  extended byjava.lang.Thread
      extended byorg.globus.cog.karajan.workflow.events.EventBus
All Implemented Interfaces:
Runnable
Direct Known Subclasses:
EventBus.CriticalEventBus

public class EventBus
extends Thread


Nested Class Summary
static class EventBus.CriticalEventBus
           
 
Field Summary
static int countThreshold
           
static long cummulativeEventTime
           
static int DEFAULT_COUNT_THRESHOLD
           
static int DEFAULT_MAX_SEND_TIME
           
static int DEFAULT_MIN_CRITICAL_THREADS
           
static int endEvents
           
static long eventCount
           
static int MAX_QUEUED_EVENTS
           
static int maxCriticalThreads
           
static long maxSendTime
           
static int minCriticalThreads
           
static int startEvents
           
 
Fields inherited from class java.lang.Thread
MAX_PRIORITY, MIN_PRIORITY, NORM_PRIORITY
 
Constructor Summary
EventBus()
           
 
Method Summary
static EventBus.CriticalEventBus addCriticalBus()
           
protected  EventTargetPair dequeue()
           
static List getAllEvents()
           
static int getCountThreshold()
           
static int getCurrentCriticalThreads()
           
 Queue getEvents()
           
static long getMaxSendTime()
           
static int getMinCriticalThreads()
           
 int getQueueSize()
           
static void initialize()
           
protected static void initializeCriticalThreads()
           
static boolean isInitialized()
           
 boolean isSleeping()
           
 boolean isSuspended()
           
 boolean isTerminateOnEmptyQueue()
           
protected static EventBus newEventBus(Priority priority)
           
static void post(EventListener l, Event e)
           
 void postT(EventListener l, Event e)
           
static void removeCriticalBus()
           
static void removeEventHook()
           
static void resumeAll()
           
static void resumeAll(LinkedRing.Iterator i)
           
 void resumeT()
           
 void run()
           
static void send(EventListener fel, Event fee)
           
protected  void sendT(EventListener fel, Event fee)
           
static void setCountThreshold(int countThreshold)
           
static void setEventHook(EventHook hookp)
           
static void setMaxSendTime(long maxSendTime)
           
static void setMinCriticalThreads(int minCriticalThreads)
           
 void setTerminateOnEmptyQueue(boolean terminateOnEmptyQueue)
           
static void shutdown()
           
 void shutdownT()
           
static void suspendAll()
           
static void suspendAll(LinkedRing.Iterator i)
           
 void suspendT()
           
static boolean waitForEvents()
           
 
Methods inherited from class java.lang.Thread
activeCount, checkAccess, countStackFrames, currentThread, destroy, dumpStack, enumerate, getContextClassLoader, getName, getPriority, getThreadGroup, holdsLock, interrupt, interrupted, isAlive, isDaemon, isInterrupted, join, join, join, resume, setContextClassLoader, setDaemon, setName, setPriority, sleep, sleep, start, stop, stop, suspend, toString, yield
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

DEFAULT_MAX_SEND_TIME

public static final int DEFAULT_MAX_SEND_TIME
See Also:
Constant Field Values

DEFAULT_MIN_CRITICAL_THREADS

public static final int DEFAULT_MIN_CRITICAL_THREADS
See Also:
Constant Field Values

DEFAULT_COUNT_THRESHOLD

public static final int DEFAULT_COUNT_THRESHOLD
See Also:
Constant Field Values

MAX_QUEUED_EVENTS

public static final int MAX_QUEUED_EVENTS
See Also:
Constant Field Values

maxSendTime

public static long maxSendTime

minCriticalThreads

public static int minCriticalThreads

maxCriticalThreads

public static int maxCriticalThreads

countThreshold

public static int countThreshold

eventCount

public static long eventCount

startEvents

public static int startEvents

endEvents

public static int endEvents

cummulativeEventTime

public static long cummulativeEventTime
Constructor Detail

EventBus

public EventBus()
Method Detail

initialize

public static void initialize()

isSuspended

public boolean isSuspended()

getEvents

public Queue getEvents()

getQueueSize

public int getQueueSize()

run

public final void run()

dequeue

protected final EventTargetPair dequeue()

sendT

protected void sendT(EventListener fel,
                     Event fee)

send

public static final void send(EventListener fel,
                              Event fee)

post

public static final void post(EventListener l,
                              Event e)

initializeCriticalThreads

protected static void initializeCriticalThreads()

newEventBus

protected static EventBus newEventBus(Priority priority)

isSleeping

public final boolean isSleeping()

postT

public final void postT(EventListener l,
                        Event e)

shutdown

public static void shutdown()

shutdownT

public void shutdownT()

suspendT

public void suspendT()

resumeT

public void resumeT()

suspendAll

public static void suspendAll()

suspendAll

public static void suspendAll(LinkedRing.Iterator i)

resumeAll

public static void resumeAll()

resumeAll

public static void resumeAll(LinkedRing.Iterator i)

getAllEvents

public static List getAllEvents()

addCriticalBus

public static EventBus.CriticalEventBus addCriticalBus()

removeCriticalBus

public static void removeCriticalBus()

setEventHook

public static void setEventHook(EventHook hookp)

removeEventHook

public static void removeEventHook()

isInitialized

public static final boolean isInitialized()

getCountThreshold

public static final int getCountThreshold()

setCountThreshold

public static final void setCountThreshold(int countThreshold)

getMaxSendTime

public static final long getMaxSendTime()

setMaxSendTime

public static final void setMaxSendTime(long maxSendTime)

getMinCriticalThreads

public static final int getMinCriticalThreads()

setMinCriticalThreads

public static final void setMinCriticalThreads(int minCriticalThreads)

getCurrentCriticalThreads

public static final int getCurrentCriticalThreads()

isTerminateOnEmptyQueue

public boolean isTerminateOnEmptyQueue()

setTerminateOnEmptyQueue

public void setTerminateOnEmptyQueue(boolean terminateOnEmptyQueue)

waitForEvents

public static boolean waitForEvents()