Je suis très nouveau à Camel, et ai lutté pour comprendre comment utiliser camel dans un scénario spécifique. Dans ce scénario, un agent (basé sur Java) génère des actions de temps en temps. J'ai besoin d'un consommateur axé sur les événements pour être averti de ces événements. Ces événements seront acheminés vers un producteur de fichiers (pour le moment).comment implémenter un consommateur d'événement-disque dans camel
Dans le livre camel, l'exemple est pour un consommateur interrogé. Je n'ai pas trouvé de solution générique pour un consommateur axé sur les événements. je suis tombé sur une mise en œuvre similaire pour JMX:
public class JMXConsumer extends DefaultConsumer implements NotificationListener {
JMXEndpoint jmxEndpoint;
public JMXConsumer(JMXEndpoint endpoint, Processor processor) {
super(endpoint, processor);
this.jmxEndpoint = endpoint;
}
public void handleNotification(Notification notification, Object handback) {
try {
getProcessor().process(jmxEndpoint.createExchange(notification));
} catch (Throwable e) {
handleException(e);
}
}
}
Ici, le handleNotification appelé chaque fois une notification JMX arrive.
Je crois que je dois faire quelque chose de similaire pour que mon client soit notifié chaque fois que l'agent génère une action. Cependant, la méthode handleNotification ci-dessus est spécifique à JMX. La page Web indique: «Lors de l'implémentation de votre propre consommateur piloté par les événements, vous devez identifier une méthode d'écouteur d'événement similaire à implémenter dans votre client personnalisé.
Je veux savoir: Comment puis-je identifier un écouteur d'événement analogue, afin que mon client soit averti lorsque mon agent a une action.
Tout conseil/lien vers une page Web est très apprécié.
Merci beaucoup pour votre réponse. Je me demandais surtout comment envoyer des événements. Merci d'avoir expliqué cela aussi. Je vais essayer ça bientôt. (Je suis novice en matière de JEE, donc ça pourrait prendre du temps pour comprendre tout ça) – sura
Bon. Mise à jour de la réponse à propos des différents transports, à savoir Seda et ActiveMQ incorporés. –