private class SequenceErrorFinalizer.ErrorDistributor extends Thread
ErrorListener.errorOccured(stella.ErrorEvent).
This class simply updates the sequencer's
steps according to the sequence found in the constructor file and
according to the method stated.Thread.State, Thread.UncaughtExceptionHandler| Modifier and Type | Field and Description |
|---|---|
private String |
method
The method of error handling.
|
private URL |
newseq
Only stored for debuggin reference.
|
private Sequencing<SequenceStep> |
sequencer
The sequencer whose steps are to be changed.
|
private SequenceList |
update
The new dom sequence.
|
private boolean |
valid
True, if new sequence file could be parsed in a DOMSequence.
|
MAX_PRIORITY, MIN_PRIORITY, NORM_PRIORITY| Constructor and Description |
|---|
ErrorDistributor(URL seq,
String how,
Sequencing<SequenceStep> oldstep)
Constructs a new error distributor.
|
| Modifier and Type | Method and Description |
|---|---|
boolean |
isValid()
Returns true if the alternate
DOMSequence is valid. |
void |
run()
Updates the sequencer's steps with the new sequence.
|
activeCount, checkAccess, clone, 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, yieldprivate final String method
private final Sequencing<SequenceStep> sequencer
private SequenceList update
private boolean valid
private final URL newseq
public ErrorDistributor(URL seq, String how, Sequencing<SequenceStep> oldstep)
public boolean isValid()
DOMSequence is valid.
Only then the error dstributor should be started.public void run()
XMLSequencer objects. The
correct type is checked already at the sequncer registering stage.
To allow the error finalizer to determine the finalizing state
of the finalizer, the distributor joins on the sequencer thread in
case of SequenceErrorFinalizer.ABORT errors.