public void destroy() {}
public void receive_request(ServerRequestInfo sri)
{
Socket s = null;
Agent callFlowAgent = Switch.getSwitch().getCallFlowAgent();
// callFlowAgent should never be null.
// If the else block is executed, its a bug.
// more investigation needed
if (callFlowAgent != null) {
boolean callFlowEnabled = callFlowAgent.isEnabled();
if (callFlowEnabled){
// Only do callflow RequestStart,
// If it is a ejb call and not a is_a call. For everything else
// do a startTime for OTHER Container
if (isEjbCall(sri)){
try {
try{
Connection c = ((RequestInfoExt)sri).connection();
if (c != null) {
s = c.getSocket();
}
} finally {
String callerIPAddress = null;
if (s != null) {
callerIPAddress = s.getInetAddress().getHostAddress();
}
callFlowAgent.requestStart(RequestType.REMOTE_EJB);
callFlowAgent.addRequestInfo(
RequestInfo.CALLER_IP_ADDRESS, callerIPAddress);
}
} catch (Exception ex){
_logger.log( Level.WARNING,
"Callflow Agent's requestStart exception" + ex);
}
} else {
try {
callFlowAgent.startTime(ContainerTypeOrApplicationType.ORB_CONTAINER);
} catch (Exception ex){
_logger.log( Level.WARNING,
"Callflow Agent's starttime exception" + ex);
}
}