Skip to content

Commit af0d07a

Browse files
committed
Minor code cleanup
1 parent 1e3c532 commit af0d07a

File tree

3 files changed

+24
-28
lines changed

3 files changed

+24
-28
lines changed

VDFparse.Core/VDFFile.cs

Lines changed: 15 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,8 @@ public interface IVDFFileReader
1010

1111
public class VDFFile
1212
{
13-
private static List<IVDFFileReader> Readers = new List<IVDFFileReader>(){
13+
private static List<IVDFFileReader> VdfFileReaders = new()
14+
{
1415
new PackageInfoReaderOld(),
1516
new PackageInfoReader(),
1617
new AppInfoReader(),
@@ -22,29 +23,27 @@ public class VDFFile
2223

2324
public void Read(string filename)
2425
{
25-
using (var fs = new FileStream(filename, FileMode.Open, FileAccess.Read, FileShare.ReadWrite))
26-
{
27-
Read(fs);
28-
}
26+
using var fs = new FileStream(filename, FileMode.Open, FileAccess.Read);
27+
28+
Read(fs);
2929
}
3030

3131
public void Read(Stream stream)
3232
{
33-
using (var reader = new BinaryReader(stream))
33+
using var reader = new BinaryReader(stream);
34+
35+
var magic = reader.ReadUInt32();
36+
Universe = (EUniverse)reader.ReadUInt32();
37+
foreach (var vdfFileReader in VdfFileReaders)
3438
{
35-
var magic = reader.ReadUInt32();
36-
Universe = (EUniverse)reader.ReadUInt32();
37-
foreach (var reader_sub in Readers)
39+
if (magic == vdfFileReader.Magic)
3840
{
39-
if (magic == reader_sub.Magic)
40-
{
41-
Datasets = reader_sub.Read(reader);
42-
return;
43-
}
41+
Datasets = vdfFileReader.Read(reader);
42+
return;
4443
}
45-
var hexHeader = Convert.ToHexString(BitConverter.GetBytes(magic));
46-
throw new InvalidDataException($"Unknown header: {hexHeader}");
4744
}
45+
46+
throw new InvalidDataException($"Unknown header: {magic:X8}");
4847
}
4948

5049
public Dataset? FindByID(uint id)

VDFparse.Core/infoFiles/AppInfo.cs

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
using System.Collections.ObjectModel;
22

33
namespace VDFparse;
4+
45
public class AppInfoReader : IVDFFileReader
56
{
67
public uint Magic { get => 0x07_56_44_27; }
@@ -20,7 +21,7 @@ public List<Dataset> Read(BinaryReader reader)
2021
ID: id,
2122
Size: reader.ReadUInt32(),
2223
InfoState: reader.ReadUInt32(),
23-
LastUpdated: DateTimeFromUnixTime(reader.ReadUInt32()),
24+
LastUpdated: DateTimeFromUnixTimestamp(reader.ReadUInt32()),
2425
Token: reader.ReadUInt64(),
2526
Hash: new ReadOnlyCollection<byte>(reader.ReadBytes(20)),
2627
ChangeNumber: reader.ReadUInt32(),
@@ -29,9 +30,10 @@ public List<Dataset> Read(BinaryReader reader)
2930
}
3031
}
3132

32-
public static DateTime DateTimeFromUnixTime(uint unixTime)
33+
private static DateTime UnixBaseTime { get; } = new DateTime(1970, 1, 1);
34+
private static DateTime DateTimeFromUnixTimestamp(uint unixTime)
3335
{
34-
return new DateTime(1970, 1, 1, 0, 0, 0, 0, DateTimeKind.Utc).AddSeconds(unixTime);
36+
return UnixBaseTime.AddSeconds(unixTime);
3537
}
3638
}
3739

VDFparse.Core/infoFiles/PackageInfo.cs

Lines changed: 4 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,3 @@
1-
using System.Collections.ObjectModel;
2-
3-
41
namespace VDFparse;
52

63
public class PackageInfoReader : IVDFFileReader
@@ -9,18 +6,16 @@ public class PackageInfoReader : IVDFFileReader
96

107
public List<Dataset> Read(BinaryReader reader)
118
{
12-
var Datasets = new List<Dataset>();
9+
var datasets = new List<Dataset>();
1310
while (true)
1411
{
1512
var id = reader.ReadUInt32();
1613
if (id == 0xFFFFFFFF)
17-
{
18-
return Datasets;
19-
}
14+
return datasets;
2015

21-
Datasets.Add(new Dataset(
16+
datasets.Add(new Dataset(
2217
ID: id,
23-
Hash: new ReadOnlyCollection<byte>(reader.ReadBytes(20)),
18+
Hash: Array.AsReadOnly(reader.ReadBytes(20)),
2419
Token: IsOldVersion ? 0 : reader.ReadUInt64(),
2520
ChangeNumber: reader.ReadUInt32(),
2621
Data: KVParser.Parse(reader)

0 commit comments

Comments
 (0)