using System.Collections.Generic;
using Nancy;
using NzbDrone.Core.Music;
using Lidarr.Http;
using Lidarr.Http.Extensions;

namespace Lidarr.Api.V3.Artist
{
    public class ArtistImportModule : LidarrRestModule<ArtistResource>
    {
        private readonly IAddArtistService _addArtistService;

        public ArtistImportModule(IAddArtistService addArtistService)
            : base("/artist/import")
        {
            _addArtistService = addArtistService;
            Post["/"] = x => Import();
        }


        private Response Import()
        {
            var resource = Request.Body.FromJson<List<ArtistResource>>();
            var newArtist = resource.ToModel();

            return _addArtistService.AddArtists(newArtist).ToResource().AsResponse();
        }
    }
}
