aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/ApplicationPlugins/RegionModulesController/RegionModulesControllerPlugin.cs
diff options
context:
space:
mode:
Diffstat (limited to 'OpenSim/ApplicationPlugins/RegionModulesController/RegionModulesControllerPlugin.cs')
-rw-r--r--OpenSim/ApplicationPlugins/RegionModulesController/RegionModulesControllerPlugin.cs33
1 files changed, 29 insertions, 4 deletions
diff --git a/OpenSim/ApplicationPlugins/RegionModulesController/RegionModulesControllerPlugin.cs b/OpenSim/ApplicationPlugins/RegionModulesController/RegionModulesControllerPlugin.cs
index 13cb34c..ddc37ed 100644
--- a/OpenSim/ApplicationPlugins/RegionModulesController/RegionModulesControllerPlugin.cs
+++ b/OpenSim/ApplicationPlugins/RegionModulesController/RegionModulesControllerPlugin.cs
@@ -93,7 +93,7 @@ namespace OpenSim.ApplicationPlugins.RegionModulesController
93 { 93 {
94 // Get the config string 94 // Get the config string
95 string moduleString = 95 string moduleString =
96 modulesConfig.GetString(node.Id, String.Empty); 96 modulesConfig.GetString("Setup_" + node.Id, String.Empty);
97 97
98 // We have a selector 98 // We have a selector
99 if (moduleString != String.Empty) 99 if (moduleString != String.Empty)
@@ -121,6 +121,31 @@ namespace OpenSim.ApplicationPlugins.RegionModulesController
121 } 121 }
122 else if (node.Type.GetInterface(typeof(INonSharedRegionModule).ToString()) != null) 122 else if (node.Type.GetInterface(typeof(INonSharedRegionModule).ToString()) != null)
123 { 123 {
124 // Get the config string
125 string moduleString =
126 modulesConfig.GetString("Setup_" + node.Id, String.Empty);
127
128 // We have a selector
129 if (moduleString != String.Empty)
130 {
131 // Allow disabling modules even if they don't have
132 // support for it
133 if (moduleString == "disabled")
134 continue;
135
136 // Split off port, if present
137 string[] moduleParts = moduleString.Split(new char[] {'/'}, 2);
138 // Format is [port/][class]
139 string className = moduleParts[0];
140 if (moduleParts.Length > 1)
141 className = moduleParts[1];
142
143 // Match the class name if given
144 if (className != String.Empty &&
145 node.Type.ToString() != className)
146 continue;
147 }
148
124 m_log.DebugFormat("[REGIONMODULES]: Found non-shared region module {0}, class {1}", node.Id, node.Type); 149 m_log.DebugFormat("[REGIONMODULES]: Found non-shared region module {0}, class {1}", node.Id, node.Type);
125 m_nonSharedModules.Add(node); 150 m_nonSharedModules.Add(node);
126 } 151 }
@@ -137,11 +162,11 @@ namespace OpenSim.ApplicationPlugins.RegionModulesController
137 // 162 //
138 foreach (TypeExtensionNode node in m_sharedModules) 163 foreach (TypeExtensionNode node in m_sharedModules)
139 { 164 {
140 Object[] ctorArgs = new Object[] {0}; 165 Object[] ctorArgs = new Object[] {(uint)0};
141 166
142 // Read the config again 167 // Read the config again
143 string moduleString = 168 string moduleString =
144 modulesConfig.GetString(node.Id, String.Empty); 169 modulesConfig.GetString("Setup_" + node.Id, String.Empty);
145 170
146 // Get the port number, if there is one 171 // Get the port number, if there is one
147 if (moduleString != String.Empty) 172 if (moduleString != String.Empty)
@@ -302,7 +327,7 @@ namespace OpenSim.ApplicationPlugins.RegionModulesController
302 327
303 // Read the config 328 // Read the config
304 string moduleString = 329 string moduleString =
305 modulesConfig.GetString(node.Id, String.Empty); 330 modulesConfig.GetString("Setup_" + node.Id, String.Empty);
306 331
307 // Get the port number, if there is one 332 // Get the port number, if there is one
308 if (moduleString != String.Empty) 333 if (moduleString != String.Empty)