protected virtual void RequestCompleted(IServiceRequest request, IServiceResponse response, string serviceName)
{
uint requestHandle = 0;
StatusCode statusCode = StatusCodes.Good;
if (request != null)
{
requestHandle = request.RequestHeader.RequestHandle;
}
else if (response != null)
{
requestHandle = response.ResponseHeader.RequestHandle;
statusCode = response.ResponseHeader.ServiceResult;
}
if (response == null)
{
statusCode = StatusCodes.Bad;
}
int pendingRequestCount = Interlocked.Decrement(ref m_pendingRequestCount);
if (statusCode != StatusCodes.Good)
{
Utils.Trace(
(int)Utils.TraceMasks.Service,
"{0} Completed. RequestHandle={1}, PendingRequestCount={3}, StatusCode={2}",
serviceName,
requestHandle,
statusCode,
pendingRequestCount);
}
else
{
Utils.Trace(
(int)Utils.TraceMasks.Service,
"{0} Completed. RequestHandle={1}, PendingRequestCount={2}",
serviceName,
requestHandle,
pendingRequestCount);
}
}