*Parcels and their access lists now store over multiple sessions when the datastore is sqlite

This commit is contained in:
mingchen
2007-12-18 17:42:02 +00:00
parent f79a500621
commit 128f2b1e1b
7 changed files with 335 additions and 13 deletions

View File

@@ -51,7 +51,7 @@ namespace OpenSim.Region.Environment.Interfaces
double[,] LoadTerrain(LLUUID regionID);
void StoreLandObject(Land Parcel,LLUUID regionUUID);
void RemoveLandObject(uint ID, LLUUID regionUUID);
void RemoveLandObject(LLUUID globalID);
List<Framework.LandData> LoadLandObjects(LLUUID regionUUID);
void Shutdown();

View File

@@ -78,7 +78,7 @@ namespace OpenSim.Region.Environment.LandManagement
#region Events and Triggers
public delegate void LandObjectAdded(Land newParcel, LLUUID regionUUID);
public delegate void LandObjectRemoved(uint localParcelID, LLUUID regionUUID);
public delegate void LandObjectRemoved(LLUUID globalID);
public event LandObjectAdded OnLandObjectAdded;
public event LandObjectRemoved OnLandObjectRemoved;
@@ -90,16 +90,16 @@ namespace OpenSim.Region.Environment.LandManagement
OnLandObjectAdded(newParcel, m_scene.RegionInfo.RegionID);
}
}
public void triggerLandObjectRemoved(uint localParcelID)
public void triggerLandObjectRemoved(LLUUID globalID)
{
if (OnLandObjectRemoved != null)
{
OnLandObjectRemoved(localParcelID, m_scene.RegionInfo.RegionID);
OnLandObjectRemoved(globalID);
}
}
public void triggerLandObjectUpdated(uint localParcelID, Land newParcel)
{
triggerLandObjectRemoved(localParcelID);
//triggerLandObjectRemoved(localParcelID);
triggerLandObjectAdded(newParcel);
}
@@ -217,8 +217,9 @@ namespace OpenSim.Region.Environment.LandManagement
}
}
}
triggerLandObjectRemoved(landList[local_id].landData.globalID);
landList.Remove(local_id);
triggerLandObjectRemoved((uint)local_id);
}
public void updateLandObject(int local_id, LandData newData)
@@ -250,6 +251,7 @@ namespace OpenSim.Region.Environment.LandManagement
}
removeLandObject(slave.landData.localID);
updateLandObject(master.landData.localID, master.landData);
}
/// <summary>
@@ -351,6 +353,7 @@ namespace OpenSim.Region.Environment.LandManagement
//Now add the new land object
Land result = addLandObject(newLand);
updateLandObject(startLandObject.landData.localID,startLandObject.landData);
result.sendLandUpdateToAvatarsOverMe();