private async Task QueueListener_ResponseReceived(object sender, ResponseReceivedEventArgs e) { var iMessages = Counters.IncrementMessages(); try { Counters.IncrementReceivingTime(e.Message.Header.Response.TotalTime); Core.Log.InfoDetail("Response message received with CorrelationId = {0} . Current messages processing = {1}", e.Message.CorrelationId, iMessages); if (ResponseReceived != null) { await ResponseReceived.InvokeAsync(sender, e).ConfigureAwait(false); } if (MQueueServerEvents.ResponseReceived != null) { await MQueueServerEvents.ResponseReceived.InvokeAsync(sender, e).ConfigureAwait(false); } Counters.DecrementMessages(); Counters.IncrementTotalMessagesProccesed(); } catch (Exception) { Counters.IncrementTotalExceptions(); Counters.DecrementMessages(); throw; } }
protected Task OnResponseReceivedAsync(ResponseReceivedEventArgs responseReceived) => ResponseReceived?.InvokeAsync(this, responseReceived) ?? Task.CompletedTask;