Daemon
Définition
Un daemon est un processus qui s'exécute à intervalles réguliers. Lutece dispose d'une interface centralisée de gestion des daemons. Chaque daemon a sa propre fréquence d'exécution. Par ailleurs, il doit fournir un compte-rendu du traitement réalisé. Celui-ci est ainsi consultable dans l'interface de gestion des daemons.
Création
Implémentation
Un daemon doit étendre la classe Daemon de Lutece. La seule méthode à implémenter est la methode run à l’intérieur de laquelle il faut appeler la méthode setLastRunLogs pour lui passer le compte rendu d'exécution.
import fr.paris.lutece.portal.service.daemon.Daemon; /** * My Daemon */ public class MyDaemon extends Daemon { /** * {@inheritDoc} */ @Override public void run( ) { setLastRunLogs( MyProcess( ) ); } }
Déclaration
Le Daemon doit être déclaré à 2 endroits :
Déclaration dans le fichier XML du plugin
Cette déclaration définit la classe Java du daemon ainsi que le nom et la description du Daemon par ses clés i18n (pour gérer la langue de l'utilisateur qui consulte l'interface centralisée).
<!-- Daemons --> <daemons> <daemon> <daemon-id>myDaemon</daemon-id> <daemon-name>myplugin.daemon.myDaemon.name</daemon-name> <daemon-description>myplugin.daemon.myDaemon.description</daemon-description> <daemon-class>fr.paris.lutece.plugins.myplugin.service.MyDaemon</daemon-class> </daemon> ... </daemons>
Déclaration dans le fichier properties du plugin
Cette déclaration concerne les paramètres de lancement du daemon.
daemon.myDaemon.interval=86400 daemon.myDaemon.onstartup=1
IMPORTANT A partir de Lutece v4 :