From 67a0f2d420a090a1d0bc74db17deff34da30cd96 Mon Sep 17 00:00:00 2001 From: Sunny Ahuwanya Date: Sat, 28 Nov 2015 21:27:51 -0500 Subject: [PATCH] Reverted ISystemClock to use DateTimeOffset --- .../Http/DateHeaderValueManager.cs | 7 +++---- .../Infrastructure/ISystemClock.cs | 2 +- .../Infrastructure/SystemClock.cs | 4 ++-- 3 files changed, 6 insertions(+), 7 deletions(-) diff --git a/src/Microsoft.AspNet.Server.Kestrel/Http/DateHeaderValueManager.cs b/src/Microsoft.AspNet.Server.Kestrel/Http/DateHeaderValueManager.cs index 79cfbc7d92..8ca7ec12b1 100644 --- a/src/Microsoft.AspNet.Server.Kestrel/Http/DateHeaderValueManager.cs +++ b/src/Microsoft.AspNet.Server.Kestrel/Http/DateHeaderValueManager.cs @@ -28,7 +28,6 @@ namespace Microsoft.AspNet.Server.Kestrel.Http private long _lastRequestSeenTicks; private long _lastReadDateTimeTicks; private readonly bool _is64BitSystem; - private readonly long _ticksInOneSecond; private volatile bool _timerIsRunning; /// @@ -141,7 +140,7 @@ namespace Microsoft.AspNet.Server.Kestrel.Http private void TimerLoop(object state) { var now = _systemClock.UtcNow; - var lastReadDateTime = new DateTime(ReadLongThreadSafe(ref _lastReadDateTimeTicks)); + var lastReadDateTime = new DateTimeOffset(ReadLongThreadSafe(ref _lastReadDateTimeTicks), TimeSpan.Zero); //Are we in a new second? if (now - lastReadDateTime >= TimeSpan.FromSeconds(1) || now.Second != lastReadDateTime.Second) @@ -189,8 +188,8 @@ namespace Microsoft.AspNet.Server.Kestrel.Http /// /// Sets date values from a provided ticks value /// - /// A valid ticks value - private void SetDateValues(DateTime value) + /// A DateTimeOffset value + private void SetDateValues(DateTimeOffset value) { // See http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.18 for required format of Date header _dateValue = value.ToString(Constants.RFC1123DateFormat); diff --git a/src/Microsoft.AspNet.Server.Kestrel/Infrastructure/ISystemClock.cs b/src/Microsoft.AspNet.Server.Kestrel/Infrastructure/ISystemClock.cs index ec3a2eb8fa..c741621de4 100644 --- a/src/Microsoft.AspNet.Server.Kestrel/Infrastructure/ISystemClock.cs +++ b/src/Microsoft.AspNet.Server.Kestrel/Infrastructure/ISystemClock.cs @@ -13,6 +13,6 @@ namespace Microsoft.AspNet.Server.Kestrel.Infrastructure /// /// Retrieves the current system time in UTC. /// - DateTime UtcNow { get; } + DateTimeOffset UtcNow { get; } } } diff --git a/src/Microsoft.AspNet.Server.Kestrel/Infrastructure/SystemClock.cs b/src/Microsoft.AspNet.Server.Kestrel/Infrastructure/SystemClock.cs index 362be11a0a..c16d40bf6a 100644 --- a/src/Microsoft.AspNet.Server.Kestrel/Infrastructure/SystemClock.cs +++ b/src/Microsoft.AspNet.Server.Kestrel/Infrastructure/SystemClock.cs @@ -13,11 +13,11 @@ namespace Microsoft.AspNet.Server.Kestrel.Infrastructure /// /// Retrieves the current system time in UTC. /// - public DateTime UtcNow + public DateTimeOffset UtcNow { get { - return DateTime.UtcNow; + return DateTimeOffset.UtcNow; } } }