

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

# AWS Flow Framework pour Java Reference
<a name="reference"></a>

**Topics**
+ [AWS Flow Framework pour les annotations Java](annotations.md)
+ [AWS Flow Framework pour les exceptions Java](errorhandling.exceptions.md)
+ [AWS Flow Framework pour les packages Java](awsflow.packages.md)

# AWS Flow Framework pour les annotations Java
<a name="annotations"></a>

**Topics**
+ [@Activités](#annotations-activities)
+ [@Activité](#annotations-activity)
+ [@ActivityRegistrationOptions](#annotations-activityregistration)
+ [@Asynchrone](#annotations-asynchronous)
+ [@Execute](#annotations-execute)
+ [@ExponentialRetry](#annotations-exponentialretry)
+ [@GetState](#annotations-getstate)
+ [@ManualActivityCompletion](#annotations-manualactivitycompletion)
+ [@Signal](#annotations-signal)
+ [@SkipRegistration](#annotations-skipregistration)
+ [@Wait et @ NoWait](#annotations-waitnowait)
+ [@Flux de travail](#annotations-workflow)
+ [@WorkflowRegistrationOptions](#annotations-workflowregistrationoptions)

## @Activités
<a name="annotations-activities"></a>

Cette annotation peut être utilisée dans une interface pour déclarer un ensemble de types d'activités. Chaque méthode de l'interface comportant cette annotation représente un type d'activité. Une interface ne peut pas avoir à la fois des annotations `@Workflow` et `@Activities`.

Les paramètres suivants peuvent être spécifiés sur cette annotation : 

`activityNamePrefix`  
Spécifie le préfixe du nom des types d'activité déclarés dans l'interface. S'il est défini sur une chaîne vide (valeur par défaut), le nom de l'interface suivi d'un point (.) est utilisé comme préfixe.

`version`  
Spécifie la version par défaut des types d'activité déclarés dans l'interface. La valeur par défaut est `1.0`.

`dataConverter`  
Spécifie le type de serializing/deserializing données `DataConverter` à utiliser lors de la création de tâches de ce type d'activité et ses résultats. Défini sur `NullDataConverter` par défaut, ce qui indique que `JsonDataConverter` doit être utilisé.

## @Activité
<a name="annotations-activity"></a>

Cette annotation peut être utilisée sur des méthodes au sein d'une interface annotée avec `@Activities`.

Les paramètres suivants peuvent être spécifiés sur cette annotation :

`name`  
Spécifie le nom du type d'activité. La valeur par défaut est une chaîne vide, qui indique que le préfixe par défaut et le nom de la méthode d'activité doivent être utilisés pour déterminer le nom du type d'activité (au format \$1\$1*préfixe*\$1\$1\$1*nom*\$1). Notez que lorsque vous spécifiez un nom dans une annotation `@Activity`, l'infrastructure ne lui ajoutera pas automatiquement un préfixe. Vous êtes libre d'utiliser votre propre schéma d'attribution de noms.

`version`  
Spécifie la version du type d'activité. Remplace la version par défaut spécifiée dans l'annotation `@Activities` sur l'interface qui la contient. La valeur par défaut est une chaîne vide.

## @ActivityRegistrationOptions
<a name="annotations-activityregistration"></a>

Spécifie les options d'enregistrement d'un type d'activité. Cette annotation peut être utilisée dans une interface annotée avec `@Activities` ou les méthodes qu'elle contient. Si elle est spécifiée aux deux endroits, l'annotation utilisée sur la méthode prend effet.

Les paramètres suivants peuvent être spécifiés sur cette annotation :

`defaultTasklist`  
Spécifie la liste de tâches par défaut à enregistrer auprès d'Amazon SWF pour ce type d'activité. Cette valeur par défaut peut être remplacée lors de l'appel de la méthode d'activité sur le client généré à l'aide du paramètre `ActivitySchedulingOptions`. Définie sur `USE_WORKER_TASK_LIST` par défaut. Il s'agit d'une valeur spéciale qui indique que la liste de tâches utilisée par l'exécuteur, qui effectue l'enregistrement, doit être utilisée.

`defaultTaskScheduleToStartTimeoutSeconds`  
Spécifie le defaultTaskSchedule ToStartTimeout fichier enregistré auprès d'Amazon SWF pour ce type d'activité. Il s'agit du temps d'attente maximum autorisé pour une tâche de ce type d'activité avant qu'elle soit affectée à un exécuteur. Consultez le manuel *Amazon Simple Workflow Service API Reference* pour plus de détails.

`defaultTaskHeartbeatTimeoutSeconds`  
Spécifie le `defaultTaskHeartbeatTimeout` fichier enregistré auprès d'Amazon SWF pour ce type d'activité. Les exécuteurs doivent indiquer les pulsations pendant cette durée, faute de quoi la tâche sera interrompue. Défini sur -1 par défaut, qui est une valeur spéciale qui indique que ce délai d'attente doit être désactivé. Consultez le manuel *Amazon Simple Workflow Service API Reference* pour plus de détails.

`defaultTaskStartToCloseTimeoutSeconds`  
Spécifie le defaultTaskStart ToCloseTimeout fichier enregistré auprès d'Amazon SWF pour ce type d'activité. Ce délai d'attente détermine le temps maximum de traitement d'une tâche d'activité de ce type par un exécuteur. Consultez le manuel *Amazon Simple Workflow Service API Reference* pour plus de détails.

`defaultTaskScheduleToCloseTimeoutSeconds`  
Spécifie le `defaultScheduleToCloseTimeout` fichier enregistré auprès d'Amazon SWF pour ce type d'activité. Ce délai détermine la durée totale pendant laquelle la tâche peut rester ouverte. Défini sur -1 par défaut, qui est une valeur spéciale qui indique que ce délai d'attente doit être désactivé. Consultez le manuel *Amazon Simple Workflow Service API Reference* pour plus de détails.

## @Asynchrone
<a name="annotations-asynchronous"></a>

Lorsqu'elle est utilisée sur une méthode dans la logique de coordination du flux de travail, indique que la méthode doit être exécutée de manière asynchrone. Un appel à la méthode renverra immédiatement une valeur, mais l'exécution réelle se fera de manière asynchrone lorsque tous les paramètres Promise<> transmis aux méthodes seront prêts. Les méthodes annotées avec @Asynchronous doivent avoir le type de retour Promise<> ou être vides. 

`daemon`  
Indique si la tâche créée pour la méthode asynchrone doit être une tâche démon. `False` par défaut.

## @Execute
<a name="annotations-execute"></a>

En cas d'utilisation sur une méthode dans une interface annotée avec l'annotation `@Workflow`, identifie le point d'entrée du flux de travail.

**Important**  
Une seule méthode de l'interface peut être décorée avec `@Execute`.

Les paramètres suivants peuvent être spécifiés sur cette annotation :

`name`  
Spécifie le nom du type de flux de travail. S'il n'est pas défini, le nom par défaut \$1*préfixe*\$1\$1*nom*\$1, où\$1*préfixe*\$1 est le nom de l'interface du flux de travail suivi par un '.' et par \$1*nom*\$1 est le nom de la méthode décorée `@Execute` du flux de travail.

`version`  
Spécifie la version du type de flux de travail.

## @ExponentialRetry
<a name="annotations-exponentialretry"></a>

En cas d'utilisation sur une activité ou une méthode asynchrone, définit une stratégie de nouvelle tentative exponentielle si la méthode lève une exception non gérée. Une nouvelle tentative est effectuée après une période d'interruption, qui est calculée en fonction du nombre de tentatives. 

Les paramètres suivants peuvent être spécifiés sur cette annotation : 

`intialRetryIntervalSeconds`  
Spécifie la durée d'attente avant la première tentative de relance. Cette valeur ne doit pas être supérieure à `maximumRetryIntervalSeconds` et `retryExpirationSeconds`.

`maximumRetryIntervalSeconds`  
Spécifie la durée maximale entre les tentatives de relance. Une fois le délai atteint, l'intervalle de nouvelle tentative est plafonné à cette valeur. La valeur par défaut est -1, ce qui signifie une durée illimitée.

`retryExpirationSeconds`  
Spécifie la durée après laquelle la stratégie de nouvelle tentative exponentielle s'arrêtera. La valeur par défaut est -1, ce qui signifie qu'elle n'expire pas.

`backoffCoefficient`  
Spécifie le coefficient utilisé pour calculer l'intervalle de nouvelle tentative. Consultez [Stratégie de nouvelle tentative exponentielle](features-retry.md#features-retry-exponential).

`maximumAttempts`  
Indique le nombre de tentatives après lequel la stratégie de nouvelle tentative exponentielle s'arrêtera. La valeur par défaut est -1, ce qui signifie que le nombre de nouvelles tentatives est illimité.

`exceptionsToRetry`  
Spécifie le nombre de fois que le client NFS doit déclencher une nouvelle tentative. L'exception non gérée de ces types ne se propagera plus et la méthode sera retentée après l'intervalle de nouvelle tentative calculé. Par défaut, la liste contient `Throwable`.

`excludeExceptions`  
Spécifie la liste des types d'exception qui ne doivent pas déclencher de nouvelle tentative. Les exceptions non gérées de ce type seront autorisées à se propager. Par défaut, la liste est vide.

## @GetState
<a name="annotations-getstate"></a>

En cas d'utilisation sur une méthode dans une interface annotée avec `@Workflow`, identifie que la méthode est utilisée pour récupérer le dernier état d'exécution du flux de travail. Au maximum, il peut y avoir une méthode avec cette annotation dans une interface portant l'annotation `@Workflow`. Les méthodes ainsi annotées ne doivent pas prendre n'importe quel paramètre et leur type de retour doit impérativement être `void`.

## @ManualActivityCompletion
<a name="annotations-manualactivitycompletion"></a>

Cette annotation peut être utilisée sur une méthode d'activité pour indiquer que la tâche d'activité ne doit pas être terminée lorsque la méthode est renvoyée. La tâche d'activité ne sera pas automatiquement terminée et devra être effectuée manuellement directement à l'aide de l'API Amazon SWF. Ceci est utile lorsque la tâche d'activité est déléguée à un système externe qui n'est pas automatisé ou nécessite une intervention humaine pour être terminée.

## @Signal
<a name="annotations-signal"></a>

 En cas d'utilisation sur une méthode dans une interface annotée avec `@Workflow`, identifie un signal qui peut être reçu par des exécutions du type de flux de travail déclaré par l'interface. L'utilisation de cette annotation est nécessaire pour définir une méthode de signal. 

Les paramètres suivants peuvent être spécifiés sur cette annotation : 

`name`  
Spécifie la partie nom du nom du signal. Si ce paramètre n'est pas défini, le nom de la méthode est utilisé.

## @SkipRegistration
<a name="annotations-skipregistration"></a>

Lorsqu'il est utilisé sur une interface annotée avec l'`@Workflow`annotation, cela indique que le type de flux de travail ne doit pas être enregistré auprès d'Amazon SWF. L'une des annotations `@WorkflowRegistrationOptions` et `@SkipRegistrationOptions` doit être utilisée sur une interface annotée avec `@Workflow`, mais pas les deux.

## @Wait et @ NoWait
<a name="annotations-waitnowait"></a>

Ces annotations peuvent être utilisées sur un paramètre de type `Promise<>` pour indiquer si le AWS Flow Framework for Java doit attendre qu'il soit prêt avant d'exécuter la méthode. Par défaut, les paramètres `Promise<>` transmis aux méthodes `@Asynchronous` doivent être prêts avant l'exécution de la méthode. Dans certaines situations, il est nécessaire de remplacer ce comportement par défaut. Les paramètres `Promise<>` passés dans les méthodes `@Asynchronous` et annotée avec `@NoWait` ne sont pas attendus.

Les paramètres des collections (ou sous-classes) qui contiennent des objets Promise comme `List<Promise<Int>>`, doivent être annotés avec `@Wait`. Par défaut, l'infrastructure n'attend pas les membres d'une collection.

## @Flux de travail
<a name="annotations-workflow"></a>

Cette annotation est utilisée sur une interface pour déclarer un type de *flux de travail*. Une interface décorée avec cette annotation doit contenir exactement une méthode qui est décorée avec [@Execute](#annotations-execute) pour déclarer un point d'entrée pour votre flux de travail.

**Note**  
Dans une interface, les annotations `@Workflow` et `@Activities` ne peuvent pas être déclarées en même temps ; elles sont mutuellement exclusives.

Les paramètres suivants peuvent être spécifiés sur cette annotation :

`dataConverter`  
Spécifie quel `DataConverter` utiliser lors de l'envoi de demandes et de la réception de résultats pour les exécutions de flux de travail de ce type de flux de travail.  
La valeur par défaut est `NullDataConverter` celle qui, à son tour, revient `JsonDataConverter` à traiter toutes les données de demande et de réponse en tant que notation d' JavaScriptobjet (JSON).

### exemple
<a name="example"></a>

```
import com.amazonaws.services.simpleworkflow.flow.annotations.Execute;
import com.amazonaws.services.simpleworkflow.flow.annotations.Workflow;
import com.amazonaws.services.simpleworkflow.flow.annotations.WorkflowRegistrationOptions;

@Workflow
@WorkflowRegistrationOptions(defaultExecutionStartToCloseTimeoutSeconds = 3600)
public interface GreeterWorkflow {
   @Execute(version = "1.0")
   public void greet();
}
```

## @WorkflowRegistrationOptions
<a name="annotations-workflowregistrationoptions"></a>

Lorsqu'il est utilisé sur une interface annotée avec`@Workflow`, fournit les paramètres par défaut utilisés par Amazon SWF lors de l'enregistrement du type de flux de travail.

**Note**  
Vous devez utiliser `@WorkflowRegistrationOptions` ou `@SkipRegistrationOptions` dans une interface annotée avec `@Workflow`, mais vous ne pouvez pas spécifier les deux.

Les paramètres suivants peuvent être spécifiés sur cette annotation :

Description  
Texte descriptif facultatif du type de flux de travail.

`defaultExecutionStartToCloseTimeoutSeconds`  
Spécifie le `defaultExecutionStartToCloseTimeout` type de flux de travail enregistré auprès d'Amazon SWF. Durée totale autorisée pour qu'une exécution de flux de travail de ce type se termine.  
Pour plus d'informations sur les délais d'expiration des flux de travail, consultez la section [Types de délai d'expiration Amazon SWF](swf-timeout-types.md).

`defaultTaskStartToCloseTimeoutSeconds`  
Spécifie le `defaultTaskStartToCloseTimeout` type de flux de travail enregistré auprès d'Amazon SWF. Ce paramètre spécifie le temps maximum autorisé pour qu'une tâche de décision unique d'une exécution de flux de travail de ce type se termine.  
Si vous ne spécifiez pas `defaultTaskStartToCloseTimeout`, la valeur par défaut est 30 secondes.  
Pour plus d'informations sur les délais d'expiration des flux de travail, consultez la section [Types de délai d'expiration Amazon SWF](swf-timeout-types.md).

`defaultTaskList`  
Liste de tâches par défaut utilisée pour les tâches de décision pour les exécutions de ce type de flux de travail. Cette valeur par défaut peut être remplacée en utilisant `StartWorkflowOptions` lors du démarrage d'une exécution de flux de travail.  
Si vous ne spécifiez pas `defaultTaskList`, la valeur `USE_WORKER_TASK_LIST` sera utilisée par défaut. Ce paramètre indique que la liste de tâches utilisée par l'exécuteur qui effectue l'enregistrement du flux de travail doit être utilisée.

`defaultChildPolicy`  
Spécifie la stratégie à utiliser pour les exécutions de flux de travail enfant si une exécution de ce type est arrêtée. La valeur par défaut est `ABANDON`. Les valeurs possibles sont :  
+ `ABANDON`— Permettre aux exécutions du flux de travail de l'enfant de continuer
+ `TERMINATE`— Résout les exécutions de flux de travail pour enfants
+ `REQUEST_CANCEL`— Demande l'annulation des exécutions du flux de travail enfant

# AWS Flow Framework pour les exceptions Java
<a name="errorhandling.exceptions"></a>

Les exceptions suivantes sont utilisées par AWS Flow Framework for Java. Cette section fournit une présentation de l'exception. Pour plus de détails, consultez la AWS SDK pour Java documentation des exceptions individuelles.

**Topics**
+ [ActivityFailureException](#errorhandling.exceptions.ActivityFailureException)
+ [ActivityTaskException](#errorhandling.exceptions.ActivityTaskException)
+ [ActivityTaskFailedException](#errorhandling.exceptions.ActivityTaskFailedException)
+ [ActivityTaskTimedOutException](#errorhandling.exceptions.ActivityTaskTimedOutException)
+ [ChildWorkflowException](#errorhandling.exceptions.ChildWorkflowException)
+ [ChildWorkflowFailedException](#errorhandling.exceptions.ChildWorkflowFailedException)
+ [ChildWorkflowTerminatedException](#errorhandling.exceptions.ChildWorkflowTerminatedException)
+ [ChildWorkflowTimedOutException](#errorhandling.exceptions.ChildWorkflowTimedOutException)
+ [DataConverterException](#errorhandling.exceptions.DataConverterException)
+ [DecisionException](#errorhandling.exceptions.DecisionException)
+ [ScheduleActivityTaskFailedException](#errorhandling.exceptions.ScheduleActivityTaskFailedException)
+ [SignalExternalWorkflowException](#errorhandling.exceptions.SignalExternalWorkflowException)
+ [StartChildWorkflowFailedException](#errorhandling.exceptions.StartChildWorkflowFailedException)
+ [StartTimerFailedException](#errorhandling.exceptions.StartTimerFailedException)
+ [TimerException](#errorhandling.exceptions.TimerException)
+ [WorkflowException](#errorhandling.exceptions.WorkflowException)

## ActivityFailureException
<a name="errorhandling.exceptions.ActivityFailureException"></a>

Cette exception est utilisée en interne par l'infrastructure pour communiquer un échec de l'activité. Lorsqu'une activité échoue en raison d'une exception non gérée, elle est encapsulée `ActivityFailureException` et signalée à Amazon SWF. Vous devez traiter cette exception uniquement si vous utilisez les points d'extensibilité de l'exécuteur d'activité. Votre code d'application ne devra jamais traiter cette exception.

## ActivityTaskException
<a name="errorhandling.exceptions.ActivityTaskException"></a>

Il s'agit de la classe de base pour les exceptions d'échec de tâche d'activité : `ScheduleActivityTaskFailedException`, `ActivityTaskFailedException`, `ActivityTaskTimedoutException`. Elle contient l'ID de tâche et le type d'activité de la tâche ayant échoué. Vous pouvez détecter cette exception dans l'implémentation de votre flux de travail pour gérer les échecs d'activité de manière générique.

## ActivityTaskFailedException
<a name="errorhandling.exceptions.ActivityTaskFailedException"></a>

Les exceptions non gérées dans les activités sont signalées à l'implémentation de flux de travail via l'envoi d'une exception `ActivityTaskFailedException`. L'exception d'origine peut être extraite à partir de la propriété cause de cette exception. L'exception fournit également d'autres informations utiles à des fins de débogage, telles que l'identifiant d'activité unique dans l'historique.

L'infrastructure peut fournir l'exception distante en sérialisant l'exception d'origine à partir de l'exécuteur d'activité.

## ActivityTaskTimedOutException
<a name="errorhandling.exceptions.ActivityTaskTimedOutException"></a>

Cette exception est levée si le délai imparti à une activité a été dépassé par Amazon SWF. Cela peut se produire si la tâche d'activité n'a pas pu être affectée à l'exécuteur pendant la période de temps requise ou n'a pas pu être effectuée par l'exécuteur dans le temps requis. Vous pouvez définir ces délais d'attente sur l'activité par l'intermédiaire de l'annotation `@ActivityRegistrationOptions` ou du paramètre `ActivitySchedulingOptions` lors de l'appel de la méthode d'activité.

## ChildWorkflowException
<a name="errorhandling.exceptions.ChildWorkflowException"></a>

Classe de base pour des exceptions utilisées pour signaler l'échec d'exécution d'un flux de travail enfant. L'exception contient l'ID de l'exécution du flux de travail enfant, ainsi que son type de flux de travail. Vous pouvez détecter cette exception pour gérer les échecs d'exécution de flux de travail enfant de manière générique.

## ChildWorkflowFailedException
<a name="errorhandling.exceptions.ChildWorkflowFailedException"></a>

Les exceptions non gérées dans les flux de travail enfants sont signalées à l'implémentation de flux de travail parent via l'envoi d'une exception `ChildWorkflowFailedException`. L'exception d'origine peut être extraite à partir de la propriété `cause` de cette exception. L'exception fournit également d'autres informations utiles à des fins de débogage, telles que les identifiants uniques de l'exécution enfant.

## ChildWorkflowTerminatedException
<a name="errorhandling.exceptions.ChildWorkflowTerminatedException"></a>

Cette exception est levée dans l'exécution du flux de travail parent pour signaler la résiliation d'une exécution de flux de travail enfant. Vous devez détecter cette exception si vous souhaitez gérer la résiliation d'un flux de travail enfant, par exemple, pour procéder à un nettoyage ou à une compensation.

## ChildWorkflowTimedOutException
<a name="errorhandling.exceptions.ChildWorkflowTimedOutException"></a>

Cette exception est émise lors de l'exécution du flux de travail parent pour signaler que l'exécution d'un flux de travail enfant a expiré et a été clôturée par Amazon SWF. Vous devez détecter cette exception si vous souhaitez gérer la fermeture forcée d'un flux de travail enfant, par exemple, pour procéder à un nettoyage ou à une compensation.

## DataConverterException
<a name="errorhandling.exceptions.DataConverterException"></a>

L'infrastructure utilise le composant `DataConverter` pour regrouper ou dégrouper des données envoyées sur le réseau. Cette exception est émise si le composant `DataConverter` ne parvient pas à grouper ou à dégrouper les données. Cela peut se produire pour des raisons différentes, par exemple, à cause d'une incohérence dans les composants `DataConverter` utilisés pour grouper et dégrouper les données.

## DecisionException
<a name="errorhandling.exceptions.DecisionException"></a>

Il s'agit de la classe de base pour les exceptions qui représentent l'échec de la mise en œuvre d'une décision d'Amazon SWF. Vous pouvez détecter cette exception pour gérer ces exceptions de manière générique.

## ScheduleActivityTaskFailedException
<a name="errorhandling.exceptions.ScheduleActivityTaskFailedException"></a>

Cette exception est levée si Amazon SWF ne parvient pas à planifier une tâche d'activité. Cela peut se produire pour diverses raisons : par exemple, l'activité a été abandonnée ou une limite Amazon SWF a été atteinte sur votre compte. La propriété `failureCause` de l'exception spécifie la raison exacte de l'échec de planification de l'activité.

## SignalExternalWorkflowException
<a name="errorhandling.exceptions.SignalExternalWorkflowException"></a>

Cette exception est levée si Amazon SWF ne parvient pas à traiter une demande par l'exécution du flux de travail pour signaler une autre exécution du flux de travail. Cela se produit si l'exécution du flux de travail cible est introuvable, c'est-à-dire si l'exécution du flux de travail que vous avez spécifiée n'existe pas ou est fermée.

## StartChildWorkflowFailedException
<a name="errorhandling.exceptions.StartChildWorkflowFailedException"></a>

Cette exception est levée si Amazon SWF ne parvient pas à démarrer l'exécution d'un flux de travail enfant. Cela peut se produire pour diverses raisons : par exemple, le type de flux de travail enfant spécifié est obsolète ou la limite Amazon SWF de votre compte a été atteinte. La propriété `failureCause` de l'exception spécifie la raison exacte de l'échec du lancement de l'exécution du flux de travail enfant.

## StartTimerFailedException
<a name="errorhandling.exceptions.StartTimerFailedException"></a>

Cette exception est levée si Amazon SWF ne parvient pas à démarrer un temporisateur demandé par l'exécution du flux de travail. Cela peut se produire si l'identifiant du temporisateur spécifié est déjà utilisé ou si une limite Amazon SWF a été atteinte sur votre compte. La propriété `failureCause` de l'exception spécifie la raison exacte de l'échec.

## TimerException
<a name="errorhandling.exceptions.TimerException"></a>

Il s'agit de la classe de base pour les exceptions liées aux minuteurs.

## WorkflowException
<a name="errorhandling.exceptions.WorkflowException"></a>

Cette exception est utilisée en interne par l'infrastructure pour signaler des échecs dans l'exécution d'un flux de travail. Vous devez traiter cette exception uniquement si vous utilisez un point d'extensibilité d'un exécuteur de flux de travail.

# AWS Flow Framework pour les packages Java
<a name="awsflow.packages"></a>

Cette section fournit une vue d'ensemble des packages inclus dans le AWS Flow Framework pour Java. [Pour plus d'informations sur chaque package, consultez le fichier com.amazonaws.services.simpleworkflow.flow dans le guide de référence des API.AWS SDK pour Java](https://docs.aws.amazon.com/sdk-for-java/latest/reference/)

[com.amazonaws.services.simpleworkflow.flow](https://docs.aws.amazon.com//AWSJavaSDK/latest/javadoc/com/amazonaws/services/simpleworkflow/flow/package-summary.html)  
Contient des composants qui s'intègrent à Amazon SWF.

[com.amazonaws.services.simpleworkflow.flow.annotations](https://docs.aws.amazon.com//AWSJavaSDK/latest/javadoc/com/amazonaws/services/simpleworkflow/flow/annotations/package-summary.html)  
Contient les annotations utilisées par le modèle de programmation AWS Flow Framework pour Java.

[com.amazonaws.services.simpleworkflow.flow.aspectj](https://docs.aws.amazon.com//AWSJavaSDK/latest/javadoc/com/amazonaws/services/simpleworkflow/flow/aspectj/package-summary.html)  
Contient AWS Flow Framework pour Java les composants requis pour des fonctionnalités telles que [@Asynchrone](annotations.md#annotations-asynchronous) et[@ExponentialRetry](annotations.md#annotations-exponentialretry).

[com.amazonaws.services.simpleworkflow.flow.common](https://docs.aws.amazon.com//AWSJavaSDK/latest/javadoc/com/amazonaws/services/simpleworkflow/flow/common/package-summary.html)  
Contient des utilitaires communs tels que des constantes définies par l'infrastructure.

[com.amazonaws.services.simpleworkflow.flow.core](https://docs.aws.amazon.com//AWSJavaSDK/latest/javadoc/com/amazonaws/services/simpleworkflow/flow/core/package-summary.html)  
Contient des fonctions telles que `Task` et `Promise`.

[com.amazonaws.services.simpleworkflow.flow.generic](https://docs.aws.amazon.com//AWSJavaSDK/latest/javadoc/com/amazonaws/services/simpleworkflow/flow/generic/package-summary.html)  
Contient des composants essentiels, tels que des clients génériques, sur lesquels d'autres fonctions s'appuient.

[com.amazonaws.services.simpleworkflow.flow.interceptors](https://docs.aws.amazon.com//AWSJavaSDK/latest/javadoc/com/amazonaws/services/simpleworkflow/flow/interceptors/package-summary.html)  
Contient des implémentations de décorateurs fournis par l'infrastructure dont `RetryDecorator`.

[com.amazonaws.services.simpleworkflow.flow.junit](https://docs.aws.amazon.com//AWSJavaSDK/latest/javadoc/com/amazonaws/services/simpleworkflow/flow/junit/package-summary.html)  
Contient des composants qui fournissent une intégration Junit.

[com.amazonaws.services.simpleworkflow.flow.pojo](https://docs.aws.amazon.com//AWSJavaSDK/latest/javadoc/com/amazonaws/services/simpleworkflow/flow/pojo/package-summary.html)  
Contient des classes qui implémentent des définitions d'activité et de flux de travail pour le modèle de programmation basé sur les annotations.

[com.amazonaws.services.simpleworkflow.flow.spring](https://docs.aws.amazon.com//AWSJavaSDK/latest/javadoc/com/amazonaws/services/simpleworkflow/flow/spring/package-summary.html)  
Contient des composants qui fournissent une intégration Spring.

[com.amazonaws.services.simpleworkflow.flow.test](https://docs.aws.amazon.com//AWSJavaSDK/latest/javadoc/com/amazonaws/services/simpleworkflow/flow/test/package-summary.html)  
Contient des classes d'assistance, telles que `TestWorkflowClock`, pour les tests unitaires d'implémentations de flux de travail.

[com.amazonaws.services.simpleworkflow.flow.worker](https://docs.aws.amazon.com//AWSJavaSDK/latest/javadoc/com/amazonaws/services/simpleworkflow/flow/worker/package-summary.html)  
Contient les implémentations d'exécuteurs d'activité et de flux de travail