using Domain.Entities; using Features.Breweries.Dtos; using Features.Breweries.Repository; using MediatR; namespace Features.Breweries.Queries.GetAllBreweries; /// /// Handles by retrieving a paginated list of brewery posts. /// /// Repository used to query brewery post data. public class GetAllBreweriesHandler(IBreweryRepository repository) : IRequestHandler> { public async Task> Handle(GetAllBreweriesQuery request, CancellationToken cancellationToken) { IEnumerable breweries = await repository.GetAllAsync(request.Limit, request.Offset); return breweries.Select(b => b.ToDto()); } }