jigcell.compare.views
Class TransformDebugger.DebuggerThread

java.lang.Object
  extended by java.lang.Thread
      extended by jigcell.compare.views.TransformDebugger.DebuggerThread
All Implemented Interfaces:
java.lang.Runnable, java.util.EventListener, IEvaluationListener
Enclosing class:
TransformDebugger

protected class TransformDebugger.DebuggerThread
extends java.lang.Thread
implements IEvaluationListener

Thread for executing play events.


Nested Class Summary
 
Nested classes/interfaces inherited from class java.lang.Thread
java.lang.Thread.State, java.lang.Thread.UncaughtExceptionHandler
 
Field Summary
protected  long debugDelay
          Delay between continuing a debug trace
protected  boolean killed
          Whether this thread has been killed
protected  boolean sleeping
          Whether the thread is sleeping
 
Fields inherited from class java.lang.Thread
MAX_PRIORITY, MIN_PRIORITY, NORM_PRIORITY
 
Constructor Summary
TransformDebugger.DebuggerThread(long debugDelay)
          Creates a new thread for performing debug evaluations.
 
Method Summary
 void delay()
          Sleeps for the length of the debug delay.
 void evaluationError(IProgrammableDataGenerator source, java.lang.Throwable t)
          Notification that an error occurred during evaluation.
 void evaluationStart(IProgrammableDataGenerator source)
          Notification for the start of an evaluation.
 void evaluationStop(IProgrammableDataGenerator source, IDataElement result)
          Notification for the end of an evaluation.
 long getDebugDelay()
          The delay before continuing a debug trace.
 void interruptDebug()
          Attempts to interrupt the debug delay only.
 void kill()
          Kill this thread at the next opportunity.
 void run()
           
 void setDebugDelay(long debugDelay)
          Sets the delay before continuing a debug trace.
protected  void stopDebugging()
          Terminates a debugging session.
protected  void updateDisplay(ITransform transform, IDataElement element)
          Updates the display after a debug event.
 
Methods inherited from class java.lang.Thread
activeCount, checkAccess, countStackFrames, currentThread, destroy, dumpStack, enumerate, getAllStackTraces, getContextClassLoader, getDefaultUncaughtExceptionHandler, getId, getName, getPriority, getStackTrace, getState, getThreadGroup, getUncaughtExceptionHandler, holdsLock, interrupt, interrupted, isAlive, isDaemon, isInterrupted, join, join, join, resume, setContextClassLoader, setDaemon, setDefaultUncaughtExceptionHandler, setName, setPriority, setUncaughtExceptionHandler, 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

killed

protected boolean killed
Whether this thread has been killed


sleeping

protected boolean sleeping
Whether the thread is sleeping


debugDelay

protected long debugDelay
Delay between continuing a debug trace

Constructor Detail

TransformDebugger.DebuggerThread

public TransformDebugger.DebuggerThread(long debugDelay)
Creates a new thread for performing debug evaluations.

Parameters:
debugDelay - Delay
Method Detail

delay

public void delay()
Sleeps for the length of the debug delay.


evaluationError

public void evaluationError(IProgrammableDataGenerator source,
                            java.lang.Throwable t)
Notification that an error occurred during evaluation. This notification is made before any error recovery is attempted.

Specified by:
evaluationError in interface IEvaluationListener
Parameters:
source - Generator
t - Throwable

evaluationStart

public void evaluationStart(IProgrammableDataGenerator source)
Notification for the start of an evaluation. This notification is made before any locks are acquired.

Specified by:
evaluationStart in interface IEvaluationListener
Parameters:
source - Generator

evaluationStop

public void evaluationStop(IProgrammableDataGenerator source,
                           IDataElement result)
Notification for the end of an evaluation. This notification is made after the result has been computed and all locks have been released.

Specified by:
evaluationStop in interface IEvaluationListener
Parameters:
source - Generator
result - Evaluation result

getDebugDelay

public long getDebugDelay()
The delay before continuing a debug trace.


interruptDebug

public void interruptDebug()
Attempts to interrupt the debug delay only.


kill

public void kill()
Kill this thread at the next opportunity.


run

public void run()
Specified by:
run in interface java.lang.Runnable
Overrides:
run in class java.lang.Thread

setDebugDelay

public void setDebugDelay(long debugDelay)
Sets the delay before continuing a debug trace.

Parameters:
debugDelay - Delay

stopDebugging

protected void stopDebugging()
Terminates a debugging session.


updateDisplay

protected void updateDisplay(ITransform transform,
                             IDataElement element)
Updates the display after a debug event.

Parameters:
transform - Transform
element - Transform value