using MediatR;
using Microsoft.AspNetCore.Mvc;
namespace Sufi.Demo.PeopleDirectory.UI.Server.Controllers
{
///
/// Represent the base controller class.
///
///
[ApiController]
[Route("api/v{version:apiVersion}/[controller]")]
public abstract class BaseApiController : ControllerBase
{
private IMediator? _mediatorInstance;
private ILogger? _loggerInstance;
///
/// Gets the mediator for requests/responses.
///
protected IMediator Mediator => _mediatorInstance ??= HttpContext.RequestServices.GetRequiredService();
///
/// Gets the logger for current controller.
///
protected ILogger Logger => _loggerInstance ??= HttpContext.RequestServices.GetRequiredService>();
}
}