Modèle
Un WorkflowModel
représente une définition (un modèle) d’un workflow. Il est composé de WorkflowNodes
et de WorkflowTransitions
. Les transitions se connectent aux nœuds et définissent le flux. Le modèle dispose toujours d’un nœud de début et d’un nœud de fin.
Modèle d’exécution
Les modèles de workflow bénéficient du contrôle de versions. Lorsque vous exécutez une instance de workflow, elle utilise et conserve le modèle d’exécution du workflow tel qu’il est disponible au moment du démarrage du workflow.
Un modèle d’exécution est généré lorsque la Synchronisation est déclenchée dans l’éditeur de modèles de workflow.
Les modifications apportées au modèle de workflow ou aux modèles d’exécution générés, ou les deux, après le démarrage de l’instance spécifique, ne sont pas appliquées à cette instance.
Étape
Chaque étape exécute une tâche discrète. Il existe différents types d’étapes de workflow :
- Participant (utilisateur/groupe) : ces étapes génèrent un élément de travail et l’attribuent à un utilisateur ou une utilisatrice ou à un groupe. Un utilisateur doit terminer l’élément de travail pour progresser dans le workflow.
- Processus (script, appel de méthode Java™) : ces étapes sont exécutées automatiquement par le système. Un script ECMA ou une classe Java™ implémente l’étape. Les services peuvent être développés pour écouter les événements de workflow spéciaux et exécuter des tâches en fonction de la logique commerciale.
- Conteneur (sous-workflow) : ce type d’étape lance un autre modèle de workflow.
- Division/jointure OU : utilisez la logique pour décider quelle étape exécuter ensuite dans le workflow.
- Division/jointure ET : permet l’exécution simultanée de plusieurs étapes.
Toutes les étapes partagent les propriétés suivantes : alertes Autoadvance
et Timeout
(scriptable).
Transition
WorkflowTransition
représente une transition entre deux WorkflowNodes
d’un WorkflowModel
.
- Elle définit le lien entre deux étapes consécutives.
- Il est possible d’appliquer des règles.
Élément de travail
Un WorkItem
est l’unité qui est transmise par l’intermédiaire d’une instance de Workflow
d’un WorkflowModel
. Il contient les WorkflowData
sur lesquelles agit l’instance, ainsi qu’une référence au WorkflowNode
qui décrit l’étape de workflow sous-jacente.
- Il est utilisé pour identifier la tâche et placé dans la boîte de réception correspondante.
- Une instance de workflow peut contenir un ou plusieurs
WorkItems
en même temps (selon le modèle de workflow). - Le
WorkItem
référence l’instance de workflow. - Dans le référentiel, le
WorkItem
est stocké sous l’instance de workflow.
Payload
Fait référence à la ressource qui doit être avancée par le biais d’un workflow.
L’implémentation de la payload fait référence une ressource dans le référentiel (par chemin, UUID ou URL) ou par un objet Java™ sérialisé. Le référencement d’une ressource dans le référentiel est flexible et, avec Sling, productif. Par exemple, le nœud référencé peut être rendu sous la forme d’un formulaire.
Cycle de vie
Il est créé lors du démarrage d’un nouveau workflow (en choisissant le modèle de workflow correspondant et en définissant la payload) et se termine lorsque le nœud de fin est traité.
Les actions suivantes sont possibles sur une instance de workflow :
- Terminer
- Suspendre
- Reprendre
- Redémarrer
Les instances finalisées et terminées sont archivées.
Boîte de réception
Chaque compte d’utilisateur possède sa propre boîte de réception de workflow dans laquelle les WorkItems
attribués sont accessibles.
Les WorkItems
sont attribués au compte d’utilisateur directement ou au groupe auquel ils appartiennent.
Types de workflow
Il existe différents types de workflows, comme indiqué dans la console Modèles de workflows :
-
Par défaut
Ces types sont des workflows prêts à l’emploi inclus dans une instance standard d’AEM.
-
Workflows personnalisés (aucun indicateur dans la console)
Ces workflows ont été créés à partir de zéro ou à partir de workflows prêts à l’emploi auxquels ont été ajoutées des personnalisations.
-
Hérité
Il s’agit des workflows créés dans une version antérieure d’AEM. Ces workflows peuvent être conservés pendant une mise à niveau ou exportés sous la forme d’un package de workflow à partir de la version précédente, puis importés dans la nouvelle version.
Workflows transitoires
Les workflows standard enregistrent les informations d’exécution (historique) lors de leur exécution. Vous pouvez également définir un modèle de workflow comme transitoire pour éviter la persistance d’un tel historique. Ce workflow est utilisé pour l’optimisation des performances, car il permet de gagner du temps et des ressources lors de la conservation des informations.
Les workflows transitoires peuvent être utilisés pour tous les workflows qui :
- sont exécutées fréquemment ;
- n’ont pas besoin de l’historique des workflows.
Les workflows transitoires ont été introduits pour charger de nombreuses ressources, où les informations sur les ressources sont importantes, mais pas l’historique d’exécution des workflows.
- Le type de payload (vidéo, par exemple) nécessite des étapes externes pour le traitement ; dans ce cas, l’historique d’exécution est nécessaire pour la confirmation du statut.
- Le workflow entre dans une Division ET. Dans ce cas, l’historique d’exécution est nécessaire pour la confirmation du statut.
- Lorsque le workflow transitoire entre dans une étape de participant, il change de mode, au moment de l’exécution, et passe à non transitoire. Lorsque la tâche est transmise à une personne, l’historique doit être conservé.
goto
. Cela va à l’encontre de l’objectif consistant à rendre le workflow transitoire et génère une erreur dans le fichier journal.