Appel local

public class InvocationLocal
extends Object

java.lang.Object
   ↳ com.android.tradefed.invoker.logger.InvocationLocal<T>


Cette classe fournit des variables dont la portée est définie au niveau de l'appel.

Le mécanisme fonctionne de la même manière que ThreadLocal. Ces variables diffèrent des équivalents normaux dans ce code dans un appel qui accède à un (via sa méthode get) ; possède sa propre copie, initialisée indépendamment, de la variable. InvocationLocal d'instances sont généralement des champs statiques privés, appartenant à des classes qui souhaitent associer un état à un appel.

Chaque appel est associé à une copie d'une variable dont la portée est définie au niveau de l'appel, à condition que la propriété appel est en cours et l'instance InvocationLocal est accessible. Après une l'appel est terminé, toutes ses copies des instances locales d'appel sont soumises à la récupération collection (sauf si d'autres références à ces copies existent).

Notez que contrairement aux instances ThreadLocal qui ne sont plus référencées alors que le appel est toujours en cours ne sont pas récupérées. Créer des instances locales ou non statiques n'est donc pas recommandé, car elles pourraient se développer sans limite.

Avertissement: Utilisez cette classe avec parcimonie, car les invocation-locals sont des variables globales globales glorifiées. les mêmes pièges.

Résumé

Constructeurs publics

InvocationLocal()

Méthodes publiques

final T get()

Renvoie la copie de l'appel en cours d'exécution de cette variable d'appel locale.

Méthodes protégées

T initialValue()

Renvoie la "valeur initiale" de l'appel en cours pour cette variable locale d'appel.

Constructeurs publics

Appel local

public InvocationLocal ()

Méthodes publiques

get

public final T get ()

Renvoie la copie de l'appel en cours d'exécution de cette variable d'appel locale. Si le ne comporte aucune valeur pour l'appel en cours, elle est d'abord initialisée sur la valeur renvoyé par un appel à la méthode initialValue().

Renvoie
T la copie de l'appel en cours d'exécution de cet appel local.

Méthodes protégées

initialValue

protected T initialValue ()

Renvoie la "valeur initiale" de l'appel en cours pour cette variable locale d'appel. Ce est appelée la première fois que le code s'exécute dans le contexte de l'appel. accède à la variable avec la méthode get(). L'appel de cette méthode est garanti une fois par appel au maximum.

Cette implémentation renvoie simplement null, mais peut être modifiée en classant InvocationLocal et en remplaçant cette méthode.

Renvoie
T la valeur initiale de cette variable de portée appel