InvocationLocal

public class InvocationLocal
extends Object

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


Essa classe fornece variáveis do escopo de invocação.

O mecanismo opera de forma semelhante a ThreadLocal. Essas variáveis diferem da contrapartes normais nesse código em uma invocação que acessa uma (por meio do método get) tem uma cópia inicializada de forma independente da variável. InvocationLocal instância normalmente são campos estáticos particulares em classes que querem associar o estado a uma invocação.

Cada invocação é associada a uma cópia de uma variável com escopo de invocação, desde que o invocação está em andamento e a instância InvocationLocal está acessível. Após um da invocação estiver concluída, todas as cópias das instâncias locais de invocação estarão sujeitas à lixeira (a menos que existam outras referências a essas cópias).

Ao contrário das instâncias ThreadLocal, que não são mais referenciadas enquanto o invocação ainda estiver em andamento não serão coletados como lixo. Como criar instâncias locais ou não estáticas portanto, não é recomendado, já que podem crescer sem limites.

Aviso: use essa classe com moderação, já que invocation-locals são variáveis globais glorificadas com muitos dos mesmos problemas.

Resumo

Construtores públicos

InvocationLocal()

Métodos públicos

final T get()

Retorna a cópia da invocação em execução no momento dessa variável de invocação-local.

Métodos protegidos

T initialValue()

Retorna o "valor inicial" da invocação atual para esta variável local de invocação.

Construtores públicos

InvocationLocal

public InvocationLocal ()

Métodos públicos

get

public final T get ()

Retorna a cópia da invocação em execução no momento dessa variável de invocação-local. Se o variável não tiver valor para a invocação atual, ela é inicializada primeiro com o valor retornados por uma chamada para o método initialValue().

Retorna
T a cópia da invocação atualmente em execução deste invocação-local.

Métodos protegidos

initialValue

protected T initialValue ()

Retorna o "valor inicial" da invocação atual para esta variável local de invocação. Isso será invocado na primeira execução do código no contexto da invocação acessa a variável com o método get(). Com certeza esse método será invocado no máximo uma vez por invocação.

Essa implementação simplesmente retorna null, mas pode ser mudada com a subclasse InvocationLocal e a substituição desse método.

Retorna
T o valor inicial dessa variável com escopo de invocação