Example #1
0
        protected virtual async Task HandleErrorAsync(WebhookWorkItem webHookWorkItem, WebhookSendResponse webHookSendResponse)
        {
            var feedEntry = GetOrCreateFeedEntry(webHookWorkItem, webHookSendResponse);

            feedEntry.RecordType = (int)WebhookFeedEntryType.Error;
            feedEntry.Status     = webHookSendResponse?.StatusCode ?? webHookWorkItem.FeedEntry.Status;

            await _logger.LogAsync(feedEntry);

            webHookWorkItem.FeedEntry = feedEntry;

            //delete old FeedEntries except latest by 'LatestErrorCount'
            var errorFeedEntryIds = await _webHookFeedService.GetAllErrorEntriesExceptLatestAsync(new[] { webHookWorkItem.WebHook.Id }, LatestErrorCount);

            await _webHookFeedService.DeleteByIdsAsync(errorFeedEntryIds);
        }