public override void HandleRequest()
{
// We need a type!
if (!Request.QueryString.ContainsKey("type"))
{
Response.WriteResponseStart(false);
Response.WriteHeaderLine("asof", "err");
Response.WriteDataLine(DateTime.UtcNow.ToUnixTimestamp(), "Invalid Syntax!");
Response.Send();
return;
}
// Setup Params
if (Request.QueryString.ContainsKey("pid"))
Int32.TryParse(Request.QueryString["pid"], out Pid);
if (Request.QueryString.ContainsKey("id"))
Id = Request.QueryString["id"];
if (Request.QueryString.ContainsKey("before"))
Int32.TryParse(Request.QueryString["before"], out Before);
if (Request.QueryString.ContainsKey("after"))
Int32.TryParse(Request.QueryString["after"], out After);
if (Request.QueryString.ContainsKey("pos"))
Int32.TryParse(Request.QueryString["pos"], out Pos);
Min = (Pos - 1) - Before;
Max = After + 1;
// NOTE: The HttpServer will handle the DbConnectException
using (Database = new StatsDatabase())
{
// Do our requested Task
switch (Request.QueryString["type"])
{
case "score":
DoScore();
break;
case "risingstar":
DoRisingStar();
break;
case "kit":
DoKit();
break;
case "vehicle":
DoVehicles();
break;
case "weapon":
DoWeapons();
break;
default:
//Response.HTTPStatusCode = ASPResponse.HTTPStatus.BadRequest;
Response.Send();
break;
}
}
}