/* Protocol Specific-Handler/Checker */
/**************************************************************/
// When do we call init/cleanup??
SimpleTargetedChain service = null ;
msgContext.setPastPivot(false);
/* Process the Service Specific Request Chain */
/**********************************************/
hName = msgContext.getTargetService();
if ( hName != null && (h = getService( hName )) != null ) {
if ( h instanceof SimpleTargetedChain ) {
service = (SimpleTargetedChain) h ;
h = service.getRequestHandler();
}
if ( h != null ) h.invoke( msgContext );
}
/* Process the Global Request Chain */
/**********************************/
if ((h = getGlobalRequest()) != null )
h.invoke(msgContext);
/** Process the Transport Specific stuff
*
* NOTE: Somewhere in here there is a handler which actually
* sends the message and receives a response. Generally
* this is the pivot point in the Transport chain.
*/
hName = msgContext.getTransportName();
if ( hName != null && (h = getTransport( hName )) != null )
h.invoke(msgContext);
else
throw new AxisFault(JavaUtils.getMessage("noTransport00", hName));
/* Process the Global Response Chain */
/***********************************/
if ((h = getGlobalResponse()) != null)
h.invoke(msgContext);
if ( service != null ) {
h = service.getResponseHandler();
if ( h != null )
h.invoke(msgContext);
}
// Do SOAP Semantics checks here - this needs to be a call to