JProfiler API

com.jprofiler.api.platform.structures
Interface Payload


public interface Payload

Represents payload by built-in or user-defined interceptors. A typical example of payload is the SQL string of a JDBC query that is extracted by the built-in JDBC service call measurement.

Payload is annotatated into the call tree. If the associated interceptor uses the "payload cap" feature, payload instances are merged into an [Earlier calls] payload if the number of payloads attached to a certain call stack exceeds a user-defined maximum count (by default 20). This cap is handled separately for each payload type. All built-in interceptors use the user-defined cap that can be adjusted on the "Java subsystems" tab in the profiling settings.

Interceptors can decide whether to merge payloads with the same description or not. Depending on this setting, payload descriptions are unique or can occur multiple times for the same call stack. All built-in interceptors merge payloads with equal descriptions.

For built-in interceptors, the type of a payload is one of the PAYLOAD_TYPE_* constants defined in this interface. For user-defined interceptors, the type of a payload is the one-based index of the interceptor in the array of interceptors returned by the InterceptorProvider. The payload id for user-defined interceptors can also be determined from the InterceptorsInfo data object.


Field Summary
static int PAYLOAD_TYPE_JDBC
          Payload type for the built-in JDBC interceptor.
static int PAYLOAD_TYPE_JMS
          Payload type for the built-in JMS interceptor.
static int PAYLOAD_TYPE_JNDI
          Payload type for the built-in JNDI interceptor.
static int PAYLOAD_TYPE_URL
          Payload type for the built-in URL interceptor.
 
Method Summary
 long getBlockedMicro()
          Returns the time measurement in the "Blocked" thread state associated with this payload.
 int getCount()
          Returns the number of times this payload was added.
 java.lang.String getDescription()
          Returns the description for this particular payload.
 long getNetioMicro()
          Returns the time measurement in the "Net IO" thread state associated with this payload.
 long getRunnableMicro()
          Returns the time measurement in the "Runnable" thread state associated with this payload.
 long getTimeStampMicro()
          Returns the time stamp when this payload was added to the call tree.
 int getType()
          Returns ths type of the payload.
 long getWaitingMicro()
          Returns the time measurement in the "Waiting" thread state associated with this payload.
 

Field Detail

PAYLOAD_TYPE_JDBC

static final int PAYLOAD_TYPE_JDBC
Payload type for the built-in JDBC interceptor. The payload is a SQL query string.

See Also:
Constant Field Values

PAYLOAD_TYPE_JMS

static final int PAYLOAD_TYPE_JMS
Payload type for the built-in JMS interceptor. The payload is a destination description or a custom string provided by a Controller.JMSResolver.

See Also:
Constant Field Values

PAYLOAD_TYPE_JNDI

static final int PAYLOAD_TYPE_JNDI
Payload type for the built-in JNDI interceptor. The payload is a description of the query.

See Also:
Constant Field Values

PAYLOAD_TYPE_URL

static final int PAYLOAD_TYPE_URL
Payload type for the built-in URL interceptor. The payload is the URL as a string.

See Also:
Constant Field Values
Method Detail

getType

int getType()
Returns ths type of the payload.

Returns:
the type

getDescription

java.lang.String getDescription()
Returns the description for this particular payload. For the JDBC interceptor this would return the SQL query string.

Returns:
the payload description

getCount

int getCount()
Returns the number of times this payload was added. This will exceed 1 only if the associated interceptor chooses to check duplicates when adding payloads.

Returns:
the payload count

getRunnableMicro

long getRunnableMicro()
Returns the time measurement in the "Runnable" thread state associated with this payload.

Returns:
the time
See Also:
ThreadStatus

getWaitingMicro

long getWaitingMicro()
Returns the time measurement in the "Waiting" thread state associated with this payload.

Returns:
the time
See Also:
ThreadStatus

getBlockedMicro

long getBlockedMicro()
Returns the time measurement in the "Blocked" thread state associated with this payload.

Returns:
the time
See Also:
ThreadStatus

getNetioMicro

long getNetioMicro()
Returns the time measurement in the "Net IO" thread state associated with this payload.

Returns:
the time
See Also:
ThreadStatus

getTimeStampMicro

long getTimeStampMicro()
Returns the time stamp when this payload was added to the call tree. The time is measured in microseconds beginning with the creation of the VM.

Returns:
the time stamp

JProfiler API