com.sun.enterprise.admin.monitor.callflow
Interface Listener


public interface Listener

This interface exposes the call flow Listener API. This interface is implemented by listeners that are registered with the call flow agent, in order to receive the call flow trap point notifications. Note 1: There are no ordering guaratees for the various notifications. Note 2: A listener implementation must be stateless. This is allow the listener to be accessed concurrently by multiple threads, and yet avoid synchronization overhead associated with protected access to shared state, in a multi-threaded environment. Note 3: It is also imperative that the listener implementation is light-weight, and avoids time consuming operations such as disk access, logging, synchronization locks, et cetera. This will ensure that the listener does not negatively impact the performance of the application thread.

Author:
Ram Jeyaraman

Method Summary
 void ejbMethodEnd(java.lang.String requestId, java.lang.Throwable exception)
          This notification indicates that an EJB method has completed.
 void ejbMethodStart(java.lang.String requestId, java.lang.String methodName, java.lang.String applicationName, java.lang.String moduleName, java.lang.String componentName, ComponentType componentType, java.lang.String callerPrincipal, java.lang.String transactionId)
          This notification indicates that an EJB method is about to be invoked.
 void entityManagerMethodEnd(java.lang.String requestId)
          This notification indicates that an EntityManager method has completed.
 void entityManagerMethodStart(java.lang.String requestId, EntityManagerMethod entityManagerMethod, java.lang.String applicationName, java.lang.String moduleName, java.lang.String componentName, ComponentType componentType, java.lang.String callerPrincipal)
          This notification indicates that an EntityManager method is about to be invoked.
 void entityManagerQueryEnd(java.lang.String requestId)
          This notification indicates that an EntityManager Query method has completed.
 void entityManagerQueryStart(java.lang.String requestId, EntityManagerQueryMethod queryMethod, java.lang.String applicationName, java.lang.String moduleName, java.lang.String componentName, ComponentType componentType, java.lang.String callerPrincipal)
          This notification indicates that an EntityManager Query method is about to be invoked.
 void requestEnd(java.lang.String requestId)
          This notification indicates that a request is about to complete.
 void requestStart(java.lang.String requestId, RequestType requestType, java.lang.String callerIPAddress, java.lang.String remoteUser)
          This notification indicates that a request is being started.
 void webMethodEnd(java.lang.String requestId, java.lang.Throwable exception)
          This notification indicates that a web method has completed.
 void webMethodStart(java.lang.String requestId, java.lang.String methodName, java.lang.String applicationName, java.lang.String moduleName, java.lang.String componentName, ComponentType componentType, java.lang.String callerPrincipal)
          This notification indicates that a web method is about to be invoked.
 

Method Detail

requestStart

void requestStart(java.lang.String requestId,
                  RequestType requestType,
                  java.lang.String callerIPAddress,
                  java.lang.String remoteUser)
This notification indicates that a request is being started. Allowed request types are: 1. Remote HTTP Web request. 2. Remote EJB request. 3. MDB request. 4. Timer EJB.

Parameters:
requestType - Type of the request.
callerIPAddress - Client host IP address of caller.

requestEnd

void requestEnd(java.lang.String requestId)
This notification indicates that a request is about to complete.


ejbMethodStart

void ejbMethodStart(java.lang.String requestId,
                    java.lang.String methodName,
                    java.lang.String applicationName,
                    java.lang.String moduleName,
                    java.lang.String componentName,
                    ComponentType componentType,
                    java.lang.String callerPrincipal,
                    java.lang.String transactionId)
This notification indicates that an EJB method is about to be invoked. This parameters provide information such as method name, component name, component type, application name, module name, caller principal.


ejbMethodEnd

void ejbMethodEnd(java.lang.String requestId,
                  java.lang.Throwable exception)
This notification indicates that an EJB method has completed. The parameters provide information on the outcome of the invocation such as exception, if any.


webMethodStart

void webMethodStart(java.lang.String requestId,
                    java.lang.String methodName,
                    java.lang.String applicationName,
                    java.lang.String moduleName,
                    java.lang.String componentName,
                    ComponentType componentType,
                    java.lang.String callerPrincipal)
This notification indicates that a web method is about to be invoked. This parameters provide information such as method name, component name, component type, application name, module name, caller principal, and caller IP address.


webMethodEnd

void webMethodEnd(java.lang.String requestId,
                  java.lang.Throwable exception)
This notification indicates that a web method has completed. The parameters provide information on the outcome of the invocation such as exception, if any.


entityManagerMethodStart

void entityManagerMethodStart(java.lang.String requestId,
                              EntityManagerMethod entityManagerMethod,
                              java.lang.String applicationName,
                              java.lang.String moduleName,
                              java.lang.String componentName,
                              ComponentType componentType,
                              java.lang.String callerPrincipal)
This notification indicates that an EntityManager method is about to be invoked. This parameters provide information such as method name, component name, component type, application name, module name, caller principal.


entityManagerMethodEnd

void entityManagerMethodEnd(java.lang.String requestId)
This notification indicates that an EntityManager method has completed.


entityManagerQueryStart

void entityManagerQueryStart(java.lang.String requestId,
                             EntityManagerQueryMethod queryMethod,
                             java.lang.String applicationName,
                             java.lang.String moduleName,
                             java.lang.String componentName,
                             ComponentType componentType,
                             java.lang.String callerPrincipal)
This notification indicates that an EntityManager Query method is about to be invoked. This parameters provide information such as method name, component name, component type, application name, module name, caller principal.


entityManagerQueryEnd

void entityManagerQueryEnd(java.lang.String requestId)
This notification indicates that an EntityManager Query method has completed.



Copyright © 2012 GlassFish Community. All Rights Reserved.