From 3a953dfc986c70287feb7e08b3ef7bbfc9e02f9e Mon Sep 17 00:00:00 2001 From: Melanie Date: Mon, 28 Dec 2009 01:56:30 +0000 Subject: This is somewhat major-like..... Change the intialization order of Application plugins so that MainServer.Instance gets assigned before RegionModulesController loads the new style shared modules. This is needed because otherwise no new style shared module could register a HTTP method.... if it breaks, you get to keep both pieces --- .../RegionModulesControllerPlugin.cs | 18 +++++++++--------- .../Avatar/InstantMessage/MessageTransferModule.cs | 8 +++++--- .../Avatar/InstantMessage/MuteListModule.cs | 2 +- 3 files changed, 15 insertions(+), 13 deletions(-) (limited to 'OpenSim') diff --git a/OpenSim/ApplicationPlugins/RegionModulesController/RegionModulesControllerPlugin.cs b/OpenSim/ApplicationPlugins/RegionModulesController/RegionModulesControllerPlugin.cs index 6c0c74d..2e883d6 100644 --- a/OpenSim/ApplicationPlugins/RegionModulesController/RegionModulesControllerPlugin.cs +++ b/OpenSim/ApplicationPlugins/RegionModulesController/RegionModulesControllerPlugin.cs @@ -65,9 +65,13 @@ namespace OpenSim.ApplicationPlugins.RegionModulesController public void Initialise (OpenSimBase openSim) { - m_log.DebugFormat("[REGIONMODULES]: Initializing..."); m_openSim = openSim; - openSim.ApplicationRegistry.RegisterInterface(this); + } + + public void PostInitialise () + { + m_log.DebugFormat("[REGIONMODULES]: Initializing..."); + m_openSim.ApplicationRegistry.RegisterInterface(this); // Who we are string id = AddinManager.CurrentAddin.Id; @@ -81,9 +85,9 @@ namespace OpenSim.ApplicationPlugins.RegionModulesController // The [Modules] section in the ini file IConfig modulesConfig = - openSim.ConfigSource.Source.Configs["Modules"]; + m_openSim.ConfigSource.Source.Configs["Modules"]; if (modulesConfig == null) - modulesConfig = openSim.ConfigSource.Source.AddConfig("Modules"); + modulesConfig = m_openSim.ConfigSource.Source.AddConfig("Modules"); // Scan modules and load all that aren't disabled foreach (TypeExtensionNode node in @@ -195,7 +199,7 @@ namespace OpenSim.ApplicationPlugins.RegionModulesController // OK, we're up and running m_sharedInstances.Add(module); - module.Initialise(openSim.ConfigSource.Source); + module.Initialise(m_openSim.ConfigSource.Source); } // Immediately run PostInitialise on shared modules @@ -205,10 +209,6 @@ namespace OpenSim.ApplicationPlugins.RegionModulesController } } - public void PostInitialise () - { - } - #endregion #region IPlugin implementation diff --git a/OpenSim/Region/CoreModules/Avatar/InstantMessage/MessageTransferModule.cs b/OpenSim/Region/CoreModules/Avatar/InstantMessage/MessageTransferModule.cs index b5019f1..2d4b421 100644 --- a/OpenSim/Region/CoreModules/Avatar/InstantMessage/MessageTransferModule.cs +++ b/OpenSim/Region/CoreModules/Avatar/InstantMessage/MessageTransferModule.cs @@ -61,9 +61,6 @@ namespace OpenSim.Region.CoreModules.Avatar.InstantMessage return; } - MainServer.Instance.AddXmlRPCHandler( - "grid_instant_message", processXMLRPCGridInstantMessage); - m_Enabled = true; } @@ -82,6 +79,11 @@ namespace OpenSim.Region.CoreModules.Avatar.InstantMessage public virtual void PostInitialise() { + if (!m_Enabled) + return; + + MainServer.Instance.AddXmlRPCHandler( + "grid_instant_message", processXMLRPCGridInstantMessage); } public virtual void RegionLoaded(Scene scene) diff --git a/OpenSim/Region/CoreModules/Avatar/InstantMessage/MuteListModule.cs b/OpenSim/Region/CoreModules/Avatar/InstantMessage/MuteListModule.cs index 1ff5865..24cbaeb 100644 --- a/OpenSim/Region/CoreModules/Avatar/InstantMessage/MuteListModule.cs +++ b/OpenSim/Region/CoreModules/Avatar/InstantMessage/MuteListModule.cs @@ -37,7 +37,7 @@ using OpenSim.Framework.Client; using OpenSim.Region.Framework.Interfaces; using OpenSim.Region.Framework.Scenes; -namespace OpenSim.Region.CoreModules.Avatar.MuteList +namespace OpenSim.Region.CoreModules.Avatar.InstantMessage { public class MuteListModule : ISharedRegionModule { -- cgit v1.1