ActiveMQ & Camel - Como criar dependência nos caminhos de roteamento
-
28-09-2019 - |
Pergunta
Eu tenho um roteamento de mensagens para implementar, que tem rotas que variam de acordo com o conteúdo da mensagem. Alguns fios da rota dependem de outros.
Se, por exemplo, eu tenho data_a que tem task_a e task_b a serem executados nele. Enquanto o Data_B tem apenas Task_B a ser executado nele.
Aqui, cada tarefa tem uma fila servida pelos consumidores.
Se Task_A deve ser executado somente após o Task_B se o Task_B for solicitado nos dados, como configuro essas dependências?
Solução
Você pode usar várias rotas para ramificar o fluxo de trabalho, assim
from("queue:start").
choice().xpath("//foo")).to("queue:taskB").
otherwise().to("queue:taskA");
from("queue:taskB").process(new DoTaskB()).to("queue:taskA");
from("queue:taskA").process(new DoTaskA()).to("queue:done");
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow