Metaphora devant réaliser le transport de fichiers d'une machine vers une autre, chacune exécutant l'application Metaphora, nous avons choisi de sélectionner les fichiers à déplacer au moyen de la détection de fichiers dans un répertoire bien défini.
Pour cela, nous avons recours au composant de connexion JBI servicemix-file qui offre une intégration avec le système de fichiers.
Nous déployons vers ce composant une unité de service (SU) lui demandant de scruter le répertoire Metaphora/out à intervalle de temps donné : lorsqu'un fichier est détecté dans ce répertoire, un message d'échange JBI est créé et transmis, via le bus, à un service cible.
Le fichier xbean.xml repris ci-dessous, et faisant partie de l'archive SU, configure notre service de scrutation de répertoire ; remarquez que le nom du répertoire à surveiller est défini par l'attribut file de l'élément poller, tandis que le nom du service cible (qui recevra le message JBI) est stipulé par l'attribut targetService.
N'ayant pas défini l'attribut period, la valeur par défaut pour l'intervalle de temps est de 5 secondes
<file:poller service="mp:poller" endpoint="poller" targetService="mp:serviceExpediteur" file="file:Metaphora/out" />
</beans>
Nous avons ainsi couvert les points 1 et 2 de l'acheminement d'un fichier au travers de Metaphora.
