Un état Pass transmet directement son entrée à sa sortie sans effectuer de traitement. Utilisez les états Pass pour simuler votre flux lors de la conception de la structure globale, ou pour remodeler les données entre les états à l'aide de InputConstructor et OutputConstructor.
Cas d'utilisation
Simulation de la logique du flux : combinez les états Pass avec les états de contrôle pour esquisser et déboguer la structure de votre flux, puis remplacez-les par des états Task au fur et à mesure que vous développez chaque étape.
Remodelage des données entre les états : utilisez
InputConstructorpour injecter des valeurs statiques ouOutputConstructorpour restructurer les données afin que les états en aval reçoivent le format attendu.
Attributs
| Attribut | Type | Obligatoire | Description | Exemple |
|---|---|---|---|---|
| Name | string | Oui | Nom de l'état. | my state |
| Description | string | Non | Description de l'état. | describe it here |
| Type | string | Oui | Type de l'état. | Pass |
| Next | string | Non | État suivant à exécuter une fois celui-ci terminé. Non requis lorsque End est défini sur true. |
my next |
| End | bool | Non | Indique s'il faut mettre fin à la portée actuelle. | true |
| InputConstructor | map[string]any | Non | Construit une nouvelle entrée, en remplaçant entièrement l'entrée d'origine de l'état. Voir InputConstructor. | - |
| OutputConstructor | map[string]any | Non | Restructure la sortie de l'état avant de la transmettre à l'état suivant. Voir OutputConstructor. | - |
Exemples
Injection de données statiques
Ce flux définit un seul état Pass qui utilise InputConstructor pour injecter une valeur fixe. Étant donné que InputConstructor remplace entièrement l'entrée d'origine de l'état, l'état Pass ignore toutes les données entrantes et construit un nouvel objet.
Type: StateMachine
Name: my-wkfl
SpecVersion: v1
StartAt: Pass1
States:
- Type: Pass
Name: Pass1
End: true
InputConstructor:
FieldA: 123
Entrée (ignorée car InputConstructor la remplace) :
{
"requestId": "abc-123"
}
Sortie :
{
"FieldA": 123
}
L'état ignore l'entrée d'origine et renvoie un nouvel objet contenant uniquement FieldA défini sur 123.
Transmission des données sans modification
Un état Pass dépourvu de InputConstructor ou de OutputConstructor transmet son entrée telle quelle. Cette approche s'avère utile comme espace réservé lors de la conception de votre flux.
Type: StateMachine
Name: my-wkfl
SpecVersion: v1
StartAt: ProvideDefaults
States:
- Type: Pass
Name: ProvideDefaults
Next: ProcessOrder
- Type: Pass
Name: ProcessOrder
End: true
Entrée :
{
"orderId": "order-456",
"amount": 99.9
}
Sortie (inchangée) :
{
"orderId": "order-456",
"amount": 99.9
}
Les deux états transmettent les données telles quelles. Remplacez ProcessOrder par un état Task lorsque votre logique de traitement sera prête.
Rubriques connexes
Entrée et sortie -- Découvrez comment
InputConstructoretOutputConstructortransforment les données entre les états.