|
||||||||||
| PREV PACKAGE NEXT PACKAGE | FRAMES NO FRAMES | |||||||||
See:
Description
| Interface Summary | |
|---|---|
| LutinLogListener | |
| Class Summary | |
|---|---|
| Log4JWrapper | Cette classe n'est utile que parce qu'on ne peut pas modifier le FQCN present
dans Log4JLogger. |
| LutinLog | Deprecated. on 20090327 this class seam to produce a frame on each log call (produce huge memory consumption) |
| LutinLogEvent | |
| LutinLogFactory | |
| LutinProgressEvent | |
| MonitorMapper | Helper to monitor LutinLog. |
| ProgressMonitorFrame | |
| UserLog | Classe permettant d'afficher facillement des messages a l'utilisateur. |
| Enum Summary | |
|---|---|
| LutinLogEvent.LogType | |
| LutinProgressEvent.ProgressType | |
| ProgressState | |
| UserLog.Level | |
Ce package permet de mettre en place facilement des logs dans les applications. Il se base sur commons-logging de cette fa�on toutes les applications existantes utilisant commons-logging sont compatible avec LutinLog.
LutinLog ajout les fonctionnalit�s suivantes:
java -Dorg.apache.commons.logging.LogFactory=org.nuiton.log.LutinLogFactoryensuite soit vous n'avez pas besoin des nouvelles fonctionnalit�s et vous pouvez utiliser commons-logging comme habituellement.
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
class Toto {
/** to use log facility, just put in your code: log.info(\"...\"); */
static private Log log = LogFactory.getLog(Toto.class);
public void Titi() {
if (log.isTraceEnabled()) {
log.trace("Titi called");
}
}
Ou si vous souhaitez utiliser les nouvelles fonction
import org.nuiton.log.LutinLog;
import org.nuiton.log.LutinLogFactory;
class Toto {
/** to use log facility, just put in your code: log.info(\"...\"); */
static private LutinLog log = LutinLogFactory.getLutinLog(Toto.class);
public void Titi() {
if (log.isTraceEnabled()) {
log.trace("Titi called");
}
// ... do something
log.setActivateProgressMonitorTime(1000);
log.user("task started");
log.setMin(0);
log.setMax(100);
log.start();
// ...
for (int i=0; i<100; i++) {
if (log.isAskStopTask()) {
break;
}
log.setValue(i);
//...
}
//...
log.end();
log.user("task finished");
}
Dans cette exemple si la t�che dur plus de 1s (1000 millisecondes) alors la
fen�tre de suivi de la t�che est montrer. Sur cette fen�tre l'utilisateur peut
demander l'arret de t�che, on v�rifie dont au d�but de chaque boucle que
l'utiilisateur n'a pas demand� l'arret de la t�che.
Il est bien sur possible d'utiliser ces propres composant pour afficher l'avancement d'une t�che, Il est bien sur possible de faire soit m�me les listener qui sont � l'�coute du LutinLog, mais il est souvent plus simple d'utiliser MonitorMapper. Il suffit de lui passer en argument les composants � mettre a jour.
Il faut bien faire attention de garder une variable accessible de MonitorMapper car sinon il ne se passera rien, cela est du au fait que les listeners de LutinLog sont tous encapsul� dans des WeakReference, pour �viter les fuites m�moire en ajoutant tout le temps de listener sans jamais les supprimer. Ici la suppression est automatique.
|
||||||||||
| PREV PACKAGE NEXT PACKAGE | FRAMES NO FRAMES | |||||||||