* Commented out GridManager lines until they are checked into SVN
* Added new GetProfilesInRange(x,y,x,y) data function to return sim profiles between certain coordinates (for use with World Map information, etc). Implemented in GridServer.Data.Mysql - stub functions placed in other data providers.zircon^2
parent
59e6718482
commit
3ee195b1e6
|
@ -15,6 +15,11 @@ namespace OpenGrid.Framework.Data.DB4o
|
|||
manager = new DB4oGridManager("gridserver.yap");
|
||||
}
|
||||
|
||||
public SimProfileData[] GetProfilesInRange(uint a, uint b, uint c, uint d)
|
||||
{
|
||||
return null;
|
||||
}
|
||||
|
||||
public SimProfileData GetProfileByHandle(ulong handle) {
|
||||
lock (manager.simProfiles)
|
||||
{
|
||||
|
|
|
@ -35,6 +35,11 @@ namespace OpenGrid.Framework.Data.MSSQL
|
|||
return "0.1";
|
||||
}
|
||||
|
||||
public SimProfileData[] GetProfilesInRange(uint a, uint b, uint c, uint d)
|
||||
{
|
||||
return null;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Returns a sim profile from it's location
|
||||
/// </summary>
|
||||
|
|
|
@ -14,7 +14,7 @@ namespace OpenGrid.Framework.Data.MySQL
|
|||
/// </summary>
|
||||
public void Initialise()
|
||||
{
|
||||
database = new MySQLManager("server", "database", "username", "password", "false");
|
||||
database = new MySQLManager("localhost", "database", "username", "password", "false");
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
|
@ -35,6 +35,43 @@ namespace OpenGrid.Framework.Data.MySQL
|
|||
return "0.1";
|
||||
}
|
||||
|
||||
public SimProfileData[] GetProfilesInRange(uint xmin, uint ymin, uint xmax, uint ymax)
|
||||
{
|
||||
try
|
||||
{
|
||||
lock (database)
|
||||
{
|
||||
Dictionary<string, string> param = new Dictionary<string, string>();
|
||||
param["?xmin"] = xmin.ToString();
|
||||
param["?ymin"] = ymin.ToString();
|
||||
param["?xmax"] = xmax.ToString();
|
||||
param["?ymax"] = ymax.ToString();
|
||||
|
||||
System.Data.IDbCommand result = database.Query("SELECT * FROM regions WHERE locX >= ?xmin AND locX <= ?xmax AND locY >= ?ymin AND locY <= ?ymax", param);
|
||||
System.Data.IDataReader reader = result.ExecuteReader();
|
||||
|
||||
SimProfileData row;
|
||||
|
||||
List<SimProfileData> rows = new List<SimProfileData>();
|
||||
|
||||
while ((row = database.getSimRow(reader)) != null)
|
||||
{
|
||||
rows.Add(row);
|
||||
}
|
||||
reader.Close();
|
||||
result.Dispose();
|
||||
|
||||
return rows.ToArray();
|
||||
|
||||
}
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
Console.WriteLine(e.ToString());
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Returns a sim profile from it's location
|
||||
/// </summary>
|
||||
|
|
|
@ -121,7 +121,6 @@ namespace OpenGrid.Framework.Data.MySQL
|
|||
}
|
||||
else
|
||||
{
|
||||
throw new Exception("Unable to find region at coordinates");
|
||||
return null;
|
||||
}
|
||||
return retval;
|
||||
|
|
|
@ -35,6 +35,11 @@ namespace OpenGrid.Framework.Data.SQLite
|
|||
return "0.1";
|
||||
}
|
||||
|
||||
public SimProfileData[] GetProfilesInRange(uint a, uint b, uint c, uint d)
|
||||
{
|
||||
return null;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Returns a sim profile from it's location
|
||||
/// </summary>
|
||||
|
|
|
@ -31,6 +31,16 @@ namespace OpenGrid.Framework.Data
|
|||
/// <returns>A sim profile</returns>
|
||||
SimProfileData GetProfileByLLUUID(libsecondlife.LLUUID UUID);
|
||||
|
||||
/// <summary>
|
||||
/// Returns all profiles within the specified range
|
||||
/// </summary>
|
||||
/// <param name="Xmin">Minimum sim coordinate (X)</param>
|
||||
/// <param name="Ymin">Minimum sim coordinate (Y)</param>
|
||||
/// <param name="Xmax">Maximum sim coordinate (X)</param>
|
||||
/// <param name="Ymin">Maximum sim coordinate (Y)</param>
|
||||
/// <returns>An array containing all the sim profiles in the specified range</returns>
|
||||
SimProfileData[] GetProfilesInRange(uint Xmin, uint Ymin, uint Xmax, uint Ymax);
|
||||
|
||||
/// <summary>
|
||||
/// Authenticates a sim by use of it's recv key.
|
||||
/// WARNING: Insecure
|
||||
|
|
|
@ -115,7 +115,7 @@ namespace OpenGridServices.GridServer
|
|||
|
||||
m_console.WriteLine(OpenSim.Framework.Console.LogPriority.LOW,"Main.cs:Startup() - Starting HTTP process");
|
||||
BaseHttpServer httpServer = new BaseHttpServer(8001);
|
||||
GridManagementAgent GridManagerAgent = new GridManagementAgent(httpServer,"gridserver",Cfg.SimSendKey,Cfg.SimRecvKey,managercallback);
|
||||
//GridManagementAgent GridManagerAgent = new GridManagementAgent(httpServer,"gridserver",Cfg.SimSendKey,Cfg.SimRecvKey,managercallback);
|
||||
|
||||
httpServer.AddXmlRPCHandler("simulator_login", m_gridManager.XmlRpcLoginToSimulatorMethod);
|
||||
|
||||
|
|
Loading…
Reference in New Issue