ciclo di vita MULE - come collegare nel processo di avvio
-
13-09-2019 - |
Domanda
Mi piacerebbe essere in grado di creare alcune directory dopo mulo è iniziato, ma prima che inizi qualsiasi altro servizio.
Ho iniziato a guardare in notifiche, ma non sono sicuro se questo è il posto giusto per farlo. Avrò bisogno l'accesso ai fagioli di primavera in modo che avrebbe dovuto essere dopo init primavera, ma prima di qualsiasi dei connettori e altri processi dare il via.
http://www.mulesource.org/display/MULE2USER/Mule + Server + Notifiche
Grazie.
Soluzione
Il ciclo di vita mulo ha diverse interfacce disponibili che si potrebbe usare per raggiungere questo obiettivo.
http: / /www.mulesource.org/docs/site/2.2.1/apidocs/org/mule/api/lifecycle/Startable.html
... / Initialisable.html
In sostanza, da quanto ho capito, se volete qualcosa che accada quando l'istanza mulo inizia si implementa avviabile. Se si vuole che accada qualcosa quando un componente mulo specifica viene inizializzato, allora si dovrebbe implementare initialisable.
Altri suggerimenti
Un modo veramente pulito di fare questo è quello di creare il proprio agente personalizzato implementando UMOAgent.
<!-- Enable Agents for Mule -->
<agents>
<!-- The MyAgent provides a convenient place to perform one off actions at startup/shutdown -->
<agent name="MyAgent" className="com.xxx.base.util.MyAgent" />
...
Gli agenti hanno un inizio e un metodo di arresto che viene chiamato a dorso di mulo, la classe implementazione può quindi aggiungere in qualsiasi codice che si desidera.
Vedi link per maggiori informazioni http://www.mulesoft.org/documentation/display/MULE2USER/Mule+ agenti