From f388a4725477b2e3238ccf19ea18dd05a98cdca0 Mon Sep 17 00:00:00 2001
From: MW
Date: Fri, 31 Aug 2007 12:19:36 +0000
Subject: Added a Debug method to the Console/log class that has the
Conditional attribute (set to "DEBUG"), so we can use that for writing extra
debug info to the console. [for anyone who doesn't know about the Conditional
attribute, it is a attribute that can be set on a method, and then any call
to that method will on be compiled if the terms of that condition are met, ie
is this case only if "DEBUG" is true. So its a cleaner implementation of the
#if #endif directives]. A few other minor changes.
---
OpenSim/Region/Environment/ModuleLoader.cs | 24 +++++++++++++--
OpenSim/Region/Environment/Modules/ChatModule.cs | 1 +
.../Region/Environment/Modules/FriendsModule.cs | 27 ++++++++++++++++-
OpenSim/Region/Environment/Modules/GroupsModule.cs | 35 ++++++++++++++++++++++
.../Environment/Modules/InstantMessageModule.cs | 27 ++++++++++++++++-
.../Region/Environment/Modules/InventoryModule.cs | 27 ++++++++++++++++-
OpenSim/Region/Environment/Scenes/Scene.cs | 2 +-
7 files changed, 136 insertions(+), 7 deletions(-)
create mode 100644 OpenSim/Region/Environment/Modules/GroupsModule.cs
(limited to 'OpenSim/Region/Environment')
diff --git a/OpenSim/Region/Environment/ModuleLoader.cs b/OpenSim/Region/Environment/ModuleLoader.cs
index dbe43d5..1787a57 100644
--- a/OpenSim/Region/Environment/ModuleLoader.cs
+++ b/OpenSim/Region/Environment/ModuleLoader.cs
@@ -23,7 +23,7 @@ namespace OpenSim.Region.Environment
/// Really just a test method for loading a set of currently internal modules
///
///
- public void LoadInternalModules(Scene scene)
+ public void CreateDefaultModules(Scene scene)
{
//Testing IRegionModule ideas
XferModule xferManager = new XferModule();
@@ -40,12 +40,30 @@ namespace OpenSim.Region.Environment
this.LoadModule("OpenSim.Region.ExtensionsScriptModule.dll", "ExtensionsScriptingModule", scene);
- // Post Initialise Modules
+ // Post Initialise Modules, which most likely shouldn't be here
+ // but should rather be in a separate method that is called after all modules are loaded/created/intialised
xferManager.PostInitialise();
- // chatModule.PostInitialise(); //for now leave this disabled as it would start up a partially working irc bot
+ // chatModule.PostInitialise(); //for now leave this disabled as it would start up a partially working irc bot
avatarProfiles.PostInitialise();
}
+ ///
+ /// Loads/initialises a Module instance that can be used by mutliple Regions
+ ///
+ ///
+ ///
+ ///
+ public void LoadSharedModule(string dllName, string moduleName, Scene scene)
+ {
+
+ }
+
+ ///
+ /// Loads a external Module (if not already loaded) and creates a new instance of it for the passed Scene.
+ ///
+ ///
+ ///
+ ///
public void LoadModule(string dllName, string moduleName, Scene scene)
{
Assembly pluginAssembly = null;
diff --git a/OpenSim/Region/Environment/Modules/ChatModule.cs b/OpenSim/Region/Environment/Modules/ChatModule.cs
index c26a1a5..752cde4 100644
--- a/OpenSim/Region/Environment/Modules/ChatModule.cs
+++ b/OpenSim/Region/Environment/Modules/ChatModule.cs
@@ -10,6 +10,7 @@ using OpenSim.Region.Environment.Scenes;
using OpenSim.Region.Environment.Interfaces;
using OpenSim.Framework.Interfaces;
using OpenSim.Framework.Utilities;
+using OpenSim.Framework.Console;
namespace OpenSim.Region.Environment.Modules
{
diff --git a/OpenSim/Region/Environment/Modules/FriendsModule.cs b/OpenSim/Region/Environment/Modules/FriendsModule.cs
index 960d68f..f952bb2 100644
--- a/OpenSim/Region/Environment/Modules/FriendsModule.cs
+++ b/OpenSim/Region/Environment/Modules/FriendsModule.cs
@@ -1,10 +1,35 @@
using System;
using System.Collections.Generic;
using System.Text;
+using libsecondlife;
+using OpenSim.Framework.Interfaces;
+using OpenSim.Region.Environment.Scenes;
+using OpenSim.Region.Environment.Interfaces;
+
namespace OpenSim.Region.Environment.Modules
{
- public class FriendsModule
+ public class FriendsModule : IRegionModule
{
+ private Scene m_scene;
+
+ public void Initialise(Scene scene)
+ {
+ m_scene = scene;
+ }
+
+ public void PostInitialise()
+ {
+
+ }
+
+ public void CloseDown()
+ {
+ }
+
+ public string GetName()
+ {
+ return "FriendsModule";
+ }
}
}
diff --git a/OpenSim/Region/Environment/Modules/GroupsModule.cs b/OpenSim/Region/Environment/Modules/GroupsModule.cs
new file mode 100644
index 0000000..607b395
--- /dev/null
+++ b/OpenSim/Region/Environment/Modules/GroupsModule.cs
@@ -0,0 +1,35 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+using libsecondlife;
+using OpenSim.Framework.Interfaces;
+using OpenSim.Region.Environment.Scenes;
+using OpenSim.Region.Environment.Interfaces;
+
+namespace OpenSim.Region.Environment.Modules
+{
+ public class GroupsModule : IRegionModule
+ {
+ private Scene m_scene;
+
+ public void Initialise(Scene scene)
+ {
+ m_scene = scene;
+ }
+
+ public void PostInitialise()
+ {
+
+ }
+
+ public void CloseDown()
+ {
+ }
+
+ public string GetName()
+ {
+ return "GroupsModule";
+ }
+ }
+}
+
diff --git a/OpenSim/Region/Environment/Modules/InstantMessageModule.cs b/OpenSim/Region/Environment/Modules/InstantMessageModule.cs
index ef2f224..9c09c48 100644
--- a/OpenSim/Region/Environment/Modules/InstantMessageModule.cs
+++ b/OpenSim/Region/Environment/Modules/InstantMessageModule.cs
@@ -1,10 +1,35 @@
using System;
using System.Collections.Generic;
using System.Text;
+using libsecondlife;
+using OpenSim.Framework.Interfaces;
+using OpenSim.Region.Environment.Scenes;
+using OpenSim.Region.Environment.Interfaces;
+
namespace OpenSim.Region.Environment.Modules
{
- public class InstantMessageModule
+ public class InstantMessageModule :IRegionModule
{
+ private Scene m_scene;
+
+ public void Initialise(Scene scene)
+ {
+ m_scene = scene;
+ }
+
+ public void PostInitialise()
+ {
+
+ }
+
+ public void CloseDown()
+ {
+ }
+
+ public string GetName()
+ {
+ return "InstantMessageModule";
+ }
}
}
diff --git a/OpenSim/Region/Environment/Modules/InventoryModule.cs b/OpenSim/Region/Environment/Modules/InventoryModule.cs
index 3659292..94e7ba7 100644
--- a/OpenSim/Region/Environment/Modules/InventoryModule.cs
+++ b/OpenSim/Region/Environment/Modules/InventoryModule.cs
@@ -1,10 +1,35 @@
using System;
using System.Collections.Generic;
using System.Text;
+using libsecondlife;
+using OpenSim.Framework.Interfaces;
+using OpenSim.Region.Environment.Scenes;
+using OpenSim.Region.Environment.Interfaces;
+
namespace OpenSim.Region.Environment.Modules
{
- public class InventoryModule
+ public class InventoryModule :IRegionModule
{
+ private Scene m_scene;
+
+ public void Initialise(Scene scene)
+ {
+ m_scene = scene;
+ }
+
+ public void PostInitialise()
+ {
+
+ }
+
+ public void CloseDown()
+ {
+ }
+
+ public string GetName()
+ {
+ return "InventoryModule";
+ }
}
}
diff --git a/OpenSim/Region/Environment/Scenes/Scene.cs b/OpenSim/Region/Environment/Scenes/Scene.cs
index 92f26ef..46fc86b 100644
--- a/OpenSim/Region/Environment/Scenes/Scene.cs
+++ b/OpenSim/Region/Environment/Scenes/Scene.cs
@@ -170,7 +170,7 @@ namespace OpenSim.Region.Environment.Scenes
m_permissionManager = new PermissionManager(this);
MainLog.Instance.Verbose("Loading Region Modules");
- m_moduleLoader.LoadInternalModules(this);
+ m_moduleLoader.CreateDefaultModules(this);
m_eventManager.OnParcelPrimCountAdd +=
m_LandManager.addPrimToLandPrimCounts;
--
cgit v1.1