private async Task LoadAsync(AlbumPageParameter albumParameter) { var webAlbum = albumParameter.WebAlbum; if (webAlbum == null && albumParameter.Provider != null) { var provider = _metadataProviders.FirstOrDefault(p => p.GetType() == albumParameter.Provider); webAlbum = await provider.GetAlbumAsync(albumParameter.Token); } if (webAlbum != null) { try { Album = await _webAlbumConverter.ConvertAsync(webAlbum, IsCatalogMode); } catch { await LoadByTitleAsync(albumParameter); } } else { await LoadByTitleAsync(albumParameter); } }
private async Task LoadByTitleAsync(AlbumPageParameter albumParameter) { for (var i = 0; i < _metadataProviders.Count; i++) { try { var webAlbum = await GetAlbumByTitleAsync(albumParameter.Title, albumParameter.Artist, i); if (webAlbum != null) { Album = await _webAlbumConverter.ConvertAsync(webAlbum, IsCatalogMode); break; } } catch { // ignored } } }
private async Task LoadAsync(AlbumPageParameter albumParameter) { var webAlbum = albumParameter.WebAlbum; if (webAlbum == null && albumParameter.Provider != null) { var provider = _metadataProviders.FirstOrDefault(p => p.GetType() == albumParameter.Provider); webAlbum = await provider.GetAlbumAsync(albumParameter.Token); } if (webAlbum != null) { try { Album = await _webAlbumConverter.ConvertAsync(webAlbum, IsCatalogMode); } catch { await LoadByTitleAsync(albumParameter); } } else await LoadByTitleAsync(albumParameter); }