void.cat/VoidCat/Services/Payment/CachePaymentOrderStore.cs
Kieran 4de977c1dd v5 (#65)
Co-authored-by: Kieran <kieran@harkin.me>
Reviewed-on: Kieran/void.cat#65
2023-05-09 13:56:57 +00:00

26 lines
656 B
C#

using VoidCat.Database;
using VoidCat.Services.Abstractions;
namespace VoidCat.Services.Payment;
/// <inheritdoc cref="IPaymentOrderStore"/>
public class CachePaymentOrderStore : BasicCacheStore<PaywallOrder>, IPaymentOrderStore
{
public CachePaymentOrderStore(ICache cache) : base(cache)
{
}
/// <inheritdoc />
public async ValueTask UpdateStatus(Guid order, PaywallOrderStatus status)
{
var old = await Get(order);
if (old == default) return;
old.Status = status;
await Add(order, old);
}
/// <inheritdoc />
protected override string MapKey(Guid id) => $"payment:order:{id}";
}