/// <summary> /// Initializes a new instance of the <see cref="LongPathFileSystemInfo"/> class. /// </summary> /// <param name="data">File data.</param> /// <exception cref="ArgumentNullException"><paramref name="data"/> is <see langword="null"/>.</exception> internal LongPathFileSystemInfo(Win32FindData data) { this.entryData = data; this.OriginalPath = this.entryData.Value.FileName; this.NormalizedPath = LongPathCommon.NormalizePath(this.entryData.Value.FileName); this.isDirectory = LongPathCommon.IsDirectory(this.entryData.Value); this.initialized = true; }
/// <summary> /// Refreshes the state of the object. /// </summary> /// <exception cref="IOException">A device such as a disk drive is not ready.</exception> public void Refresh() { List <Win32FindData> foundFiles = LongPathDirectory.EnumerateFileSystemIterator( LongPathCommon.GetDirectoryName(this.normalizedPath), Path.GetFileName(this.normalizedPath), SearchOption.TopDirectoryOnly, this.isDirectory, !this.isDirectory).ToList(); this.entryData = foundFiles.Count > 0 ? foundFiles[0] : (Win32FindData?)null; this.initialized = true; }
/// <summary> /// Refreshes the state of the object. /// </summary> /// <exception cref="IOException">A device such as a disk drive is not ready.</exception> public void Refresh() { List<Win32FindData> foundFiles = LongPathDirectory.EnumerateFileSystemIterator( LongPathCommon.GetDirectoryName(this.normalizedPath), Path.GetFileName(this.normalizedPath), SearchOption.TopDirectoryOnly, this.isDirectory, !this.isDirectory).ToList(); this.entryData = foundFiles.Count > 0 ? foundFiles[0] : (Win32FindData?)null; this.initialized = true; }