net.eduvax.util
public abstract class AObservableRunnable extends java.lang.Object implements java.lang.Runnable, Observable<AObservableRunnable>
Let an obser to be notified on runnable state change from READY, RUNNING, ENDED or EXCEPTION.
warning: subclasses must implement oRun() method instead of run() as for regular runnables. This class provide a default run() implatation to manage state transitions and observers notifications.
Modifier and Type | Class and Description |
---|---|
static class |
AObservableRunnable.EState
Available runnable states identifications.
|
Modifier and Type | Field and Description |
---|---|
private ErrorHandler |
_errHandler
error handler
|
private java.lang.Exception |
_exception
uncatch exception.
|
private ObserverManager<AObservableRunnable> |
_obsManager
Observers manager.
|
private AObservableRunnable.EState |
_state
current state.
|
Constructor and Description |
---|
AObservableRunnable()
Create new observable runnable.
|
Modifier and Type | Method and Description |
---|---|
protected ErrorHandler |
getErrHandler() |
java.lang.Exception |
getException()
Uncatched exception.
|
ObserverManager<AObservableRunnable> |
getObserverManager()
Get this observable observer registration manager.
|
AObservableRunnable.EState |
getState()
Get current state.
|
abstract void |
oRun()
Observable runnable entry point.
|
void |
run()
Runnable implementation.
|
void |
setErrorHandler(ErrorHandler eh)
Change error handler.
|
private java.lang.Exception _exception
private AObservableRunnable.EState _state
private ObserverManager<AObservableRunnable> _obsManager
private ErrorHandler _errHandler
public AObservableRunnable()
public abstract void oRun()
public void run()
run
in interface java.lang.Runnable
public java.lang.Exception getException()
public AObservableRunnable.EState getState()
public ObserverManager<AObservableRunnable> getObserverManager()
Observable
getObserverManager
in interface Observable<AObservableRunnable>
protected ErrorHandler getErrHandler()
public void setErrorHandler(ErrorHandler eh)
eh
- new error handler.