Activsoft.Workflow.Batch
Utilisation
Le batch permet d’effectuer les opérations suivantes :
- Exécution d’une opération seule
- Ecouter une queue de message RabbitMQ et exécuter les actions présentes
- Récupérer la liste des actions dans une table SQL et exécuter les actions
- Envoyer une opération dans une queue de message
Il peut donc être la base d’un service
Configuration
La configuration du batch demande surtout la mise en place de la section de configuration manager pour la configuration du moteur de workflow (voir ici).
Dans le cas d’une écoute ou d’un envoi sur une queue de message, il faut également ajouter la section queueInfo (NameValueCollection) avec les paramètres suivants :
- Host : localisation de la queue
- UserName et Password : authentification
- VirtualHost : nom de l’host virtuel RabbitMQ pour récupérer les messages.
Exécution
Exécution simple
Activsoft.Workflow.Batch -execution {nom du module}.{nom de l'exécution} {nom param1} {valeur param1} {nom param2} {valeur param2} ...
Ecoute en base de données
Activsoft.Workflow.Batch -bdd {nom de la section db} -tablename {nom de la table} -descriptionname {nom de la colonne de descripion} {stop|continue}
L’application récupère les demandes dans la table {nom de la table} :
- ID : SERIAL
- STATUT : 0 ou NULL en attente de lancement, 1 en cours, 2 fini, -1 erreur
- ERREUR : message et stack trace de l’erreur
- {descriptionname} : JSON de description de la commande
La DESCRIPTION est au format suivant :
{
"executionName": "{nom du module}.{nom de l'exécution}",
"parameters": {
"{nom du paramètre}": "{valeur du paramètre}", ...
}
}
Si le paramètre est stop, l’exécution s’arrête après une lecture de la base, sinon le batch continue
Ecoute d’une queue de message
Activsoft.Workflow.Batch -listento {stop|continue}
Si le paramètre est stop, l’exécution s’arrête après une lecture de la queue, sinon le batch continue
Envoi sur la queue de message
Activsoft.Workflow.Batch -sendto {nom du module}.{nom de l'exécution} {nom param1} {valeur param1} {nom param2} {valeur param2} ...