@Override
public void completeRequest(C endpointContext)
{
MDC.put("CID", endpointContext.getCorrelationId());
Trace trace = endpointContext.getTrace();
if(trace!= null)
traceManager.associateTrace(trace);
ContextStatus contextStatus = contextStatusRegistry.getContextStatus(endpointContext.getRequestId());
if(contextStatus != null)
contextStatusRegistry.associateContextStatus(contextStatus);
try
{
for (CompletionCallback<C> callback : completionCallbacks)
{
callback.onComplete(endpointContext);
}
}
catch (Throwable throwable)
{
logger.error("Error completing request.", throwable);
}
if (trace != null)
{
traceManager.disassociateTrace();
try
{
trace.close();
}
catch (Throwable t)
{
logger.error("Error closing trace.", t);
}