2010-04-19 3 views
2

J'ai un routage de message à implémenter, qui a des routes qui varient en fonction du contenu du message. Certains brins de la route dépendent des autres.ActiveMQ & Camel - Comment créer une dépendance dans les chemins de routage

Si par exemple j'ai Data_A qui a Task_A et Task_B pour y être exécuté. Attendu que Data_B n'a que la tâche TaskB à effectuer.

Ici, chaque tâche a une file d'attente desservie par les consommateurs.

Si Task_A doit être exécuté uniquement après Task_B si Task_B est demandé sur les données, comment puis-je configurer ces dépendances?

Répondre

4

Vous pouvez utiliser plusieurs routes pour ramifier le flux de travail, comme celui-ci

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"); 
Questions connexes