internal override void SetTimeUtc(FileTimeKind kind, DateTime value) { switch (kind) { case FileTimeKind.CreationTime: { Owner.Directory.SetCreationTimeUtc(FullName, value); break; } case FileTimeKind.LastAccessTime: { Owner.Directory.SetLastAccessTimeUtc(FullName, value); break; } case FileTimeKind.LastWriteTime: { Owner.Directory.SetLastWriteTimeUtc(FullName, value); break; } default: { throw ErrorFactory.Internal.EnumValueUnsupported(kind); } } }
public FileGetTimeArguments([NotNull] AbsolutePath path, FileTimeKind kind, bool isInUtc) { Guard.NotNull(path, nameof(path)); Path = path; Kind = kind; IsInUtc = isInUtc; }
public EntrySetTimeArguments([NotNull] AbsolutePath path, FileTimeKind kind, bool isInUtc, DateTime timeValue) { Guard.NotNull(path, nameof(path)); Path = path; Kind = kind; IsInUtc = isInUtc; TimeValue = timeValue; }
private static Boolean DiscrimnateFile(this FileInfo fileInfo, DateTime lowerBound, DateTime upperBound, FileTimeKind fileTimeKind = FileTimeKind.Creation) { switch (fileTimeKind) { case FileTimeKind.Creation: return fileInfo.CreationTime.IsBetween(lowerBound, upperBound); case FileTimeKind.LastAccess: return fileInfo.LastAccessTime.IsBetween(lowerBound, upperBound); case FileTimeKind.LastWrite: return fileInfo.LastWriteTime.IsBetween(lowerBound, upperBound); case FileTimeKind.CreationUtc: return fileInfo.CreationTimeUtc.IsBetween(lowerBound, upperBound); case FileTimeKind.LastAccessUtc: return fileInfo.LastAccessTimeUtc.IsBetween(lowerBound, upperBound); case FileTimeKind.LastWriteUtc: return fileInfo.LastWriteTimeUtc.IsBetween(lowerBound, upperBound); default: throw new ArgumentException(nameof(fileTimeKind)); } }