static void DeserializeEvent(IDictionary<string, string> item, IEvent evt) { try { evt.Title = item.OptionalString("title") ?? string.Empty; evt.Message = item.OptionalString("message") ?? string.Empty; evt.Category = item.OptionalString("category") ?? string.Empty; evt.Watched = item.OptionalBool("watched") ?? false; var animeID = item.OptionalString("anime-id"); if (!string.IsNullOrWhiteSpace(animeID)) { evt.AnimeID = Guid.Parse(animeID); } evt.Created = DateTime.ParseExact(item["created"], "yyyy-MM-dd-hh:mm:ss", null); } catch (Exception e) { throw new DeserializeFailedException (item, e); } }
static void DeserializeTorrent(IDictionary<string, string> item, ITorrent torrent) { try { torrent.RawTitle = item.RequireString("title"); torrent.CleanTitle = Parsing.NameCleaner.Clean(torrent.RawTitle); torrent.Seeders = item.RequireInt("seeders"); torrent.Leechers = item.RequireInt("leechers"); torrent.ReleaseGroup = item.OptionalString("releaseGroup") ?? string.Empty; torrent.Category = ParseCategory(item.RequireString("category")); } catch (Exception e) { throw new DeserializeFailedException (item, e); } }