public static void Print(Updates updates) { Console.WriteLine("{0} updated shows (ids) ----", updates.UpdatedSeries.Count); foreach (var show in updates.UpdatedSeries) { Console.WriteLine("show #{0}; {1}", show.Id, show.Timestamp); } Console.WriteLine(); Console.WriteLine("{0} updated episodes (ids) ----", updates.UpdatedEpisodes.Count); foreach (var episode in updates.UpdatedEpisodes) { Console.WriteLine("{0} (serie #{1}); {2}", episode.Id, episode.SerieId, episode.Timestamp); } Console.WriteLine(); Console.WriteLine("{0} updated banners ----", updates.UpdatedBanners.Count); foreach (var banner in updates.UpdatedBanners) { Console.WriteLine("{0} (serie #{1}) - {2}; {3}", banner.Path, banner.SerieId, banner.Format, banner.Timestamp); } }
public UpdatesBuilder(XDocument doc) { if (doc.Root != null) { _updates = new Updates { Time = int.Parse(doc.Root.Attribute("time").Value), UpdatedSeries = doc.Root.Elements("Series") .Select(elt => new UpdatedSerie { Id = int.Parse(elt.Element("id").Value), Time = int.Parse(elt.Element("time").Value) }) .ToList(), UpdatedEpisodes = doc.Root.Elements("Episode") .Select(elt => new UpdatedEpisode { Id = int.Parse(elt.Element("id").Value), SerieId = int.Parse(elt.Element("Series").Value), Time = int.Parse(elt.Element("time").Value) }) .ToList(), UpdatedBanners = doc.Root.Elements("Banner") .Select(elt => new UpdatedBanner { SerieId = int.Parse(elt.Element("Series").Value), Format = elt.Element("format").Value, Language = elt.Elements("language").Select(n => n.Value).FirstOrDefault() ?? string.Empty, Path = elt.Element("path").Value, Type = elt.Element("type").Value, SeasonNumber = elt.Elements("SeasonNumber").Any() ? int.Parse(elt.Element("SeasonNumber").Value) : (int?)null, Time = int.Parse(elt.Element("time").Value) }) .ToList() }; } }
public UpdatesBuilder(XDocument doc) { if (doc.Root != null) { _updates = new Updates { Time = int.Parse(doc.Root.Attribute("time").Value), UpdatedSeries = doc.Root.Elements("Series") .Select(elt => new UpdatedSerie { Id = int.Parse(elt.Element("id").Value), Time = int.Parse(elt.Element("time").Value) }) .ToList(), UpdatedEpisodes = doc.Root.Elements("Episode") .Select(elt => new UpdatedEpisode { Id = int.Parse(elt.Element("id").Value), SerieId = int.Parse(elt.Element("Series").Value), Time = int.Parse(elt.Element("time").Value) }) .ToList(), UpdatedBanners = doc.Root.Elements("Banner") .Select(elt => new UpdatedBanner { SerieId = int.Parse(elt.Element("Series").Value), Format = elt.Element("format").Value, Language = elt.Elements("language").Select(n => n.Value).FirstOrDefault() ?? string.Empty, Path = elt.Element("path").Value, Type = elt.Element("type").Value, SeasonNumber = elt.Elements("SeasonNumber").Any() ? int.Parse(elt.Element("SeasonNumber").Value) : (int?) null, Time = int.Parse(elt.Element("time").Value) }) .ToList() }; } }