mirror of
https://github.com/opensim/opensim.git
synced 2026-08-09 10:46:00 +08:00
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.
This commit is contained in:
@@ -44,7 +44,8 @@ using OpenSim.Region.Environment;
|
||||
using OpenSim.Region.Environment.Interfaces;
|
||||
using OpenSim.Region.Environment.Scenes;
|
||||
using OpenSim.Region.Physics.Manager;
|
||||
|
||||
using Mono.Addins;
|
||||
using Mono.Addins.Description;
|
||||
|
||||
namespace OpenSim
|
||||
{
|
||||
@@ -93,6 +94,8 @@ namespace OpenSim
|
||||
: base()
|
||||
{
|
||||
IConfig startupConfig = configSource.Configs["Startup"];
|
||||
|
||||
AddinManager.Initialize(".");
|
||||
|
||||
string iniFilePath = startupConfig.GetString("inifile", "OpenSim.ini");
|
||||
|
||||
@@ -275,6 +278,13 @@ namespace OpenSim
|
||||
m_httpServer.AddStreamHandler(new SimStatusHandler());
|
||||
}
|
||||
|
||||
MainLog.Instance.Verbose("Plugins", "Loading OpenSim application plugins");
|
||||
foreach (TypeExtensionNode node in AddinManager.GetExtensionNodes("/OpenSim/Startup"))
|
||||
{
|
||||
IApplicationPlugin plugin = (IApplicationPlugin)node.CreateInstance();
|
||||
plugin.Initialise(this);
|
||||
}
|
||||
|
||||
IRegionLoader regionLoader;
|
||||
if (m_config.Configs["Startup"].GetString("region_info_source", "filesystem") == "filesystem")
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user