roadie/Roadie.Api.Library/Engines/IArtistLookupEngine.cs
2018-12-26 13:39:13 -06:00

24 lines
No EOL
1,009 B
C#

using System.Collections.Generic;
using System.Threading.Tasks;
using Roadie.Library.Data;
using Roadie.Library.MetaData.Audio;
using Roadie.Library.SearchEngines.Imaging;
using Roadie.Library.SearchEngines.MetaData;
namespace Roadie.Library.Engines
{
public interface IArtistLookupEngine
{
IEnumerable<int> AddedArtistIds { get; }
IArtistSearchEngine DiscogsArtistSearchEngine { get; }
IArtistSearchEngine ITunesArtistSearchEngine { get; }
IArtistSearchEngine LastFmArtistSearchEngine { get; }
IArtistSearchEngine MusicBrainzArtistSearchEngine { get; }
IArtistSearchEngine SpotifyArtistSearchEngine { get; }
IArtistSearchEngine WikipediaArtistSearchEngine { get; }
Task<OperationResult<Artist>> Add(Artist artist);
Task<OperationResult<Artist>> GetByName(AudioMetaData metaData, bool doFindIfNotInDatabase = false);
Task<OperationResult<Artist>> PerformMetaDataProvidersArtistSearch(AudioMetaData metaData);
}
}