MessageContext context = createProtocolMessageContext(message);
if (context == null) {
return true;
}
HandlerChainInvoker invoker = getInvoker(message);
invoker.setProtocolMessageContext(context);
if (!invoker.invokeProtocolHandlers(isRequestor(message), context)) {
handleAbort(message, context);
}
// If this is the outbound and end of MEP, call MEP completion
if (isRequestor(message) && invoker.getLogicalHandlers().isEmpty()
&& !isOutbound(message) && isMEPComlete(message)) {
onCompletion(message);
} else if (isOutbound(message) && isMEPComlete(message)) {
onCompletion(message);
}