// GET: api/RSS/5 public RssSourse Get(int id) //Returns object with rss flow for specific id { //To do: Gå på parentobj id List <Rss> rsses = new List <Rss>(); RssSourse rssSourse = new RssSourse(); string url = ""; string sourceName = ""; if (id == 1) //NT { url = "http://www.nt.se/nyheter/norrkoping/rss/"; sourceName = "Norrköpings Tidningar"; } else if (id == 2)// Expressen { url = "http://www.expressen.se/Pages/OutboundFeedsPage.aspx?id=3642159&viewstyle=rss"; sourceName = "Expressen"; } else if (id == 3)//SVD { url = "https://www.svd.se/?service=rss"; sourceName = "Svenska Dagbladet"; } rssSourse = GetRssSource(url); rssSourse.rsses = new List <Rss>(); rssSourse.rsses = getRssObjects(url, sourceName).ToList(); return(rssSourse); }
/// <summary> /// Get parent source object (parent) for rss flow. /// </summary> /// <param name="url"></param> /// <returns></returns> private RssSourse GetRssSource(string url) //To do: possible refact to use link instead { XmlReader reader = XmlReader.Create(url); SyndicationFeed feed = SyndicationFeed.Load(reader); reader.Close(); RssSourse rssSourse = new RssSourse(); rssSourse.Title = feed.Title.Text; rssSourse.Description = feed.Description.Text; rssSourse.Copyright = feed.Copyright.Text; rssSourse.Link = feed.Links[0].Uri.ToString(); return(rssSourse); }