FTP (Gestionnaire de message)

De Wiki1000
Version du 14 juin 2013 à 14:00 par Syfre (discuter | contributions)
(diff) ← Version précédente | Voir la version courante (diff) | Version suivante → (diff)

Ce type de gestionnaire permet d'utiliser un serveur de fichier FTP comme une file d'attente.

  • Consommer un message revient à lire (GET) les fichiers présents dans un répertoire du serveur.
  • Produire un message revient à envoyer un fichier (PUT) dans un répertoire du serveur.

Paramétrage de la file d'attente

Propriété Valeur
QueueConnectionInfos URL de définition du service FTP (voir plus bas)
QueueTopic Nom de répertoire par défaut si non renseigné dans QueueConnectionInfos.

La chaine QueueConnectionInfos peut utiliser les formats suivant :

ftp://user:password@server
ftp://user:password@server/directory
ftp://user:password@server/directory?parameters

Paramètres de l'url

Ces paramètres peuvent être ajoutés à l'URL définissant la file d'attente pour paramétrer le comportement de la file.

Nom Sens Usage Défaut
user cnx Utilisateur
password cnx Mot de passe
sndDirectory production Nom du paramètre du message contenant le répertoire destination du fichier sur le serveur Directory,Topic
sndFileName production Nom du paramètre du message contenant le nom du fichier destination sur le serveur FileName,AttachementName
sndContent production Nom du paramètre du message contenant le contenu du fichier Content,Subject

Messages produits

Réaliser une opération InQueue sur une file de type FTP revient à écrire un fichier sur le serveur FTP.

  • Répertoire destination
Le répertoire destination est déterminé par paramètre Directory du message. Si ce nom n'est pas défini le sujet de la file d'attente est utilisé.
  • Nom du fichier
Le nom du fichier sur le serveur est déterminé par paramètre Filename. Si le nom du fichier n'est pas défini un nom unique est utilisé par tirage d'un GUID. Dans ce cas le nom tiré est ajouté aux paramètres du message.
  • Contenu
Si le message (TdbmQueueMessage) contient un contenu binaire (BinaryContent) celui-ci est envoyé sur le serveur. Si le message ne contient pas de contenu binaire le contenu du fichier est défini par le paramètre Content.
Tip-20px.png Tip : Les nom des paramètres peuvent être substitués par le paramétrage de l'url, voir ci-dessus

Exemple :

var msg:TdbmQueueMessage; idx:Integer;
begin
  // Store a file on the FTP server defined by QUEUEFTP under the topic of the queue
  // The name of the file will be a GUID
  msg := TdbmQueueMessage.Create;
  msg.QueueName := 'QUEUEFTP';
  msg.BinaryContent.LoadFromFile('c:\image.jpg');
  msg.Post;
 
  // Store a file on the FTP server defined by QUEUEFTP under the topic "ThisTopic"
  // The name of the file will be "ThisFileName"
  msg := TdbmQueueMessage.Create;
  msg.QueueName := 'QUEUEFTP';
  msg.AddParameter('Directory','ThisTopic');
  msg.AddParameter('FileName','ThisFileName');
  msg.BinaryContent.LoadFromFile('c:\image.jpg');
  msg.Post;
end;

Messages consommés

Réaliser une opération DeQueue sur une file de type FTP revient à lire un répertoire du serveur FTP.


Voir aussi:





Whos here now:   Members 0   Guests 0   Bots & Crawlers 1
 
Outils personnels