ciclo de vida MULE - como ligar para processo de inicialização
-
13-09-2019 - |
Pergunta
Eu gostaria de ser capaz de criar alguns diretórios após Mule foi iniciado, mas antes de começar quaisquer outros serviços.
Eu comecei a olhar para notificações, mas não tenho certeza se esse é o lugar certo para fazê-lo. I terá acesso aos grãos de primavera por isso teria que ser após o init primavera, mas antes de qualquer um dos conectores e outros processos pontapé de saída.
http://www.mulesource.org/display/MULE2USER/Mule + Servidor + Notificações
Graças.
Solução
O ciclo de vida mula tem várias interfaces disponíveis que você pode usar para fazer isso.
http: / /www.mulesource.org/docs/site/2.2.1/apidocs/org/mule/api/lifecycle/Startable.html
... / Initialisable.html
Essencialmente, pelo que eu entendo, se você quer algo acontecer quando sua instância mula começa você poderia implementar inicializável. Se você quer algo acontecer quando um componente específico mula é inicializado, então você poderia implementar initialisable.
Outras dicas
Uma maneira muito legal de fazer isso é criar seu próprio agente personalizado através da implementação de 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" />
...
Os agentes têm um método Stop início e que é chamado de mula, sua classe de implementação pode então adicionar em qualquer código que você deseja.
Veja o link para mais informações http://www.mulesoft.org/documentation/display/MULE2USER/Mule+ agentes