Tracing the Caller Stack

O mecanismo de regras fornece um conjunto integrado de métodos que podem ser usados para obter uma representação de stack trace ou para imprimir um stack trace para um arquivo de trace. A API definida pela classe helper é:

public void traceStack()
public void traceStack(String prefix)
public void traceStack(String prefix, Object key)
public void traceStack(int maxFrames)
public void traceStack(String prefix, int maxFrames)
public void traceStack(String prefix, Object key, int maxFrames)
public String formatStack()
public String formatStack(String prefix)
public String formatStack(int maxFrames)
public String formatStack(String prefix, int maxFrames)

A ação real acontece nos métodos traceStack(String, Object, int) e formatStack(String, int). Todos os outros métodos chamam uns aos outros setando valores default para os vários argumentos que faltam até cheguem no final para realizar uma chamada para esse dois métodos.

formatStack(prefixo String, maxFrames int) constrói uma representação em sequencia da stack inicial do trigger frame, incluindo o nome do método totalmente qualificado, arquivo e número de linha para cada frame seguido por uma nova linha.

Se prefix não é nulo ele é anexado ao texto gerado. Por padrão é null, resultando o prefixo Stack trace for thread \n sendo usado como o prefixo onde é substituído com o valor de Thread.currentThread().GetName().

Se maxFrames é positivo e menor do que o número de frame da stack, em seguida, é usado para limitar o número de frames impressos e o texto ... \n é acrescentado ao valor retornado. Caso contrário, todos os frames na Stack estão incluídos. O valor default de maxFrames é 0.

traceStack(String prefixo, chave de objeto, int maxFrames) constrói um stack trace chamando formatStack(key, maxFrames). Em seguida, imprime a um arquivo de trace chamando trace(chave, ). Como antes, o valor padrão de prefix é null e maxFrames 0. O valor padrão de key é out então isso significa que, quando se omitiu o valor de key o output de trace vai para System.out.

results matching ""

    No results matching ""