public void OnUpdateSimilarArtistsCompleted(SimilarArtistRequest request2, List<Song> SimilarArtists)
 {
   if (request2.Equals(_lastRequest))
   {
     OnScrobbleLookupsCompleted(SimilarArtists);
   }
   else
   {
     Log.Warn("GUIMusicPlaylist: OnUpdateSimilarArtistsCompleted: unexpected response for request: {0}",
              request2.Type);
   }
 }
    public void OnUpdateSimilarArtistsCompleted(SimilarArtistRequest request2, List<Song> SimilarArtists)
    {
      if (request2.Equals(_lastSimilarArtistRequest))
      {
        string propertyTags = String.Empty;

        for (int i = 0; i < SimilarArtists.Count; i++)
        {
          // some artist names might be very long - reduce the number of tags then
          if (propertyTags.Length > 50)
          {
            break;
          }

          propertyTags += SimilarArtists[i].Artist + "   ";
          _similarArtistCache.Add(SimilarArtists[i].Artist);

          // display 5 items only
          if (i >= 4)
          {
            break;
          }
        }
        GUIPropertyManager.SetProperty("#Play.Current.Lastfm.SimilarArtists", propertyTags);
      }
      else
      {
        Log.Warn("NowPlaying.OnUpdateSimilarArtistsCompleted: unexpected response for request: {0}", request2.Type);
      }
    }
 private void UpdateSimilarArtists(string _trackArtist)
 {
   if (_trackArtist == null)
   {
     return;
   }
   if (_trackArtist != string.Empty)
   {
     SimilarArtistRequest request2 = new SimilarArtistRequest(
       _trackArtist,
       _useSimilarRandom,
       new SimilarArtistRequest.SimilarArtistRequestHandler(OnUpdateSimilarArtistsCompleted));
     _lastRequest = request2;
     ascrobbler.AddRequest(request2);
   }
 }
    private void UpdateArtistInfo(string _trackArtist)
    {
      if (_trackArtist == null)
      {
        return;
      }
      if (_trackArtist != String.Empty)
      {
        ArtistInfoRequest request = new ArtistInfoRequest(
          _trackArtist,
          new ArtistInfoRequest.ArtistInfoRequestHandler(OnUpdateArtistCoverCompleted));
        _lastArtistCoverRequest = request;
        InfoScrobbler.AddRequest(request);

        SimilarArtistRequest request2 = new SimilarArtistRequest(
          _trackArtist,
          false,
          new SimilarArtistRequest.SimilarArtistRequestHandler(OnUpdateSimilarArtistsCompleted));
        _lastSimilarArtistRequest = request2;
        _similarArtistCache.Clear();
        InfoScrobbler.AddRequest(request2);
      }
    }