aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/Application
diff options
context:
space:
mode:
authorMW2007-11-04 13:48:15 +0000
committerMW2007-11-04 13:48:15 +0000
commit039f2c46c057569463ba970f4b3f33990debf7e2 (patch)
treec73edc783228c43080a5a0878fd8f8b62af5b487 /OpenSim/Region/Application
parentadd a IAssetProvider.CommitAssets() call to the grid asset server, when a ass... (diff)
downloadopensim-SC_OLD-039f2c46c057569463ba970f4b3f33990debf7e2.zip
opensim-SC_OLD-039f2c46c057569463ba970f4b3f33990debf7e2.tar.gz
opensim-SC_OLD-039f2c46c057569463ba970f4b3f33990debf7e2.tar.bz2
opensim-SC_OLD-039f2c46c057569463ba970f4b3f33990debf7e2.tar.xz
Added support for OpenSim application plugins (as requested by Adam), which use Mono.addins for loading/management. (which is a pure .net solution so works on both Mono and MS .net, and is under the MIT license, will add the source code for the library later). I also suggest we look into switching to using Mono.addins for our Region module loading management.
A little bit more refactoring of Scene.
Diffstat (limited to 'OpenSim/Region/Application')
-rw-r--r--OpenSim/Region/Application/OpenSimMain.cs12
1 files changed, 11 insertions, 1 deletions
diff --git a/OpenSim/Region/Application/OpenSimMain.cs b/OpenSim/Region/Application/OpenSimMain.cs
index b8a8f42..666e0d2 100644
--- a/OpenSim/Region/Application/OpenSimMain.cs
+++ b/OpenSim/Region/Application/OpenSimMain.cs
@@ -44,7 +44,8 @@ using OpenSim.Region.Environment;
44using OpenSim.Region.Environment.Interfaces; 44using OpenSim.Region.Environment.Interfaces;
45using OpenSim.Region.Environment.Scenes; 45using OpenSim.Region.Environment.Scenes;
46using OpenSim.Region.Physics.Manager; 46using OpenSim.Region.Physics.Manager;
47 47using Mono.Addins;
48using Mono.Addins.Description;
48 49
49namespace OpenSim 50namespace OpenSim
50{ 51{
@@ -93,6 +94,8 @@ namespace OpenSim
93 : base() 94 : base()
94 { 95 {
95 IConfig startupConfig = configSource.Configs["Startup"]; 96 IConfig startupConfig = configSource.Configs["Startup"];
97
98 AddinManager.Initialize(".");
96 99
97 string iniFilePath = startupConfig.GetString("inifile", "OpenSim.ini"); 100 string iniFilePath = startupConfig.GetString("inifile", "OpenSim.ini");
98 101
@@ -275,6 +278,13 @@ namespace OpenSim
275 m_httpServer.AddStreamHandler(new SimStatusHandler()); 278 m_httpServer.AddStreamHandler(new SimStatusHandler());
276 } 279 }
277 280
281 MainLog.Instance.Verbose("Plugins", "Loading OpenSim application plugins");
282 foreach (TypeExtensionNode node in AddinManager.GetExtensionNodes("/OpenSim/Startup"))
283 {
284 IApplicationPlugin plugin = (IApplicationPlugin)node.CreateInstance();
285 plugin.Initialise(this);
286 }
287
278 IRegionLoader regionLoader; 288 IRegionLoader regionLoader;
279 if (m_config.Configs["Startup"].GetString("region_info_source", "filesystem") == "filesystem") 289 if (m_config.Configs["Startup"].GetString("region_info_source", "filesystem") == "filesystem")
280 { 290 {