diff options
author | Sean Dague | 2008-04-21 12:42:56 +0000 |
---|---|---|
committer | Sean Dague | 2008-04-21 12:42:56 +0000 |
commit | bf1580fba45df7624180b07599c8170074500c99 (patch) | |
tree | 696a69c94554f0789b123c82fb34c658e9a0b6af /OpenSim/Region/Application/OpenSimMain.cs | |
parent | * Various refactorings. (diff) | |
download | opensim-SC-bf1580fba45df7624180b07599c8170074500c99.zip opensim-SC-bf1580fba45df7624180b07599c8170074500c99.tar.gz opensim-SC-bf1580fba45df7624180b07599c8170074500c99.tar.bz2 opensim-SC-bf1580fba45df7624180b07599c8170074500c99.tar.xz |
From: Dr Scofield <hud@zurich.ibm.com>
the attached patch set is centered around RemoteAdminPlugin and focuses
mainly on making it more robust (i.e. more parameter checking and better
error reporting) but also we've re-implemented the LoadTerrain stuff that
got disabled during the terrain code reworking:
* missing PostInitialize() calls on region modules that were loaded
for regions created via RemoteAdmin's CreateRegion XmlRpc call
* re-implements RemoteAdmin's LoadTerrain XmlRpc call (probably lost
during the TerrainModule rework)
* adds lots more parameter checking and error reporting to RemoteAdmin
* adds a read-only property to RegionApplicationBase so that we can
access the CommsManager
* adds Exceptions to TerrainModule so that we get better error case
feedback (and can report more meaningful errors in turn)
* adds a CheckForTerrainUpdate() call to
TerrainModule.LoadFromFile() to make terrain changes effective
* adds TryGetCurrentScene(LLUUID) to SceneManager so that we can
retrieve Scenes not only by name but also by LLUUID
cheers,
dr scofield
Diffstat (limited to '')
-rw-r--r-- | OpenSim/Region/Application/OpenSimMain.cs | 33 |
1 files changed, 31 insertions, 2 deletions
diff --git a/OpenSim/Region/Application/OpenSimMain.cs b/OpenSim/Region/Application/OpenSimMain.cs index aa08f81..26ae525 100644 --- a/OpenSim/Region/Application/OpenSimMain.cs +++ b/OpenSim/Region/Application/OpenSimMain.cs | |||
@@ -462,7 +462,28 @@ namespace OpenSim | |||
462 | /// <param name="regionInfo"></param> | 462 | /// <param name="regionInfo"></param> |
463 | /// <param name="portadd_flag"></param> | 463 | /// <param name="portadd_flag"></param> |
464 | /// <returns></returns> | 464 | /// <returns></returns> |
465 | public UDPServer CreateRegion(RegionInfo regionInfo, bool portadd_flag) | 465 | public UDPServer CreateRegion(RegionInfo regionInfo, bool portadd_flag) { |
466 | return CreateRegion(regionInfo, portadd_flag, false); | ||
467 | } | ||
468 | |||
469 | /// <summary> | ||
470 | /// Execute the region creation process. This includes setting up scene infrastructure. | ||
471 | /// </summary> | ||
472 | /// <param name="regionInfo"></param> | ||
473 | /// <param name="portadd_flag"></param> | ||
474 | /// <returns></returns> | ||
475 | public UDPServer CreateRegion(RegionInfo regionInfo) { | ||
476 | return CreateRegion(regionInfo, false, true); | ||
477 | } | ||
478 | |||
479 | /// <summary> | ||
480 | /// Execute the region creation process. This includes setting up scene infrastructure. | ||
481 | /// </summary> | ||
482 | /// <param name="regionInfo"></param> | ||
483 | /// <param name="portadd_flag"></param> | ||
484 | /// <param name="do_post_init"></param> | ||
485 | /// <returns></returns> | ||
486 | public UDPServer CreateRegion(RegionInfo regionInfo, bool portadd_flag, bool do_post_init) | ||
466 | { | 487 | { |
467 | int port = regionInfo.InternalEndPoint.Port; | 488 | int port = regionInfo.InternalEndPoint.Port; |
468 | 489 | ||
@@ -487,7 +508,7 @@ namespace OpenSim | |||
487 | 508 | ||
488 | m_log.Info("[MODULES]: Loading Region's modules"); | 509 | m_log.Info("[MODULES]: Loading Region's modules"); |
489 | 510 | ||
490 | m_moduleLoader.PickupModules(scene, "."); | 511 | List<IRegionModule> modules = m_moduleLoader.PickupModules(scene, "."); |
491 | //m_moduleLoader.PickupModules(scene, "ScriptEngines"); | 512 | //m_moduleLoader.PickupModules(scene, "ScriptEngines"); |
492 | //m_moduleLoader.LoadRegionModules(Path.Combine("ScriptEngines", m_scriptEngine), scene); | 513 | //m_moduleLoader.LoadRegionModules(Path.Combine("ScriptEngines", m_scriptEngine), scene); |
493 | 514 | ||
@@ -536,6 +557,14 @@ namespace OpenSim | |||
536 | m_regionData.Add(regionInfo); | 557 | m_regionData.Add(regionInfo); |
537 | udpServer.ServerListener(); | 558 | udpServer.ServerListener(); |
538 | 559 | ||
560 | if (do_post_init) | ||
561 | { | ||
562 | foreach (IRegionModule module in modules) | ||
563 | { | ||
564 | module.PostInitialise(); | ||
565 | } | ||
566 | } | ||
567 | |||
539 | return udpServer; | 568 | return udpServer; |
540 | } | 569 | } |
541 | 570 | ||