aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/Environment
diff options
context:
space:
mode:
Diffstat (limited to 'OpenSim/Region/Environment')
-rw-r--r--OpenSim/Region/Environment/Scenes/Scene.cs17
-rw-r--r--OpenSim/Region/Environment/Scenes/SceneCommunicationService.cs16
2 files changed, 25 insertions, 8 deletions
diff --git a/OpenSim/Region/Environment/Scenes/Scene.cs b/OpenSim/Region/Environment/Scenes/Scene.cs
index c07f718..819815b 100644
--- a/OpenSim/Region/Environment/Scenes/Scene.cs
+++ b/OpenSim/Region/Environment/Scenes/Scene.cs
@@ -1242,6 +1242,9 @@ namespace OpenSim.Region.Environment.Scenes
1242 m_log.Warn("Prim crossing: " + grp.UUID.ToString()); 1242 m_log.Warn("Prim crossing: " + grp.UUID.ToString());
1243 int thisx = (int)RegionInfo.RegionLocX; 1243 int thisx = (int)RegionInfo.RegionLocX;
1244 int thisy = (int)RegionInfo.RegionLocY; 1244 int thisy = (int)RegionInfo.RegionLocY;
1245
1246 int primcrossingXMLmethod = 0;
1247
1245 ulong newRegionHandle = 0; 1248 ulong newRegionHandle = 0;
1246 LLVector3 pos = position; 1249 LLVector3 pos = position;
1247 1250
@@ -1279,7 +1282,7 @@ namespace OpenSim.Region.Environment.Scenes
1279 if (newRegionHandle != 0) 1282 if (newRegionHandle != 0)
1280 { 1283 {
1281 bool successYN = false; 1284 bool successYN = false;
1282 successYN = m_sceneGridService.PrimCrossToNeighboringRegion(newRegionHandle, grp.UUID, m_sceneXmlLoader.SavePrimGroupToXML2String(grp)); 1285 successYN = m_sceneGridService.PrimCrossToNeighboringRegion(newRegionHandle, grp.UUID, m_sceneXmlLoader.SavePrimGroupToXML2String(grp), primcrossingXMLmethod);
1283 if (successYN) 1286 if (successYN)
1284 { 1287 {
1285 // We remove the object here 1288 // We remove the object here
@@ -1306,10 +1309,18 @@ namespace OpenSim.Region.Environment.Scenes
1306 } 1309 }
1307 } 1310 }
1308 1311
1309 public void IncomingInterRegionPrimGroup(ulong regionHandle, LLUUID primID, string objXMLData) 1312 public bool IncomingInterRegionPrimGroup(ulong regionHandle, LLUUID primID, string objXMLData, int XMLMethod)
1310 { 1313 {
1311 m_log.Warn("{[INTERREGION]: A new prim arrived from a neighbor"); 1314 m_log.Warn("{[INTERREGION]: A new prim arrived from a neighbor");
1312 m_sceneXmlLoader.LoadGroupFromXml2String(objXMLData); 1315 if (XMLMethod == 0)
1316 {
1317 m_sceneXmlLoader.LoadGroupFromXml2String(objXMLData);
1318 return true;
1319 }
1320 else
1321 {
1322 return false;
1323 }
1313 1324
1314 } 1325 }
1315 1326
diff --git a/OpenSim/Region/Environment/Scenes/SceneCommunicationService.cs b/OpenSim/Region/Environment/Scenes/SceneCommunicationService.cs
index 7653bf4..db2327e 100644
--- a/OpenSim/Region/Environment/Scenes/SceneCommunicationService.cs
+++ b/OpenSim/Region/Environment/Scenes/SceneCommunicationService.cs
@@ -168,12 +168,16 @@ namespace OpenSim.Region.Environment.Scenes
168 } 168 }
169 } 169 }
170 170
171 protected void IncomingPrimCrossing(ulong regionHandle, LLUUID primID, String objXMLData) 171 protected bool IncomingPrimCrossing(ulong regionHandle, LLUUID primID, String objXMLData, int XMLMethod)
172 { 172 {
173 handlerExpectPrim = OnExpectPrim; 173 handlerExpectPrim = OnExpectPrim;
174 if (handlerExpectPrim != null) 174 if (handlerExpectPrim != null)
175 { 175 {
176 handlerExpectPrim(regionHandle, primID, objXMLData); 176 return handlerExpectPrim(regionHandle, primID, objXMLData, XMLMethod);
177 }
178 else
179 {
180 return false;
177 } 181 }
178 182
179 } 183 }
@@ -342,8 +346,10 @@ namespace OpenSim.Region.Environment.Scenes
342 private void InformNeighboursThatRegionIsUpAsync(RegionInfo region, ulong regionhandle) 346 private void InformNeighboursThatRegionIsUpAsync(RegionInfo region, ulong regionhandle)
343 { 347 {
344 m_log.Info("[INTERGRID]: Starting to inform neighbors that I'm here"); 348 m_log.Info("[INTERGRID]: Starting to inform neighbors that I'm here");
349 //RegionUpData regiondata = new RegionUpData(region.RegionLocX, region.RegionLocY, region.ExternalHostName, region.InternalEndPoint.Port);
350
345 bool regionAccepted = 351 bool regionAccepted =
346 m_commsProvider.InterRegion.RegionUp((new SearializableRegionInfo(region)), regionhandle); 352 m_commsProvider.InterRegion.RegionUp(new SearializableRegionInfo(region), regionhandle);
347 353
348 if (regionAccepted) 354 if (regionAccepted)
349 { 355 {
@@ -605,9 +611,9 @@ namespace OpenSim.Region.Environment.Scenes
605 return m_commsProvider.InterRegion.ExpectAvatarCrossing(regionhandle, agentID, position, isFlying); 611 return m_commsProvider.InterRegion.ExpectAvatarCrossing(regionhandle, agentID, position, isFlying);
606 } 612 }
607 613
608 public bool PrimCrossToNeighboringRegion(ulong regionhandle, LLUUID primID, string objData) 614 public bool PrimCrossToNeighboringRegion(ulong regionhandle, LLUUID primID, string objData, int XMLMethod)
609 { 615 {
610 return m_commsProvider.InterRegion.InformRegionOfPrimCrossing(regionhandle, primID, objData); 616 return m_commsProvider.InterRegion.InformRegionOfPrimCrossing(regionhandle, primID, objData, XMLMethod);
611 } 617 }
612 618
613 619