Vérifier l'existence d'un chemin
Cet exemple vous montre comment créer une tâche qui vous informe si un chemin (vers un fichier ou un répertoire) existe sur le système d'exploitation. Afin de parvenir à cet objectif, vous devrez utiliser une combinaison de fonctions intégrées et de fonctions d'expression. La tâche sera définie en tant que service Web, de manière à ce que vous puissiez le déclencher à la demande, en accédant à une URL depuis le navigateur. la tâche prendra le chemin en tant qu'argument et retournera un string qui informe si le chemin fourni en tant qu'un argument existe sur le service d'exploitation sur lequel FlowForce Server est exécuté. La tâche prendra le chemin en tant qu’argument et retournera un string qui informe si le chemin fourni en tant qu’argument existe sur le système d’exploitation sur lequel FlowForce Server est exécuté.
Prérequis
•Licences requises : FlowForce Server
•Les services FlowForce Web Server et FlowForce Server doivent écouter adresse réseau et le port configurés.
•Vous détenez un compte d'utilisateur FlowForce Server contenant des permissions vers un des conteneurs (par défaut, le conteneur /public utilisé dans cet exemple est accessible à tout utilisateur authentifié).
Créer la tâche
1.Se connecter sur FlowForce Server et se rendre dans un conteneur pour lequel vous possédez une permission de créer de nouvelles tâches. Pour rester cohérent avec les autres exemples, ce tutoriel utiliser le conteneur /public/Examples. Si vous n’avez pas encore ce conteneur, le créer en utilisant la commande Créer | Créer Conteneur.
2.Dans le conteneur /public/Examples, cliquer sur Créer, puis sélectionner Créer tâche.
3.Ajouter un nom de tâche ("CheckPath", dans cet exemple) et, en option, une description de la tâche.
4.Sous Paramètres d'entrée de tâche, cliquer sur et ajouter le paramètre path, comme indiqué ci-dessous.
5.Ajouter une nouvelle étape d'exécution qui appelle la fonction /system/shell/commandline , et saisir la commande shell qui vérifie l'existence du fichier. Assurez-vous de déclarer le résultat de cette étape, comme indiqué ci-dessous (dans cet exemple, nous l'appelons output).
Sur Windows, la commande shell sort "1" lorsque le chemin existe et "0" lorsqu'il n'existe pas. Si FlowForce Server est exécuté sur un système Unix, ajuster la commande en conséquence. Veuillez noter que la commande intègre l'expression FlowForce {path}. Cette expression référence les paramètres d'entrée définis dans l'étape précédente.
6.Sous "Étapes d'exécution", cliquer sur la touche , puis sélectionner nouvelle étape Choisir. Ensuite, saisir trim(content(stdout(output))) == '1' en tant qu'expression de condition. Cette expression consiste en trois fonctions imbriquées : stdout, content et trim. Tout d'abord, la fonction stdout obtient la sortie standard du résultat retourné par l'étape suivante. Ensuite, la fonction content convertit la sortie standard en string. Enfin, la fonction trim supprime tout espace de début ou de fin, les retours de chariot, ou les sauts de ligne de la sortie standard. Le résultat est ensuite comparé à "1" à l'aide de l'opérateur d'égalité. Si les deux valeurs sont égales, le chemin existe. Sinon, le chemin n'existe pas.
7.Sous la clause When, ajouter une étape d'exécution comme indiqué ci-dessous. Cette étape d'exécution appelle la fonction /system/compute-string pour créer la valeur de string qui doit être retournée lorsque le chemin existe. Veuillez noter que la valeur intègre l'expression FlowForce {path}. Cette expression référence les paramètres d'entrée définis dans une étape précédente.
8.Sous la clause Otherwise, ajouter une étape d'exécution comme indiqué ci-dessous. Cette étape d'exécution appelle la fonction /system/compute-string pour créer la valeur de string qui doit être retournée lorsque le chemin n'existe pas. Veuillez noter que la valeur intègre l'expression FlowForce {path}. Cette expression référence le paramètre d'entrée défini dans une étape précédente.
9.Sous Résultat d'exécution, déclarer le type de retour en tant que string.
10.Sous "Service", cliquer pour sélectionner la case à cocher Rendre cette tâche disponible via HTTP et saisir CheckPathService en guise de nom du service. Pour plus d’informations, voir Exposer des tâches en tant que Services Web.
11.Sous "Identifiants", choisissez un enregistrement d’identifiant existant ou spécifiez un identifiant local. Pour plus d'informations, voir Identifiants.
12.Cliquez sur Enregistrer.
Exécuter la tâche
Pour exécuter la tâche, suivez l’une des étapes suivantes :
•Se rendre sur Accueil, puis cliquer sur Afficher tous les déclencheurs et les services actifs. Ensuite, cliquer sur l’URL de la tâche affichée dans la colonne "Info ».
•Saisir http://127.0.0.1:4646/service/CheckPathService dans la barre d'adresse du navigateur. Noter que cette URL fonctionne uniquement si le service FlowForce Server écoute l’adresse d’hôte par défaut et le nom de port. Si vous avez défini d’autres paramètres d’hôte et de port dans la Page de Configuration, modifier l’adresse.
•Si vous définissez Ile champ optionnel Nom d’hôte du FlowForce Server depuis la Page de configuration, vous pouvez exécuter l'appel de service Web directement depuis la page de configuration de la tâche, en cliquant sur la touche adjacente à la case à cocher Rendre cette tâche disponible via HTTP. Sinon la touche ne sera pas affichée.
Lorsque vous êtes invité à accéder au service Web, fournissez les mêmes identifiants que vous utilisez pour vous connecter à FlowForce Server.
Vous ne fournirez vos identifiants d’utilisateur FlowForce Server pour l’authentification HTTP qu’à des fins de test. Pour la production, il est recommandé de créer un nouvel utilisateur FlowForce, d’accorder la permission Service - Utiliser à cet utilisateur dans le conteneur dans lequel la tâche est située, puis d’accéder au service Web avec le compte d’utilisateur correspondant. Pour désactiver l'authentification HTTP et rendre le service Web public, accorder la permission Service - Utiliser à l’utilisateur Anonymous, voir Comment fonctionnent les permissions. |
Puisque cette tâche a des arguments, vous serez invité à les fournir lorsque vous accédez au service Web dans le navigateur.
Si la tâche est exécutée avec succès, le navigateur affiche la sortie de la tâche, par exemple :
Path C:\ exists.
Si la tâche échoue, le navigateur affiche un message "Exécution de service a échoué". Dans ce cas, contrôler le journal de la tâche dans FlowForce Server pour identifier l'erreur, voir Consulter le journal de tâche.