sjrd.swing
Class SafeExceptSwingWorker<T,V,E extends Exception>

java.lang.Object
  extended by javax.swing.SwingWorker<T,V>
      extended by sjrd.swing.SafeExceptSwingWorker<T,V,E>
Type Parameters:
T -
V -
E - Type d'exception pouvant survenir dans doInBackground()
All Implemented Interfaces:
Runnable, Future<T>, RunnableFuture<T>
Direct Known Subclasses:
NetworkOperationWorker, NoExceptSwingWorker

public abstract class SafeExceptSwingWorker<T,V,E extends Exception>
extends SwingWorker<T,V>

Extension de SwingWorker avec vérification des exceptions générées

Author:
sjrd

Nested Class Summary
 
Nested classes/interfaces inherited from class javax.swing.SwingWorker
SwingWorker.StateValue
 
Constructor Summary
SafeExceptSwingWorker()
           
 
Method Summary
protected abstract  T doInBackground()
          
protected  T getResult()
          Récupère le résultat de l'exécution À la différence de get(), cette méthode déclenche, en cas d'exception survenue dans doInBackground(), cette exception précise et non son encapsulation dans une ExecutionException.
protected  T getResultDef(T interruptedDefault)
          Récupère le résultat de l'exécution
protected  T getResultNoInterrupt()
          Récupère le résultat de l'exécution, sans tenir compte des interruptions Toute exception de type InterruptedException se retrouve encapsulée dans une exception de type RuntimeException.
 
Methods inherited from class javax.swing.SwingWorker
addPropertyChangeListener, cancel, done, execute, firePropertyChange, get, get, getProgress, getPropertyChangeSupport, getState, isCancelled, isDone, process, publish, removePropertyChangeListener, run, setProgress
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

SafeExceptSwingWorker

public SafeExceptSwingWorker()
Method Detail

doInBackground

protected abstract T doInBackground()
                             throws E extends Exception

Specified by:
doInBackground in class SwingWorker<T,V>
Throws:
E extends Exception

getResult

protected T getResult()
               throws E extends Exception,
                      InterruptedException
Récupère le résultat de l'exécution

À la différence de get(), cette méthode déclenche, en cas d'exception survenue dans doInBackground(), cette exception précise et non son encapsulation dans une ExecutionException.

Returns:
Résultat de l'exécution
Throws:
E - Exception durant l'exécution de doInBackground()
InterruptedException
E extends Exception

getResultDef

protected T getResultDef(T interruptedDefault)
                  throws E extends Exception
Récupère le résultat de l'exécution

Parameters:
interruptedDefault - Résultat par défaut si interruption
Returns:
Résultat de l'exécution
Throws:
E - Exception durant l'exécution de doInBackground()
E extends Exception

getResultNoInterrupt

protected T getResultNoInterrupt()
                          throws E extends Exception
Récupère le résultat de l'exécution, sans tenir compte des interruptions

Toute exception de type InterruptedException se retrouve encapsulée dans une exception de type RuntimeException.

Returns:
Résultat de l'exécution
Throws:
E - Exception durant l'exécution de doInBackground()
E extends Exception