public static Gw2StatsObjectives GetGw2StatsObjectives(Gw2StatsObjectives.ObjectiveType type, string id, bool ignoreCache = true) { var parser = new Gw2StatsObjectivesParser(type); ApiRequest request = new ApiRequest(Constants.gw2_objectives); request.AddParameter("type", type.ToString().ToLower()); if (type != Gw2StatsObjectives.ObjectiveType.All) request.AddParameter("id", id); return GwApi.HandleRequest(request, parser, Network, ignoreCache); }
public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) { JObject jobject = JObject.Load(reader); Gw2StatsObjectives obj = new Gw2StatsObjectives(); foreach (var kvp in jobject) { if (kvp.Key == "retrieve_time") { obj.RetriveTime = ((DateTime)kvp.Value).ToUniversalTime(); } else if (kvp.Key == "type") { obj.Type = kvp.Value.ToObject <Gw2StatsObjectives.ObjectiveType>(serializer); } else { Gw2StatsMatch match = kvp.Value.ToObject <Gw2StatsMatch>(); var matchreader = kvp.Value.CreateReader(); JObject jmatch = JObject.Load(matchreader); foreach (var kvp2 in jmatch) { if (kvp2.Key == "match_id") { match.MatchId = kvp2.Value.ToString(); } else { var map = kvp2.Value.ToObject <Gw2StatsMap>(serializer); match.Maps.Add(map.MapId, map); } } var temp = kvp.Value; obj.Matches.Add(kvp.Key, match); } } return(obj); }
public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) { JObject jobject = JObject.Load(reader); Gw2StatsObjectives obj = new Gw2StatsObjectives(); foreach (var kvp in jobject) { if (kvp.Key == "retrieve_time") { obj.RetriveTime = ((DateTime)kvp.Value).ToUniversalTime(); } else if (kvp.Key == "type") obj.Type = kvp.Value.ToObject<Gw2StatsObjectives.ObjectiveType>(serializer); else { Gw2StatsMatch match = kvp.Value.ToObject<Gw2StatsMatch>(); var matchreader = kvp.Value.CreateReader(); JObject jmatch = JObject.Load(matchreader); foreach (var kvp2 in jmatch) { if (kvp2.Key == "match_id") match.MatchId = kvp2.Value.ToString(); else { var map = kvp2.Value.ToObject<Gw2StatsMap>(serializer); match.Maps.Add(map.MapId, map); } } var temp = kvp.Value; obj.Matches.Add(kvp.Key, match); } } return obj; }
public static Gw2StatsObjectives GetGw2StatsObjectives(Gw2StatsObjectives.ObjectiveType type, int id, bool ignoreCache = true) { return GetGw2StatsObjectives(type, id.ToString(), ignoreCache); }