2 instantiations of CacheableKeyRing
Microsoft.AspNetCore.DataProtection (2)
KeyManagement\Internal\CacheableKeyRing.cs (1)
49
return new
CacheableKeyRing
(CancellationToken.None, now + extension, KeyRing);
KeyManagement\KeyRingProvider.cs (1)
196
return new
CacheableKeyRing
(
25 references to CacheableKeyRing
Microsoft.AspNetCore.DataProtection (25)
KeyManagement\Internal\CacheableKeyRing.cs (3)
34
internal static bool IsValid([NotNullWhen(true)]
CacheableKeyRing
? keyRing, DateTime utcNow)
42
/// Returns a new <see cref="
CacheableKeyRing
"/> which is identical to 'this' but with a
46
internal
CacheableKeyRing
WithTemporaryExtendedLifetime(DateTimeOffset now)
KeyManagement\Internal\ICacheableKeyRingProvider.cs (1)
19
CacheableKeyRing
GetCacheableKeyRing(DateTimeOffset now);
KeyManagement\KeyRingProvider.cs (21)
22
private
CacheableKeyRing
? _cacheableKeyRing;
24
private Task<
CacheableKeyRing
>? _cacheableKeyRingTask; // Also covered by _cacheableKeyRingLockObj
81
private
CacheableKeyRing
CreateCacheableKeyRingCore(DateTimeOffset now, IKey? keyJustAdded)
171
private
CacheableKeyRing
CreateCacheableKeyRingCoreStep2(DateTimeOffset now, CancellationToken cacheExpirationToken, IKey defaultKey, IEnumerable<IKey> allKeys)
231
CacheableKeyRing
? existingCacheableKeyRing = null;
235
if (
CacheableKeyRing
.IsValid(existingCacheableKeyRing, utcNow))
257
if (
CacheableKeyRing
.IsValid(existingCacheableKeyRing, utcNow))
270
CacheableKeyRing
newCacheableKeyRing;
337
var
cached = Volatile.Read(ref _cacheableKeyRing);
338
if (
CacheableKeyRing
.IsValid(cached, utcNow))
344
CacheableKeyRing
? existingCacheableKeyRing = null;
345
Task<
CacheableKeyRing
>? existingTask = null;
354
if (
CacheableKeyRing
.IsValid(existingCacheableKeyRing, utcNow))
380
CacheableKeyRing
newCacheableKeyRing;
432
Debug.Assert(!
CacheableKeyRing
.IsValid(existingCacheableKeyRing, utcNow), "Should have returned a valid cached key ring above");
458
var
newCacheableKeyRing = Volatile.Read(ref _cacheableKeyRing);
480
private IKeyRing? GetKeyRingFromCompletedTaskUnsynchronized(Task<
CacheableKeyRing
> task, DateTime utcNow)
495
var
newCacheableKeyRing = task.GetAwaiter().GetResult(); // Call GetResult to throw on failure
501
var
existingCacheableKeyRing = Volatile.Read(ref _cacheableKeyRing);
502
if (existingCacheableKeyRing is not null && !
CacheableKeyRing
.IsValid(existingCacheableKeyRing, utcNow))
532
CacheableKeyRing
ICacheableKeyRingProvider.GetCacheableKeyRing(DateTimeOffset now)