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()); } }