public LoadLastFmListDataResult<Track> TopTracks(Tag tag) { var p1 = new Parameter { Name = LastFmDataAccess.ParamMethod, Value = LastFmDataAccess.MethodTagGetTopTracks }; var p2 = new Parameter { Name = LastFmDataAccess.ParamTag, Value = tag.Name }; return new LoadLastFmListDataResult<Track>( SearchStringBuilder(new[] { p1, p2 }), "track"); }
public LoadLastFmListDataResult<Artist> WeeklyArtistChart(Tag tag) { var p1 = new Parameter { Name = LastFmDataAccess.ParamMethod, Value = LastFmDataAccess.MethodTagGetWeeklyArtistChart }; var p2 = new Parameter { Name = LastFmDataAccess.ParamTag, Value = tag.Name }; return new LoadLastFmListDataResult<Artist>( SearchStringBuilder(new[] { p1, p2 }), "artist"); }
public LoadLastFmListDataResult<Track> SimilarTracks(Track track) { const int limit = 16; string s; var p1 = new Parameter { Name = LastFmDataAccess.ParamMethod, Value = LastFmDataAccess.MethodTrackGetSimilar }; var p2 = new Parameter { Name = LastFmDataAccess.ParamAutocorrect, Value = true.ToString() }; var p3 = new Parameter { Name = LastFmDataAccess.ParamLimit, Value = limit.ToString() }; if (string.IsNullOrEmpty(track.MusicBrainzId)) { var p4 = new Parameter { Name = LastFmDataAccess.ParamArtist, Value = track.ArtistName }; var p5 = new Parameter { Name = LastFmDataAccess.ParamTrack, Value = track.Name }; s = SearchStringBuilder(new[] { p1, p2, p3, p4, p5 }); } else { var p4 = new Parameter { Name = LastFmDataAccess.ParamMBID, Value = track.MusicBrainzId }; s = SearchStringBuilder(new[] { p1, p2, p3, p4 }); } return new LoadLastFmListDataResult<Track>(s, "track"); }
public LoadLastFmXmlDataResult TopTags() { var p1 = new Parameter { Name = LastFmDataAccess.ParamMethod, Value = LastFmDataAccess.MethodTagGetTopTags }; var p2 = new Parameter { Name = LastFmDataAccess.ParamLimit, Value = 100.ToString() }; return new LoadLastFmXmlDataResult( SearchStringBuilder(new[] { p1, p2 }), repository, LastFmRepository.RepositoryTypes.TopTags); }
public LoadLastFmXmlDataResult TrackSearch(string searchString, string artistName = null, int page = 0) { var p1 = new Parameter { Name = LastFmDataAccess.ParamMethod, Value = LastFmDataAccess.MethodTrackSearch }; var p2 = new Parameter { Name = LastFmDataAccess.ParamTrack, Value = searchString }; var p3 = new Parameter { Name = LastFmDataAccess.ParamPage, Value = page.ToString() }; string s; if (string.IsNullOrEmpty(artistName)) { s = SearchStringBuilder(new[] { p1, p2, p3 }); } else { var p4 = new Parameter { Name = LastFmDataAccess.ParamArtist, Value = artistName }; s = SearchStringBuilder(new[] { p1, p2, p3, p4 }); } return new LoadLastFmXmlDataResult(s, repository, LastFmRepository.RepositoryTypes.Tracks); }
public LoadLastFmEntityDataResult<Track> SingleTrack(string trackName, string artistName, string musicBrainzId = null) { var p1 = new Parameter { Name = LastFmDataAccess.ParamMethod, Value = LastFmDataAccess.MethodTrackGetInfo }; var p2 = new Parameter { Name = LastFmDataAccess.ParamAutocorrect, Value = true.ToString() }; Parameter p3; string s; if (string.IsNullOrEmpty(musicBrainzId)) { p3 = new Parameter { Name = LastFmDataAccess.ParamTrack, Value = trackName }; var p4 = new Parameter { Name = LastFmDataAccess.ParamArtist, Value = artistName }; s = SearchStringBuilder(new[] { p1, p2, p3, p4 }); } else { p3 = new Parameter { Name = LastFmDataAccess.ParamMBID, Value = musicBrainzId }; s = SearchStringBuilder(new[] { p1, p2, p3 }); } return new LoadLastFmEntityDataResult<Track>(s, "track"); }
public LoadLastFmXmlDataResult AlbumSearch(string searchString, int page = 0) { var p1 = new Parameter { Name = LastFmDataAccess.ParamMethod, Value = LastFmDataAccess.MethodAlbumSearch }; var p2 = new Parameter { Name = LastFmDataAccess.ParamAlbum, Value = searchString }; var p3 = new Parameter { Name = LastFmDataAccess.ParamPage, Value = page.ToString() }; return new LoadLastFmXmlDataResult( SearchStringBuilder(new[] { p1, p2, p3 }), repository, LastFmRepository.RepositoryTypes.Albums ); }
public LoadLastFmListDataResult<ArtistBase> SimilarArtists(Artist artist) { const int limit = 16; var p1 = new Parameter { Name = LastFmDataAccess.ParamMethod, Value = LastFmDataAccess.MethodArtistGetSimilar }; Parameter p2; if (string.IsNullOrEmpty(artist.MusicBrainzId)) { p2 = new Parameter { Name = LastFmDataAccess.ParamArtist, Value = artist.Name }; } else { p2 = new Parameter { Name = LastFmDataAccess.ParamMBID, Value = artist.MusicBrainzId }; } var p3 = new Parameter { Name = LastFmDataAccess.ParamAutocorrect, Value = true.ToString() }; var p4 = new Parameter { Name = LastFmDataAccess.ParamLimit, Value = limit.ToString() }; return new LoadLastFmListDataResult<ArtistBase>( SearchStringBuilder(new[] { p1, p2, p3, p4 }), "artist"); }
public LoadLastFmListDataResult<Event> NextEvents(Artist artist) { var p1 = new Parameter { Name = LastFmDataAccess.ParamMethod, Value = LastFmDataAccess.MethodArtistGetEvents }; Parameter p2; if (string.IsNullOrEmpty(artist.MusicBrainzId)) { p2 = new Parameter { Name = LastFmDataAccess.ParamArtist, Value = artist.Name }; } else { p2 = new Parameter { Name = LastFmDataAccess.ParamMBID, Value = artist.MusicBrainzId }; } var p3 = new Parameter { Name = LastFmDataAccess.ParamAutocorrect, Value = true.ToString() }; return new LoadLastFmListDataResult<Event>( SearchStringBuilder(new[] { p1, p2, p3 }), "event"); }
public LoadLastFmEntityDataResult<Biography> MoreInfo(Artist artist) { var p1 = new Parameter { Name = LastFmDataAccess.ParamMethod, Value = LastFmDataAccess.MethodArtistGetInfo }; Parameter p2; if (string.IsNullOrEmpty(artist.MusicBrainzId)) { p2 = new Parameter { Name = LastFmDataAccess.ParamArtist, Value = artist.Name }; } else { p2 = new Parameter { Name = LastFmDataAccess.ParamMBID, Value = artist.MusicBrainzId }; } var p3 = new Parameter { Name = LastFmDataAccess.ParamAutocorrect, Value = true.ToString() }; return new LoadLastFmEntityDataResult<Biography>( SearchStringBuilder(new[] {p1, p2, p3}), "bio"); }
public LoadLastFmEntityDataResult<Artist> SingleArtist(string artistId, bool isMusicBrainzId) { var p1 = new Parameter { Name = LastFmDataAccess.ParamMethod, Value = LastFmDataAccess.MethodArtistGetInfo }; Parameter p2; if (isMusicBrainzId) { p2 = new Parameter { Name = LastFmDataAccess.ParamMBID, Value = artistId }; } else { p2 = new Parameter { Name = LastFmDataAccess.ParamArtist, Value = artistId }; } var p3 = new Parameter { Name = LastFmDataAccess.ParamAutocorrect, Value = true.ToString() }; return new LoadLastFmEntityDataResult<Artist>( SearchStringBuilder(new[]{p1, p2, p3}), "artist"); }