Exemplo n.º 1
0
    /// <inheritdoc />
    public async Task <IEnumerable <RemoteSearchResult> > GetSearchResults(ArtistInfo searchInfo, CancellationToken cancellationToken)
    {
        _logger.LogDebug("Get search result for {Name}", searchInfo.Name);

        var searchResults = await _imvdbClient.GetSearchResponseAsync(searchInfo, cancellationToken)
                            .ConfigureAwait(false);

        if (searchResults == null)
        {
            return(Enumerable.Empty <RemoteSearchResult>());
        }

        return(searchResults.Results.Select(
                   r =>
        {
            var result = new RemoteSearchResult
            {
                Name = r.Name
            };

            result.SetProviderId(ImvdbPlugin.ProviderName, r.Id.ToString(CultureInfo.InvariantCulture));

            return result;
        }));
    }
Exemplo n.º 2
0
    /// <inheritdoc />
    public async Task<IEnumerable<RemoteSearchResult>> GetSearchResults(MusicVideoInfo searchInfo, CancellationToken cancellationToken)
    {
        _logger.LogDebug("Get search result for {Name}", searchInfo.Name);

        var searchResults = await _imvdbClient.GetSearchResponseAsync(searchInfo, cancellationToken)
            .ConfigureAwait(false);
        if (searchResults == null)
        {
            return Enumerable.Empty<RemoteSearchResult>();
        }

        return searchResults.Results.Select(
            r =>
            {
                var result = new RemoteSearchResult
                {
                    Name = r.SongTitle,
                    ProductionYear = r.Year,
                    Artists = r.Artists.Select(a => new RemoteSearchResult { Name = a.Name }).ToArray(),
                    ImageUrl = r.Image?.Size1,
                };

                result.SetProviderId(ImvdbPlugin.ProviderName, r.Id.ToString(CultureInfo.InvariantCulture));

                return result;
            });
    }