InMemoryOfflineSyncHeadStore.cs
1 using System.Collections.Concurrent; 2 3 namespace GUNRPG.Application.Backend; 4 5 public sealed class InMemoryOfflineSyncHeadStore : IOfflineSyncHeadStore 6 { 7 private readonly ConcurrentDictionary<Guid, OfflineSyncHead> _heads = new(); 8 9 public Task<OfflineSyncHead?> GetAsync(Guid operatorId) 10 { 11 _heads.TryGetValue(operatorId, out var head); 12 return Task.FromResult(head); 13 } 14 15 public Task UpsertAsync(OfflineSyncHead head) 16 { 17 _heads[head.OperatorId] = head; 18 return Task.CompletedTask; 19 } 20 }