diff --git a/CHANGELOG.md b/CHANGELOG.md index eb2a94b..3a46bb5 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -98,6 +98,10 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0. - Better VC-4 support for IcdConsole - JSON refactoring for simpler deserialization +## [8.9.0] - 2020-04-30 +### Changed + - ProgramUtils and ProcessorUtils return dates instead of strings for date properties + ## [8.8.1] - 2020-02-18 ### Changed - IcdTimer - fixed issue that prevented OnElapsed event from firing when Length is less than (or close to) Heartbeat Interval diff --git a/ICD.Common.Utils/ProcessorUtils.SimplSharp.cs b/ICD.Common.Utils/ProcessorUtils.SimplSharp.cs index 8a09ee7..114a98a 100644 --- a/ICD.Common.Utils/ProcessorUtils.SimplSharp.cs +++ b/ICD.Common.Utils/ProcessorUtils.SimplSharp.cs @@ -1,4 +1,5 @@ -using ICD.Common.Utils.Services; +using System.Globalization; +using ICD.Common.Utils.Services; using ICD.Common.Utils.Services.Logging; #if SIMPLSHARP using System; @@ -99,7 +100,7 @@ namespace ICD.Common.Utils /// Gets the date that the firmware was updated. /// [PublicAPI] - public static string ModelVersionDate + public static DateTime ModelVersionDate { get { @@ -107,12 +108,12 @@ namespace ICD.Common.Utils Match match = regex.Match(VersionResult); if (match.Success) - return match.Groups["date"].Value; + return DateTime.ParseExact(match.Groups["date"].Value, "MMM dd yyyy", CultureInfo.InvariantCulture).ToUniversalTime(); ServiceProvider.TryGetService() .AddEntry(eSeverity.Warning, "Unable to get model version date from \"{0}\"", VersionResult); - return string.Empty; + return DateTime.MinValue; } } diff --git a/ICD.Common.Utils/ProcessorUtils.Standard.cs b/ICD.Common.Utils/ProcessorUtils.Standard.cs index a69cd0d..71b0d2f 100644 --- a/ICD.Common.Utils/ProcessorUtils.Standard.cs +++ b/ICD.Common.Utils/ProcessorUtils.Standard.cs @@ -31,12 +31,12 @@ namespace ICD.Common.Utils /// Gets the date that the firmware was updated. /// [PublicAPI] - public static string ModelVersionDate + public static DateTime ModelVersionDate { get { // TODO - return null; + return DateTime.MinValue; } } diff --git a/ICD.Common.Utils/ProgramUtils.SimplSharp.cs b/ICD.Common.Utils/ProgramUtils.SimplSharp.cs index d4d9e5f..dfc3aa5 100644 --- a/ICD.Common.Utils/ProgramUtils.SimplSharp.cs +++ b/ICD.Common.Utils/ProgramUtils.SimplSharp.cs @@ -41,7 +41,16 @@ namespace ICD.Common.Utils /// Gets the compile date of the program. /// [PublicAPI] - public static string CompiledDate { get { return ProgComments.GetDefault(COMPILED_ON_KEY, null); } } + public static DateTime CompiledDate + { + get + { + string dateString; + return ProgComments.TryGetValue(COMPILED_ON_KEY, out dateString) + ? DateTime.Parse(dateString).ToUniversalTime() + : DateTime.MinValue; + } + } /// /// Gets the compiler revision version. @@ -94,7 +103,7 @@ namespace ICD.Common.Utils [PublicAPI] public static DateTime ProgramInstallDate { - get { return IcdFile.GetCreationTime(PathUtils.Join(PathUtils.ProgramPath, ProgramFile)); } + get { return IcdFile.GetCreationTime(PathUtils.Join(PathUtils.ProgramPath, ProgramFile)).ToUniversalTime(); } } /// diff --git a/ICD.Common.Utils/ProgramUtils.Standard.cs b/ICD.Common.Utils/ProgramUtils.Standard.cs index 916dfc4..784fec1 100644 --- a/ICD.Common.Utils/ProgramUtils.Standard.cs +++ b/ICD.Common.Utils/ProgramUtils.Standard.cs @@ -18,11 +18,11 @@ namespace ICD.Common.Utils /// Gets the compile date of the program. /// [PublicAPI] - public static string CompiledDate + public static DateTime CompiledDate { get { - return IcdFile.GetLastWriteTime(Assembly.GetEntryAssembly().Location).ToString(); + return IcdFile.GetLastWriteTime(Assembly.GetEntryAssembly().Location); } }