private void _AddEntry(DgvEntry entry)
        {
            if (entry == null)
            {
                throw new ArgumentNullException(nameof(entry));
            }

            var entries = this._entries;

            for (var i = entries.Count - 1; i >= 0; --i)
            {
                if (entries[i].File.FullName == entry.File.FullName)
                {
                    entries.RemoveAt(i);
                }
            }

            entries.Add(entry);
        }
 internal void MarkFileException(FolderIntegrityChecker checker, FileInfo file, string oldChecksum, Exception exception)
 => this.SafelyInvoke(() => this._AddEntry(DgvEntry.FromException(checker, file, oldChecksum, exception)));
 internal void MarkFileChecksumFailed(FolderIntegrityChecker checker, FileInfo file, string oldChecksum, string newChecksum)
 => this.SafelyInvoke(() => this._AddEntry(DgvEntry.FromFailedChecksum(checker, file, oldChecksum, newChecksum)));