/// <summary>
 /// Initializes a new instance of the <see cref="CollectorItem"/> class.
 /// </summary>
 /// <param name="parent">The parent backup worker instance.</param>
 /// <param name="entries">The directory entries that should be bundled in this CollectorItem. See class comment
 /// in which way the DirectoryEntries should be bundled.</param>
 public ItemProducer(BackupReworker parent, string backupDirectory)
 {
     _parent          = parent;
     _backupDirectory = backupDirectory ?? throw new ArgumentNullException();
     if (!_backupDirectory.StartsWith(@"\\"))
     {
         _backupDirectory = @"\\?\" + _backupDirectory;
     }
 }
            public WorkerItem(BackupReworker parent, FileInfo sourceFile)
            {
                _parent     = parent;
                _sourceFile = sourceFile;

                _centralStorageFileName = string.Empty;
                _centralStorageFolder   = string.Empty;

                _buffer = null;
                _sha256 = null;

                try
                {
                    _stream       = new FileStream(sourceFile.FullName, FileMode.Open, FileAccess.Read, FileShare.Read);
                    _streamLength = _stream.Length;
                }
                catch (Exception ex)
                {
                    _stream       = Stream.Null;
                    _streamLength = 0;
                    OnFailed(ex);
                }
            }