using System.Collections.Generic; using System.Threading.Tasks; using Sony.Filtr.Contracts.Abstractions; using Sony.Filtr.Contracts.Definitions; using Sony.Filtr.Contracts.Entities; namespace Sony.Filtr.Core.SonyMusic { public class SonyMusicManager : ISonyMusicManager { private readonly SonyMusicFactory _factory; public SonyMusicManager(SonyMusicFactory factory) { _factory = factory; } public async Task> IsSonyTracksAsync(List ISRCs, string market = null) { return await _factory.IsSonyTracksAsync(ISRCs, market); } public async Task> GetSonyTrackMarketsAsync(List ISRCs) { return await _factory.GetSonyTrackMarketsAsync(ISRCs); } public async Task> IsSonyAlbumAsync(List UPCs, MusicService? musicService = null, string market = null) { return await _factory.IsSonyAlbumsAsync(UPCs, musicService, market); } public async Task> GetSonyAlbumAsync(IEnumerable UPCs, MusicService musicService, string market) { return await _factory.GetSonyAlbumAsync(UPCs, musicService, market); } public async Task> GetIsSonyOverrideByIsrcAsync(IEnumerable ISRCs, string market) { return await _factory.GetIsSonyOverrideByIsrcAsync(ISRCs, market); } public async Task> GetIsSonyOverridesAsync() { return await _factory.GetIsSonyOverridesAsync(); } public async Task SetIsSonyOverrideIsrcAsync(string ISRC, bool isSony, List countryCodes) { await _factory.SetIsSonyOverrideIsrcAsync(ISRC, isSony, countryCodes); } public async Task SetGlobalIsSonyOverrideIsrcAsync(string ISRC, bool isSony) { await _factory.SetGlobalIsSonyOverrideIsrcAsync(ISRC, isSony); } public async Task RemoveIsSonyOverrideAsync(string ISRC, List countryCodes) { await _factory.RemoveIsSonyOverrideIsrcAsync(ISRC, countryCodes); } public async Task RemoveGlobalIsSonyOverrideAsync(string ISRC) { await _factory.RemoveGlobalIsSonyOverrideIsrcAsync(ISRC); } public async Task RemoveAllIsSonyOverridesForIsrcAsync(string ISRC) { await _factory.RemoveAllIsSonyOverridesForIsrcAsync(ISRC); } } }