public void Handle(BookDeletedEvent message) { var deleteMessage = new BookDeleteMessage(message.Book, message.DeleteFiles); foreach (var notification in _notificationFactory.OnBookDeleteEnabled()) { try { if (ShouldHandleAuthor(notification.Definition, deleteMessage.Book.Author)) { notification.OnBookDelete(deleteMessage); } } catch (Exception ex) { _logger.Warn(ex, "Unable to send OnBookDelete notification to: " + notification.Definition.Name); } } }