20 lines
756 B
C#
20 lines
756 B
C#
using ErsatzTV.Application.MediaSources;
|
|
using ErsatzTV.Core.Api.MediaSources;
|
|
using MediatR;
|
|
using Microsoft.AspNetCore.Http;
|
|
using Microsoft.AspNetCore.Mvc;
|
|
|
|
namespace ErsatzTV.Controllers.Api;
|
|
|
|
[ApiController]
|
|
public class MediaSourcesController(IMediator mediator) : ControllerBase
|
|
{
|
|
[HttpGet("/api/media-sources", Name = "GetMediaSources")]
|
|
[Tags("Media Sources")]
|
|
[EndpointSummary("Get all media sources with their libraries")]
|
|
[EndpointGroupName("general")]
|
|
[ProducesResponseType(typeof(List<MediaSourceResponseModel>), StatusCodes.Status200OK)]
|
|
public async Task<List<MediaSourceResponseModel>> GetAll(CancellationToken cancellationToken) =>
|
|
await mediator.Send(new GetAllMediaSourcesForApi(), cancellationToken);
|
|
}
|