sofya.ed.structural
Class AbstractEventDispatcher

java.lang.Object
  extended by sofya.ed.structural.AbstractEventDispatcher
Direct Known Subclasses:
JUnitEventDispatcher, ProgramEventDispatcher

public abstract class AbstractEventDispatcher
extends java.lang.Object

This is the abstract base class of all event dispatchers that produce structural event streams.

Version:
03/16/2006
Author:
Alex Kinneer

Nested Class Summary
static class AbstractEventDispatcher.CreateException
          Exception that indicates an error occurred during instantiation of an event dispatcher.
static class AbstractEventDispatcher.ExecException
          Exception that indicates an error occurred in an event dispatcher while executing a subject class.
static class AbstractEventDispatcher.SetupException
          Exception that indicates an error occurred while preparing to execute a subject class.
static class AbstractEventDispatcher.TraceFileException
          Exception that indicates an error occurred while creating or writing a trace file.
 
Field Summary
protected static boolean dispatcherReady
          Flag indicating whether a dispatcher's own configuration is set and the dispatcher is ready to invoke the subject program.
protected static boolean isInstrumented
          Flag indicating whether subject is instrumented.
 
Constructor Summary
protected AbstractEventDispatcher()
           
 
Method Summary
abstract  void startDispatcher()
          Performs setup and runs the subject; this is the main driving method of a structural event dispatcher.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

dispatcherReady

protected static boolean dispatcherReady
Flag indicating whether a dispatcher's own configuration is set and the dispatcher is ready to invoke the subject program.


isInstrumented

protected static volatile boolean isInstrumented
Flag indicating whether subject is instrumented. Set to true once a connection has been made from the subject.

Constructor Detail

AbstractEventDispatcher

protected AbstractEventDispatcher()
Method Detail

startDispatcher

public abstract void startDispatcher()

Performs setup and runs the subject; this is the main driving method of a structural event dispatcher.

Throws:
AbstractEventDispatcher.SetupException - If there is an error attempting to set up the event dispatcher to run the subject.
AbstractEventDispatcher.ExecException - If an error occurs executing the subject. This does not include exceptions thrown by the subject itself, only errors in the event dispatcher while attempting to interface with the subject.