using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Xml; using Lastfm; using Lastfm.Services; namespace Lastfm.Services { public class Chart : Base { public Chart(Session session) : base(session) { } public IEnumerable GetHypedArtists(int page = 1, int limit = -1) { RequestParameters parameters = this.getParams(); parameters["page"] = page.ToString(); if (limit > 0) { parameters["limit"] = limit.ToString(); } XmlDocument document = base.request("chart.getHypedArtists", parameters); List list = new List(); foreach (XmlNode node in document.GetElementsByTagName("artist")) { Artist item = new Artist(node, base.Session); list.Add(item); } return list; } internal override RequestParameters getParams() { return new RequestParameters(); } public IEnumerable GetTopArtists(int page = 1, int limit = -1) { RequestParameters parameters = this.getParams(); parameters["page"] = page.ToString(); if (limit > 0) { parameters["limit"] = limit.ToString(); } XmlDocument document = base.request("chart.getTopArtists", parameters); List list = new List(); foreach (XmlNode node in document.GetElementsByTagName("artist")) { Artist artist = new Artist(node, base.Session); int playcount = int.Parse(base.extract(node, "playcount")); list.Add(new TopArtist(artist, playcount)); } return list; } } }