public Task <List <Post> > ReloadFeed(Uri url, PostRange range) { return(Task.Run(() => { JObject feedJob = privateGetFeed(url, range, out Uri feedUrl); List <Post> posts = null; if (feedJob != null) { this.FeedUrl = feedUrl; posts = feedJob.SelectToken("$.feed.entry").ToObject <List <Post> >(DefaultSerializer); } return posts; })); }
private static JObject privateGetFeed(Uri url, PostRange range, out Uri feedUrl) { UriBuilder builder = new UriBuilder(url) { Query = string.Format("?t={0}", range.ToString().ToLower()) }; feedUrl = builder.Uri; var xml = new XmlDocument(); xml.Load(feedUrl.AbsoluteUri); return(JObject.Parse(JsonConvert.SerializeXmlNode(xml))); }
public static PostCollection LoadFeed(Uri url, PostRange range) { JObject feedJob = privateGetFeed(url, range, out Uri feedUrl); if (feedJob != null) { var pCol = new PostCollection(feedJob.SelectToken("$.feed.entry").ToObject <List <Post> >(DefaultSerializer)) { FeedUrl = feedUrl }; return(pCol); } else { return(null); } }