Handler.cs 514 B

12345678910111213141516
  1. using Application.Abstractions.Messaging;
  2. using Application.Abstractions.Cache;
  3. namespace Application.Features.Api.Crypto.Orderbook.GetLive;
  4. public sealed class Handler(ICacheService cache) : IQueryHandler<Query, Response>
  5. {
  6. public async Task<Response> Handle(Query request, CancellationToken ct)
  7. {
  8. var cacheKey = CacheKeys.CryptoOrderbookLive(request.Market);
  9. var cached = await cache.GetAsync<Response>(cacheKey, ct);
  10. return cached ?? new Response(0, 0, [], 0, 0, "");
  11. }
  12. }