* Adds the variables passed to the hashtable BaseHttpServer passes in.

* Null check on Sessions_report.
0.6.2-post-fixes
Teravus Ovares 2009-01-08 22:01:57 +00:00
parent 5169b1f19e
commit fcc3325f3b
3 changed files with 32 additions and 13 deletions

View File

@ -1066,6 +1066,9 @@ namespace OpenSim.Framework.Servers
Hashtable keysvals = new Hashtable(); Hashtable keysvals = new Hashtable();
Hashtable headervals = new Hashtable(); Hashtable headervals = new Hashtable();
Hashtable requestVars = new Hashtable();
string host = String.Empty; string host = String.Empty;
string[] querystringkeys = request.QueryString.AllKeys; string[] querystringkeys = request.QueryString.AllKeys;
@ -1079,6 +1082,7 @@ namespace OpenSim.Framework.Servers
foreach (string queryname in querystringkeys) foreach (string queryname in querystringkeys)
{ {
keysvals.Add(queryname, request.QueryString[queryname]); keysvals.Add(queryname, request.QueryString[queryname]);
requestVars.Add(queryname, keysvals[queryname]);
} }
foreach (string headername in rHeaders) foreach (string headername in rHeaders)
@ -1091,7 +1095,10 @@ namespace OpenSim.Framework.Servers
{ {
host = (string)headervals["Host"]; host = (string)headervals["Host"];
} }
keysvals.Add("headers",headervals); keysvals.Add("headers",headervals);
keysvals.Add("querystringkeys", querystringkeys);
keysvals.Add("requestvars", requestVars);
if (keysvals.Contains("method")) if (keysvals.Contains("method"))
{ {

View File

@ -53,27 +53,31 @@ namespace OpenSim.Region.UserStatistics
List<SessionList> lstSessions = new List<SessionList>(); List<SessionList> lstSessions = new List<SessionList>();
Hashtable requestvars = (Hashtable) pParams["RequestVars"]; Hashtable requestvars = (Hashtable) pParams["RequestVars"];
string puserUUID = string.Empty; string puserUUID = string.Empty;
string clientVersionString = string.Empty; string clientVersionString = string.Empty;
int queryparams = 0; int queryparams = 0;
if (requestvars.ContainsKey("UserID")) if (requestvars != null)
{ {
UUID testUUID = UUID.Zero; if (requestvars.ContainsKey("UserID"))
if (UUID.TryParse(requestvars["UserID"].ToString(), out testUUID))
{ {
puserUUID = requestvars["UserID"].ToString(); UUID testUUID = UUID.Zero;
if (UUID.TryParse(requestvars["UserID"].ToString(), out testUUID))
{
puserUUID = requestvars["UserID"].ToString();
}
} }
}
if (requestvars.ContainsKey("VersionString")) if (requestvars.ContainsKey("VersionString"))
{ {
UUID testUUID = UUID.Zero; UUID testUUID = UUID.Zero;
clientVersionString = requestvars["VersionString"].ToString(); clientVersionString = requestvars["VersionString"].ToString();
}
} }
lock (dbConn) lock (dbConn)

View File

@ -203,8 +203,16 @@ namespace OpenSim.Region.UserStatistics
IStatsController rep = reports[regpath]; IStatsController rep = reports[regpath];
Hashtable repParams = new Hashtable(); Hashtable repParams = new Hashtable();
repParams["RequestVars"] = request["requestvars"]; if (request.ContainsKey("requestvars"))
repParams["QueryStringKeys"] = request["querystringkeys"]; repParams["RequestVars"] = request["requestvars"];
else
repParams["RequestVars"] = new Hashtable();
if (request.ContainsKey("querystringkeys"))
repParams["QueryStringKeys"] = request["querystringkeys"];
else
repParams["QueryStringKeys"] = new string[0];
repParams["DatabaseConnection"] = dbConn; repParams["DatabaseConnection"] = dbConn;
repParams["Scenes"] = m_scene; repParams["Scenes"] = m_scene;