Added a new column (SceneGroupID) to sqlite3 table (sqlite3-prims.sql) so that we can tell what prims belong to the same SceneObjectGroup. If sdague has a different method in mind when he gets back then he can change it then.
parent
cea2e45da9
commit
822881eac5
|
@ -127,6 +127,7 @@ namespace OpenSim.Framework.Data.DB4o
|
||||||
{
|
{
|
||||||
userProfiles.Add(row.UUID, row);
|
userProfiles.Add(row.UUID, row);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
database.Close();
|
database.Close();
|
||||||
}
|
}
|
||||||
|
|
|
@ -121,23 +121,19 @@ namespace OpenSim
|
||||||
|
|
||||||
base.StartUp();
|
base.StartUp();
|
||||||
|
|
||||||
if (!m_sandbox)
|
|
||||||
{
|
|
||||||
m_httpServer.AddStreamHandler(new SimStatusHandler());
|
|
||||||
}
|
|
||||||
|
|
||||||
if (m_sandbox)
|
if (m_sandbox)
|
||||||
{
|
{
|
||||||
CommunicationsLocal localComms = new CommunicationsLocal(m_networkServersInfo, m_httpServer, m_assetCache, standaloneAuthenticate);
|
CommunicationsLocal localComms = new CommunicationsLocal(m_networkServersInfo, m_httpServer, m_assetCache, standaloneAuthenticate);
|
||||||
m_commsManager = localComms;
|
m_commsManager = localComms;
|
||||||
if(standaloneAuthenticate)
|
if(standaloneAuthenticate)
|
||||||
{
|
{
|
||||||
this.CreateAccount = localComms.do_create;
|
this.CreateAccount = localComms.doCreate;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
m_commsManager = new CommunicationsOGS1(m_networkServersInfo, m_httpServer, m_assetCache);
|
m_commsManager = new CommunicationsOGS1(m_networkServersInfo, m_httpServer, m_assetCache);
|
||||||
|
m_httpServer.AddStreamHandler(new SimStatusHandler());
|
||||||
}
|
}
|
||||||
|
|
||||||
string regionConfigPath = Path.Combine(Util.configDir(), "Regions");
|
string regionConfigPath = Path.Combine(Util.configDir(), "Regions");
|
||||||
|
@ -326,11 +322,6 @@ namespace OpenSim
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case "quit":
|
|
||||||
case "shutdown":
|
|
||||||
Shutdown();
|
|
||||||
break;
|
|
||||||
|
|
||||||
case "create":
|
case "create":
|
||||||
if (CreateAccount != null)
|
if (CreateAccount != null)
|
||||||
{
|
{
|
||||||
|
@ -338,6 +329,11 @@ namespace OpenSim
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
case "quit":
|
||||||
|
case "shutdown":
|
||||||
|
Shutdown();
|
||||||
|
break;
|
||||||
|
|
||||||
default:
|
default:
|
||||||
m_log.Error("Unknown command");
|
m_log.Error("Unknown command");
|
||||||
break;
|
break;
|
||||||
|
|
|
@ -56,7 +56,7 @@ namespace OpenSim.Region.Communications.Local
|
||||||
this.SandBoxServices.AddNewSession(regionHandle, login);
|
this.SandBoxServices.AddNewSession(regionHandle, login);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void do_create(string what)
|
public void doCreate(string what)
|
||||||
{
|
{
|
||||||
switch (what)
|
switch (what)
|
||||||
{
|
{
|
||||||
|
|
|
@ -81,6 +81,7 @@ namespace OpenSim.DataStore.MonoSqliteStorage
|
||||||
data.Add("ParentID", DbType.Int32);
|
data.Add("ParentID", DbType.Int32);
|
||||||
data.Add("CreationDate", DbType.Int32);
|
data.Add("CreationDate", DbType.Int32);
|
||||||
data.Add("Name", DbType.String);
|
data.Add("Name", DbType.String);
|
||||||
|
data.Add("SceneGroupID", DbType.String);
|
||||||
// various text fields
|
// various text fields
|
||||||
data.Add("Text", DbType.String);
|
data.Add("Text", DbType.String);
|
||||||
data.Add("Description", DbType.String);
|
data.Add("Description", DbType.String);
|
||||||
|
@ -305,12 +306,14 @@ namespace OpenSim.DataStore.MonoSqliteStorage
|
||||||
return prim;
|
return prim;
|
||||||
}
|
}
|
||||||
|
|
||||||
private void fillPrimRow(DataRow row, SceneObjectPart prim)
|
private void fillPrimRow(DataRow row, SceneObjectPart prim, LLUUID sceneGroupID)
|
||||||
{
|
{
|
||||||
|
Console.WriteLine("scene Group for this prim is " + sceneGroupID);
|
||||||
row["UUID"] = prim.UUID;
|
row["UUID"] = prim.UUID;
|
||||||
row["ParentID"] = prim.ParentID;
|
row["ParentID"] = prim.ParentID;
|
||||||
row["CreationDate"] = prim.CreationDate;
|
row["CreationDate"] = prim.CreationDate;
|
||||||
row["Name"] = prim.PartName;
|
row["Name"] = prim.PartName;
|
||||||
|
row["SceneGroupID"] = sceneGroupID; // the UUID of the root part for this SceneObjectGroup
|
||||||
// various text fields
|
// various text fields
|
||||||
row["Text"] = prim.Text;
|
row["Text"] = prim.Text;
|
||||||
row["Description"] = prim.Description;
|
row["Description"] = prim.Description;
|
||||||
|
@ -434,7 +437,7 @@ namespace OpenSim.DataStore.MonoSqliteStorage
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private void addPrim(SceneObjectPart prim)
|
private void addPrim(SceneObjectPart prim, LLUUID sceneGroupID)
|
||||||
{
|
{
|
||||||
DataTable prims = ds.Tables["prims"];
|
DataTable prims = ds.Tables["prims"];
|
||||||
DataTable shapes = ds.Tables["primshapes"];
|
DataTable shapes = ds.Tables["primshapes"];
|
||||||
|
@ -442,10 +445,10 @@ namespace OpenSim.DataStore.MonoSqliteStorage
|
||||||
DataRow primRow = prims.Rows.Find(prim.UUID);
|
DataRow primRow = prims.Rows.Find(prim.UUID);
|
||||||
if (primRow == null) {
|
if (primRow == null) {
|
||||||
primRow = prims.NewRow();
|
primRow = prims.NewRow();
|
||||||
fillPrimRow(primRow, prim);
|
fillPrimRow(primRow, prim, sceneGroupID);
|
||||||
prims.Rows.Add(primRow);
|
prims.Rows.Add(primRow);
|
||||||
} else {
|
} else {
|
||||||
fillPrimRow(primRow, prim);
|
fillPrimRow(primRow, prim, sceneGroupID);
|
||||||
}
|
}
|
||||||
|
|
||||||
DataRow shapeRow = shapes.Rows.Find(prim.UUID);
|
DataRow shapeRow = shapes.Rows.Find(prim.UUID);
|
||||||
|
@ -462,7 +465,7 @@ namespace OpenSim.DataStore.MonoSqliteStorage
|
||||||
{
|
{
|
||||||
foreach (SceneObjectPart prim in obj.Children.Values)
|
foreach (SceneObjectPart prim in obj.Children.Values)
|
||||||
{
|
{
|
||||||
addPrim(prim);
|
addPrim(prim, obj.UUID);
|
||||||
}
|
}
|
||||||
|
|
||||||
MainLog.Instance.Verbose("Attempting to do database update....");
|
MainLog.Instance.Verbose("Attempting to do database update....");
|
||||||
|
|
|
@ -12,6 +12,7 @@ create table prims (
|
||||||
ParentID integer default 0, -- this.ParentID
|
ParentID integer default 0, -- this.ParentID
|
||||||
CreationDate integer, -- this.CreationDate
|
CreationDate integer, -- this.CreationDate
|
||||||
Name varchar(256),
|
Name varchar(256),
|
||||||
|
SceneGroupID char(36),
|
||||||
-- various text fields
|
-- various text fields
|
||||||
Text varchar(256),
|
Text varchar(256),
|
||||||
Description varchar(256),
|
Description varchar(256),
|
||||||
|
|
Loading…
Reference in New Issue