using Domain.Entities; using Features.Breweries.Dtos; using Features.Breweries.Repository; using MediatR; namespace Features.Breweries.Queries.GetBreweryById; /// Handles by retrieving the matching brewery post. public class GetBreweryByIdHandler(IBreweryRepository repository) : IRequestHandler { /// Retrieves the brewery post, or if none exists with the given ID. public async Task Handle( GetBreweryByIdQuery request, CancellationToken cancellationToken ) { BreweryPost? brewery = await repository.GetByIdAsync(request.BreweryPostId, cancellationToken); return brewery?.ToDto(); } }