private static LfsDirtyFlags DeleteEntries <T>(IList <T> entries, DeleteOperationData deleteOpData, LfsDirtyFlags currentDirtyFlags, FileSystem deviceFileSystem)
        {
            var data        = deleteOpData.TaskData;
            var device      = data.Device;
            var numDeleted  = 0;
            var numToDelete = entries.Count;
            var succeeded   = false;

            foreach (var entry in entries)
            {
                if (data.AcceptCancelIfRequested())
                {
                    break;
                }
                deleteOpData.UpdateTitle();
                deleteOpData.UpdateStatus(numToDelete, ref numDeleted);
                currentDirtyFlags |= currentDirtyFlags.UpdateFileSystemDirtyState(deviceFileSystem, data, Convert.ToUInt32(entry), deleteOpData.Operation, deleteOpData.TargetType);
                deleteOpData.CreateCommand(entry).Execute(device.Port, data, out succeeded);
            }
            return(currentDirtyFlags);
        }