using Application.Abstractions.Cache; using Application.Abstractions.Messaging; using SharedKernel.Results; namespace Application.Features.Admin.Cache.ClearCache; internal sealed class Handler(ICacheService cache) : ICommandHandler { public async Task Handle(Command request, CancellationToken ct) { if (string.IsNullOrEmpty(request.Prefix)) { await cache.RemoveByPrefixAsync("", ct); } else { await cache.RemoveByPrefixAsync(request.Prefix, ct); } return Result.Success(); } }