public void Serialize(BinaryAPIWriter writer) { if (writer == null) { throw new ArgumentNullException(nameof(writer)); } writer.Write(Placement); writer.Write(Name); writer.Write(OsuUserIds.Count); for (int i = 0; i < OsuUserIds.Count; i++) { writer.Write(OsuUserIds[i]); } }
public void Serialize(BinaryAPIWriter writer) { if (writer == null) { throw new ArgumentNullException(nameof(writer)); } writer.Write(Username); writer.Write(OsuId); writer.Write(BWSRank); writer.Write(TournamentWins); writer.Write(LastPlacement); writer.Write(TournamentsPlayed); writer.Write(BadgeCount); writer.Write(LastUpdated); }
public IHttpContext GetProfile(IHttpContext c) { if (!CheckApiKey(c)) { return(c); } string osuIdStr = c.Request.QueryString["id"]; if (string.IsNullOrEmpty(osuIdStr)) { Respond(HttpStatusCode.NotFound, "id not found", c); return(c); } if (!long.TryParse(osuIdStr, out long osuId)) { Respond(HttpStatusCode.InternalServerError, "Failed to parse id", c); return(c); } using DBContext dbc = new DBContext(); PlayerProfile profile = dbc.PlayerProfile.FirstOrDefault(p => p.OsuId == osuId); if (profile == null) { Respond(HttpStatusCode.NotFound, "Profile not found", c); return(c); } BinaryAPIWriter writer = new BinaryAPIWriter(c); GlobalStatsProfile gsprofile = (GlobalStatsProfile)profile; gsprofile.Serialize(writer); Respond(HttpStatusCode.Ok, "Sent", c); return(c); }
public void Serialize(BinaryAPIWriter writer) { if (writer == null) { throw new ArgumentNullException(nameof(writer)); } writer.Write(HostOsuId); writer.Write(Name); writer.Write(Acronym); writer.Write(Thread); writer.Write(CountryCode); writer.Write(Start); writer.Write(End); writer.Write(RankMin); writer.Write(RankMax); writer.Write(Teams.Count); for (int i = 0; i < Teams.Count; i++) { Teams[i].Serialize(writer); } }