JProfiler API documentation


com.jprofiler.api.agent.probe
Class ThreadLocalStack

java.lang.Object
  extended by com.jprofiler.api.agent.probe.ThreadLocalStack

public class ThreadLocalStack
extends java.lang.Object

A stack that saves objects in thread local data structures. This utility class is important for calculating payload timing where you need to save payload infos in the InterceptorProbe.interceptionEnter(InterceptorContext, Object, Class, String, String, String, Object[]) method and retrieve them in the InterceptorProbe.interceptionExit(InterceptorContext, Object, Class, String, String, String, Object) method of an interceptor.

Usually, you can use the InterceptorContext.push(PayloadInfo) and InterceptorContext.pop() methods which use such a thread local stack. Use this class only if you have to maintain more that ony such stack in a single probe.


Constructor Summary
ThreadLocalStack()
           
 
Method Summary
 java.util.List getList()
          Returns the stack as a list.
 boolean isEmpty()
          Checks if the thread-local stack is empty.
 java.lang.Object peek()
          Retrieves the object on top of the thread-local stack.
 java.lang.Object pop()
          Pops an object from the thread-local stack.
 void push(java.lang.Object object)
          Pushes an object onto the thread-local stack.
 int size()
          Returns the number of objects currently on the thread-local stack.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ThreadLocalStack

public ThreadLocalStack()
Method Detail

push

public void push(java.lang.Object object)
Pushes an object onto the thread-local stack.

Parameters:
object - the object

pop

public java.lang.Object pop()
Pops an object from the thread-local stack.

Returns:
the object.

peek

public java.lang.Object peek()
Retrieves the object on top of the thread-local stack.

Returns:
the object.

size

public int size()
Returns the number of objects currently on the thread-local stack.

Returns:
the number of objects

getList

public java.util.List getList()
Returns the stack as a list.

Returns:
a list

isEmpty

public boolean isEmpty()
Checks if the thread-local stack is empty.

Returns:
if the stack is empty or not