From 8f0b03597b0bc8ea6873af9a55495407fae1ec56 Mon Sep 17 00:00:00 2001 From: lbsa71 Date: Wed, 19 Sep 2007 00:30:55 +0000 Subject: * Modernized ScriptManager to new interface-based module calls. * 'remove redundant this qualifier' ftw --- .../Region/ExtensionsScriptModule/ScriptManager.cs | 43 +++++++++++++--------- 1 file changed, 25 insertions(+), 18 deletions(-) (limited to 'OpenSim/Region/ExtensionsScriptModule/ScriptManager.cs') diff --git a/OpenSim/Region/ExtensionsScriptModule/ScriptManager.cs b/OpenSim/Region/ExtensionsScriptModule/ScriptManager.cs index ac5ac89..61541e8 100644 --- a/OpenSim/Region/ExtensionsScriptModule/ScriptManager.cs +++ b/OpenSim/Region/ExtensionsScriptModule/ScriptManager.cs @@ -25,22 +25,21 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * */ -using System.Collections.Generic; -using OpenSim.Framework.Console; -using OpenSim.Region.Environment; -using OpenSim.Region.Environment.Scenes; -using OpenSim.Region.Environment.Interfaces; -using OpenSim.Region.ExtensionsScriptModule.CSharp; -using OpenSim.Region.ExtensionsScriptModule.JScript; -using OpenSim.Region.ExtensionsScriptModule.JVMEngine; - +using System.Collections.Generic; +using OpenSim.Framework.Console; +using OpenSim.Region.Environment.Interfaces; +using OpenSim.Region.Environment.Scenes; +using OpenSim.Region.ExtensionsScriptModule.CSharp; +using OpenSim.Region.ExtensionsScriptModule.JScript; +using OpenSim.Region.ExtensionsScriptModule.JVMEngine; + namespace OpenSim.Region.ExtensionsScriptModule -{ - public class ScriptManager : IRegionModule +{ + public class ScriptManager : IRegionModule, IExtensionScriptModule { - List scripts = new List(); + readonly List scripts = new List(); Scene m_scene; - Dictionary compilers = new Dictionary(); + readonly Dictionary compilers = new Dictionary(); private void LoadFromCompiler(Dictionary compiledscripts) { @@ -65,15 +64,17 @@ namespace OpenSim.Region.ExtensionsScriptModule JavaEngine javaCompiler = new JavaEngine(); compilers.Add(javaCompiler.FileExt(), javaCompiler); - } + } + + public delegate TResult ModuleAPIMethod1(TParam0 param0); + public delegate TResult ModuleAPIMethod2(TParam0 param0, TParam1 param1); public void Initialise(Scene scene) { System.Console.WriteLine("Initialising Extensions Scripting Module"); - m_scene = scene; - - m_scene.RegisterAPIMethod("API_CompileExtensionScript", new ModuleAPIMethod1(Compile)); - m_scene.RegisterAPIMethod("API_AddExtensionScript", new ModuleAPIMethod1(AddPreCompiledScript)); + m_scene = scene; + + m_scene.RegisterModuleInterface(this); } public void PostInitialise() @@ -133,6 +134,12 @@ namespace OpenSim.Region.ExtensionsScriptModule return true; } + } + + public interface IExtensionScriptModule + { + bool Compile(string filename); + bool AddPreCompiledScript(IScript script); } interface IScriptCompiler -- cgit v1.1