From 3c9505199a1ff61a3fc9bf1bc6d9592276a8fda1 Mon Sep 17 00:00:00 2001 From: Jeff Ames Date: Mon, 31 Dec 2007 12:00:40 +0000 Subject: Set svn:eol-style and svn:ignore. --- OpenSim/Region/ScriptEngine/RemoteServer/Common.cs | 112 +-- .../ScriptEngine/RemoteServer/EventManager.cs | 944 ++++++++++----------- .../RemoteServer/Properties/AssemblyInfo.cs | 74 +- .../ScriptEngine/RemoteServer/RemoteServer.cs | 116 +-- .../ScriptEngine/RemoteServer/ScriptEngine.cs | 210 ++--- 5 files changed, 728 insertions(+), 728 deletions(-) (limited to 'OpenSim/Region/ScriptEngine/RemoteServer') diff --git a/OpenSim/Region/ScriptEngine/RemoteServer/Common.cs b/OpenSim/Region/ScriptEngine/RemoteServer/Common.cs index 906c157..bac32cb 100644 --- a/OpenSim/Region/ScriptEngine/RemoteServer/Common.cs +++ b/OpenSim/Region/ScriptEngine/RemoteServer/Common.cs @@ -1,57 +1,57 @@ -/* -* Copyright (c) Contributors, http://opensimulator.org/ -* See CONTRIBUTORS.TXT for a full list of copyright holders. -* -* Redistribution and use in source and binary forms, with or without -* modification, are permitted provided that the following conditions are met: -* * Redistributions of source code must retain the above copyright -* notice, this list of conditions and the following disclaimer. -* * Redistributions in binary form must reproduce the above copyright -* notice, this list of conditions and the following disclaimer in the -* documentation and/or other materials provided with the distribution. -* * Neither the name of the OpenSim Project nor the -* names of its contributors may be used to endorse or promote products -* derived from this software without specific prior written permission. -* -* THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``AS IS'' AND ANY -* EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED -* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE -* DISCLAIMED. IN NO EVENT SHALL THE CONTRIBUTORS BE LIABLE FOR ANY -* DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES -* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; -* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND -* ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS -* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -* -*/ -/* Original code: Tedd Hansen */ -namespace OpenSim.Region.ScriptEngine.RemoteServer -{ - public static class Common - { - public static bool debug = true; - public static ScriptEngine mySE; - - // This class just contains some static log stuff used for debugging. - - //public delegate void SendToDebugEventDelegate(string Message); - //public delegate void SendToLogEventDelegate(string Message); - //static public event SendToDebugEventDelegate SendToDebugEvent; - //static public event SendToLogEventDelegate SendToLogEvent; - - public static void SendToDebug(string Message) - { - //if (Debug == true) - mySE.Log.Verbose("ScriptEngine", "Debug: " + Message); - //SendToDebugEvent("\r\n" + DateTime.Now.ToString("[HH:mm:ss] ") + Message); - } - - public static void SendToLog(string Message) - { - //if (Debug == true) - mySE.Log.Verbose("ScriptEngine", "LOG: " + Message); - //SendToLogEvent("\r\n" + DateTime.Now.ToString("[HH:mm:ss] ") + Message); - } - } +/* +* Copyright (c) Contributors, http://opensimulator.org/ +* See CONTRIBUTORS.TXT for a full list of copyright holders. +* +* Redistribution and use in source and binary forms, with or without +* modification, are permitted provided that the following conditions are met: +* * Redistributions of source code must retain the above copyright +* notice, this list of conditions and the following disclaimer. +* * Redistributions in binary form must reproduce the above copyright +* notice, this list of conditions and the following disclaimer in the +* documentation and/or other materials provided with the distribution. +* * Neither the name of the OpenSim Project nor the +* names of its contributors may be used to endorse or promote products +* derived from this software without specific prior written permission. +* +* THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``AS IS'' AND ANY +* EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +* DISCLAIMED. IN NO EVENT SHALL THE CONTRIBUTORS BE LIABLE FOR ANY +* DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +* ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +* +*/ +/* Original code: Tedd Hansen */ +namespace OpenSim.Region.ScriptEngine.RemoteServer +{ + public static class Common + { + public static bool debug = true; + public static ScriptEngine mySE; + + // This class just contains some static log stuff used for debugging. + + //public delegate void SendToDebugEventDelegate(string Message); + //public delegate void SendToLogEventDelegate(string Message); + //static public event SendToDebugEventDelegate SendToDebugEvent; + //static public event SendToLogEventDelegate SendToLogEvent; + + public static void SendToDebug(string Message) + { + //if (Debug == true) + mySE.Log.Verbose("ScriptEngine", "Debug: " + Message); + //SendToDebugEvent("\r\n" + DateTime.Now.ToString("[HH:mm:ss] ") + Message); + } + + public static void SendToLog(string Message) + { + //if (Debug == true) + mySE.Log.Verbose("ScriptEngine", "LOG: " + Message); + //SendToLogEvent("\r\n" + DateTime.Now.ToString("[HH:mm:ss] ") + Message); + } + } } \ No newline at end of file diff --git a/OpenSim/Region/ScriptEngine/RemoteServer/EventManager.cs b/OpenSim/Region/ScriptEngine/RemoteServer/EventManager.cs index 5561563..812b1c0 100644 --- a/OpenSim/Region/ScriptEngine/RemoteServer/EventManager.cs +++ b/OpenSim/Region/ScriptEngine/RemoteServer/EventManager.cs @@ -1,473 +1,473 @@ -/* -* Copyright (c) Contributors, http://opensimulator.org/ -* See CONTRIBUTORS.TXT for a full list of copyright holders. -* -* Redistribution and use in source and binary forms, with or without -* modification, are permitted provided that the following conditions are met: -* * Redistributions of source code must retain the above copyright -* notice, this list of conditions and the following disclaimer. -* * Redistributions in binary form must reproduce the above copyright -* notice, this list of conditions and the following disclaimer in the -* documentation and/or other materials provided with the distribution. -* * Neither the name of the OpenSim Project nor the -* names of its contributors may be used to endorse or promote products -* derived from this software without specific prior written permission. -* -* THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``AS IS'' AND ANY -* EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED -* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE -* DISCLAIMED. IN NO EVENT SHALL THE CONTRIBUTORS BE LIABLE FOR ANY -* DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES -* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; -* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND -* ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS -* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -* -*/ -/* Original code: Tedd Hansen */ -using System; -using libsecondlife; -using OpenSim.Framework; -using OpenSim.Grid.ScriptServer; -using OpenSim.Region.ScriptEngine.DotNetEngine; - -namespace OpenSim.Region.ScriptEngine.RemoteServer -{ - /// - /// Handles events from OpenSim. Uses RemoteServer to send commands. - /// - [Serializable] - internal class EventManager - { - - System.Collections.Generic.Dictionary remoteScript = new System.Collections.Generic.Dictionary(); - - - private ScriptEngine myScriptEngine; - public EventManager(ScriptEngine _ScriptEngine) - { - myScriptEngine = _ScriptEngine; - - myScriptEngine.Log.Verbose("RemoteEngine", "Hooking up to server events"); - //myScriptEngine.World.EventManager.OnObjectGrab += touch_start; - myScriptEngine.World.EventManager.OnRezScript += OnRezScript; - //myScriptEngine.World.EventManager.OnRemoveScript += OnRemoveScript; - - - } - - - public void OnRezScript(uint localID, LLUUID itemID, string script) - { - // WE ARE CREATING A NEW SCRIPT ... CREATE SCRIPT, GET A REMOTEID THAT WE MAP FROM LOCALID - OpenSim.Grid.ScriptServer.RemotingObject obj = myScriptEngine.m_RemoteServer.Connect("localhost", 1234); - remoteScript.Add(localID, obj); - try - { - remoteScript[localID].ScriptEngine.m_EventManager.OnRezScript(localID, itemID, script); - } - catch (System.NullReferenceException) - { - OpenSim.Framework.Console.MainLog.Instance.Error("SCRIPTS", "Error Connecting to Remote Script Server. Is it running?"); - } - } - - public void touch_start(uint localID, LLVector3 offsetPos, IClientAPI remoteClient) - { - try - { - remoteScript[localID].ScriptEngine.m_EventManager.touch_start(localID, offsetPos, remoteClient); - } - catch (System.NullReferenceException) - { - OpenSim.Framework.Console.MainLog.Instance.Error("SCRIPTS", "Error Connecting to Remote Script Server. Is it running?"); - } - } - - public void OnRemoveScript(uint localID, LLUUID itemID) - { - try - { - remoteScript[localID].ScriptEngine.m_EventManager.OnRemoveScript(localID, itemID); - } - catch (System.NullReferenceException) - { - OpenSim.Framework.Console.MainLog.Instance.Error("SCRIPTS", "Error Connecting to Remote Script Server. Is it running?"); - } - } - - public void state_exit(uint localID, LLUUID itemID) - { - try - { - remoteScript[localID].ScriptEngine.m_EventManager.state_exit(localID, itemID); - } - catch (System.NullReferenceException) - { - OpenSim.Framework.Console.MainLog.Instance.Error("SCRIPTS", "Error Connecting to Remote Script Server. Is it running?"); - } - } - - public void touch(uint localID, LLUUID itemID) - { - try - { - remoteScript[localID].ScriptEngine.m_EventManager.touch(localID, itemID); - } - catch (System.NullReferenceException) - { - OpenSim.Framework.Console.MainLog.Instance.Error("SCRIPTS", "Error Connecting to Remote Script Server. Is it running?"); - } - } - - public void touch_end(uint localID, LLUUID itemID) - { - try - { - remoteScript[localID].ScriptEngine.m_EventManager.touch_end(localID, itemID); - } - catch (System.NullReferenceException) - { - OpenSim.Framework.Console.MainLog.Instance.Error("SCRIPTS", "Error Connecting to Remote Script Server. Is it running?"); - } - } - - public void collision_start(uint localID, LLUUID itemID) - { - try - { - remoteScript[localID].ScriptEngine.m_EventManager.collision_start(localID, itemID); - } - catch (System.NullReferenceException) - { - OpenSim.Framework.Console.MainLog.Instance.Error("SCRIPTS", "Error Connecting to Remote Script Server. Is it running?"); - } - } - - public void collision(uint localID, LLUUID itemID) - { - try - { - remoteScript[localID].ScriptEngine.m_EventManager.collision(localID, itemID); - } - catch (System.NullReferenceException) - { - OpenSim.Framework.Console.MainLog.Instance.Error("SCRIPTS", "Error Connecting to Remote Script Server. Is it running?"); - } - } - - public void collision_end(uint localID, LLUUID itemID) - { - try - { - remoteScript[localID].ScriptEngine.m_EventManager.collision_end(localID, itemID); - } - catch (System.NullReferenceException) - { - OpenSim.Framework.Console.MainLog.Instance.Error("SCRIPTS", "Error Connecting to Remote Script Server. Is it running?"); - } - } - - public void land_collision_start(uint localID, LLUUID itemID) - { - try - { - remoteScript[localID].ScriptEngine.m_EventManager.land_collision_start(localID, itemID); - } - catch (System.NullReferenceException) - { - OpenSim.Framework.Console.MainLog.Instance.Error("SCRIPTS", "Error Connecting to Remote Script Server. Is it running?"); - } - } - - public void land_collision(uint localID, LLUUID itemID) - { - try - { - remoteScript[localID].ScriptEngine.m_EventManager.land_collision(localID, itemID); - } - catch (System.NullReferenceException) - { - OpenSim.Framework.Console.MainLog.Instance.Error("SCRIPTS", "Error Connecting to Remote Script Server. Is it running?"); - } - } - - public void land_collision_end(uint localID, LLUUID itemID) - { - try - { - remoteScript[localID].ScriptEngine.m_EventManager.land_collision_end(localID, itemID); - } - catch (System.NullReferenceException) - { - OpenSim.Framework.Console.MainLog.Instance.Error("SCRIPTS", "Error Connecting to Remote Script Server. Is it running?"); - } - } - - public void timer(uint localID, LLUUID itemID) - { - try - { - remoteScript[localID].ScriptEngine.m_EventManager.timer(localID, itemID); - } - catch (System.NullReferenceException) - { - OpenSim.Framework.Console.MainLog.Instance.Error("SCRIPTS", "Error Connecting to Remote Script Server. Is it running?"); - } - } - - public void listen(uint localID, LLUUID itemID) - { - try - { - remoteScript[localID].ScriptEngine.m_EventManager.listen(localID, itemID); - } - catch (System.NullReferenceException) - { - OpenSim.Framework.Console.MainLog.Instance.Error("SCRIPTS", "Error Connecting to Remote Script Server. Is it running?"); - } - } - - public void on_rez(uint localID, LLUUID itemID) - { - try - { - remoteScript[localID].ScriptEngine.m_EventManager.on_rez(localID, itemID); - } - catch (System.NullReferenceException) - { - OpenSim.Framework.Console.MainLog.Instance.Error("SCRIPTS", "Error Connecting to Remote Script Server. Is it running?"); - } - } - - public void sensor(uint localID, LLUUID itemID) - { - try - { - remoteScript[localID].ScriptEngine.m_EventManager.sensor(localID, itemID); - } - catch (System.NullReferenceException) - { - OpenSim.Framework.Console.MainLog.Instance.Error("SCRIPTS", "Error Connecting to Remote Script Server. Is it running?"); - } - } - - public void no_sensor(uint localID, LLUUID itemID) - { - try - { - remoteScript[localID].ScriptEngine.m_EventManager.no_sensor(localID, itemID); - } - catch (System.NullReferenceException) - { - OpenSim.Framework.Console.MainLog.Instance.Error("SCRIPTS", "Error Connecting to Remote Script Server. Is it running?"); - } - } - - public void control(uint localID, LLUUID itemID) - { - try - { - remoteScript[localID].ScriptEngine.m_EventManager.control(localID, itemID); - } - catch (System.NullReferenceException) - { - OpenSim.Framework.Console.MainLog.Instance.Error("SCRIPTS", "Error Connecting to Remote Script Server. Is it running?"); - } - } - - public void money(uint localID, LLUUID itemID) - { - try - { - remoteScript[localID].ScriptEngine.m_EventManager.money(localID, itemID); - } - catch (System.NullReferenceException) - { - OpenSim.Framework.Console.MainLog.Instance.Error("SCRIPTS", "Error Connecting to Remote Script Server. Is it running?"); - } - } - - public void email(uint localID, LLUUID itemID) - { - try - { - remoteScript[localID].ScriptEngine.m_EventManager.email(localID, itemID); - } - catch (System.NullReferenceException) - { - OpenSim.Framework.Console.MainLog.Instance.Error("SCRIPTS", "Error Connecting to Remote Script Server. Is it running?"); - } - } - - public void at_target(uint localID, LLUUID itemID) - { - try - { - remoteScript[localID].ScriptEngine.m_EventManager.at_target(localID, itemID); - } - catch (System.NullReferenceException) - { - OpenSim.Framework.Console.MainLog.Instance.Error("SCRIPTS", "Error Connecting to Remote Script Server. Is it running?"); - } - } - - public void not_at_target(uint localID, LLUUID itemID) - { - try - { - remoteScript[localID].ScriptEngine.m_EventManager.not_at_target(localID, itemID); - } - catch (System.NullReferenceException) - { - OpenSim.Framework.Console.MainLog.Instance.Error("SCRIPTS", "Error Connecting to Remote Script Server. Is it running?"); - } - } - - public void at_rot_target(uint localID, LLUUID itemID) - { - try - { - remoteScript[localID].ScriptEngine.m_EventManager.at_rot_target(localID, itemID); - } - catch (System.NullReferenceException) - { - OpenSim.Framework.Console.MainLog.Instance.Error("SCRIPTS", "Error Connecting to Remote Script Server. Is it running?"); - } - } - - public void not_at_rot_target(uint localID, LLUUID itemID) - { - try - { - remoteScript[localID].ScriptEngine.m_EventManager.not_at_rot_target(localID, itemID); - } - catch (System.NullReferenceException) - { - OpenSim.Framework.Console.MainLog.Instance.Error("SCRIPTS", "Error Connecting to Remote Script Server. Is it running?"); - } - } - - public void run_time_permissions(uint localID, LLUUID itemID) - { - try - { - remoteScript[localID].ScriptEngine.m_EventManager.run_time_permissions(localID, itemID); - } - catch (System.NullReferenceException) - { - OpenSim.Framework.Console.MainLog.Instance.Error("SCRIPTS", "Error Connecting to Remote Script Server. Is it running?"); - } - } - - public void changed(uint localID, LLUUID itemID) - { - try - { - remoteScript[localID].ScriptEngine.m_EventManager.changed(localID, itemID); - } - catch (System.NullReferenceException) - { - OpenSim.Framework.Console.MainLog.Instance.Error("SCRIPTS", "Error Connecting to Remote Script Server. Is it running?"); - } - } - - public void attach(uint localID, LLUUID itemID) - { - try - { - remoteScript[localID].ScriptEngine.m_EventManager.attach(localID, itemID); - } - catch (System.NullReferenceException) - { - OpenSim.Framework.Console.MainLog.Instance.Error("SCRIPTS", "Error Connecting to Remote Script Server. Is it running?"); - } - } - - public void dataserver(uint localID, LLUUID itemID) - { - try - { - remoteScript[localID].ScriptEngine.m_EventManager.dataserver(localID, itemID); - } - catch (System.NullReferenceException) - { - OpenSim.Framework.Console.MainLog.Instance.Error("SCRIPTS", "Error Connecting to Remote Script Server. Is it running?"); - } - } - - public void link_message(uint localID, LLUUID itemID) - { - try - { - remoteScript[localID].ScriptEngine.m_EventManager.link_message(localID, itemID); - } - catch (System.NullReferenceException) - { - OpenSim.Framework.Console.MainLog.Instance.Error("SCRIPTS", "Error Connecting to Remote Script Server. Is it running?"); - } - } - - public void moving_start(uint localID, LLUUID itemID) - { - try - { - remoteScript[localID].ScriptEngine.m_EventManager.moving_start(localID, itemID); - } - catch (System.NullReferenceException) - { - OpenSim.Framework.Console.MainLog.Instance.Error("SCRIPTS", "Error Connecting to Remote Script Server. Is it running?"); - } - } - - public void moving_end(uint localID, LLUUID itemID) - { - try - { - remoteScript[localID].ScriptEngine.m_EventManager.moving_end(localID, itemID); - } - catch (System.NullReferenceException) - { - OpenSim.Framework.Console.MainLog.Instance.Error("SCRIPTS", "Error Connecting to Remote Script Server. Is it running?"); - } - } - - public void object_rez(uint localID, LLUUID itemID) - { - try - { - remoteScript[localID].ScriptEngine.m_EventManager.object_rez(localID, itemID); - } - catch (System.NullReferenceException) - { - OpenSim.Framework.Console.MainLog.Instance.Error("SCRIPTS", "Error Connecting to Remote Script Server. Is it running?"); - } - } - - public void remote_data(uint localID, LLUUID itemID) - { - try - { - remoteScript[localID].ScriptEngine.m_EventManager.remote_data(localID, itemID); - } - catch (System.NullReferenceException) - { - OpenSim.Framework.Console.MainLog.Instance.Error("SCRIPTS", "Error Connecting to Remote Script Server. Is it running?"); - } - } - - public void http_response(uint localID, LLUUID itemID) - { - try - { - remoteScript[localID].ScriptEngine.m_EventManager.http_response(localID, itemID); - } - catch (System.NullReferenceException) - { - OpenSim.Framework.Console.MainLog.Instance.Error("SCRIPTS", "Error Connecting to Remote Script Server. Is it running?"); - } - } - - } +/* +* Copyright (c) Contributors, http://opensimulator.org/ +* See CONTRIBUTORS.TXT for a full list of copyright holders. +* +* Redistribution and use in source and binary forms, with or without +* modification, are permitted provided that the following conditions are met: +* * Redistributions of source code must retain the above copyright +* notice, this list of conditions and the following disclaimer. +* * Redistributions in binary form must reproduce the above copyright +* notice, this list of conditions and the following disclaimer in the +* documentation and/or other materials provided with the distribution. +* * Neither the name of the OpenSim Project nor the +* names of its contributors may be used to endorse or promote products +* derived from this software without specific prior written permission. +* +* THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``AS IS'' AND ANY +* EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +* DISCLAIMED. IN NO EVENT SHALL THE CONTRIBUTORS BE LIABLE FOR ANY +* DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +* ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +* +*/ +/* Original code: Tedd Hansen */ +using System; +using libsecondlife; +using OpenSim.Framework; +using OpenSim.Grid.ScriptServer; +using OpenSim.Region.ScriptEngine.DotNetEngine; + +namespace OpenSim.Region.ScriptEngine.RemoteServer +{ + /// + /// Handles events from OpenSim. Uses RemoteServer to send commands. + /// + [Serializable] + internal class EventManager + { + + System.Collections.Generic.Dictionary remoteScript = new System.Collections.Generic.Dictionary(); + + + private ScriptEngine myScriptEngine; + public EventManager(ScriptEngine _ScriptEngine) + { + myScriptEngine = _ScriptEngine; + + myScriptEngine.Log.Verbose("RemoteEngine", "Hooking up to server events"); + //myScriptEngine.World.EventManager.OnObjectGrab += touch_start; + myScriptEngine.World.EventManager.OnRezScript += OnRezScript; + //myScriptEngine.World.EventManager.OnRemoveScript += OnRemoveScript; + + + } + + + public void OnRezScript(uint localID, LLUUID itemID, string script) + { + // WE ARE CREATING A NEW SCRIPT ... CREATE SCRIPT, GET A REMOTEID THAT WE MAP FROM LOCALID + OpenSim.Grid.ScriptServer.RemotingObject obj = myScriptEngine.m_RemoteServer.Connect("localhost", 1234); + remoteScript.Add(localID, obj); + try + { + remoteScript[localID].ScriptEngine.m_EventManager.OnRezScript(localID, itemID, script); + } + catch (System.NullReferenceException) + { + OpenSim.Framework.Console.MainLog.Instance.Error("SCRIPTS", "Error Connecting to Remote Script Server. Is it running?"); + } + } + + public void touch_start(uint localID, LLVector3 offsetPos, IClientAPI remoteClient) + { + try + { + remoteScript[localID].ScriptEngine.m_EventManager.touch_start(localID, offsetPos, remoteClient); + } + catch (System.NullReferenceException) + { + OpenSim.Framework.Console.MainLog.Instance.Error("SCRIPTS", "Error Connecting to Remote Script Server. Is it running?"); + } + } + + public void OnRemoveScript(uint localID, LLUUID itemID) + { + try + { + remoteScript[localID].ScriptEngine.m_EventManager.OnRemoveScript(localID, itemID); + } + catch (System.NullReferenceException) + { + OpenSim.Framework.Console.MainLog.Instance.Error("SCRIPTS", "Error Connecting to Remote Script Server. Is it running?"); + } + } + + public void state_exit(uint localID, LLUUID itemID) + { + try + { + remoteScript[localID].ScriptEngine.m_EventManager.state_exit(localID, itemID); + } + catch (System.NullReferenceException) + { + OpenSim.Framework.Console.MainLog.Instance.Error("SCRIPTS", "Error Connecting to Remote Script Server. Is it running?"); + } + } + + public void touch(uint localID, LLUUID itemID) + { + try + { + remoteScript[localID].ScriptEngine.m_EventManager.touch(localID, itemID); + } + catch (System.NullReferenceException) + { + OpenSim.Framework.Console.MainLog.Instance.Error("SCRIPTS", "Error Connecting to Remote Script Server. Is it running?"); + } + } + + public void touch_end(uint localID, LLUUID itemID) + { + try + { + remoteScript[localID].ScriptEngine.m_EventManager.touch_end(localID, itemID); + } + catch (System.NullReferenceException) + { + OpenSim.Framework.Console.MainLog.Instance.Error("SCRIPTS", "Error Connecting to Remote Script Server. Is it running?"); + } + } + + public void collision_start(uint localID, LLUUID itemID) + { + try + { + remoteScript[localID].ScriptEngine.m_EventManager.collision_start(localID, itemID); + } + catch (System.NullReferenceException) + { + OpenSim.Framework.Console.MainLog.Instance.Error("SCRIPTS", "Error Connecting to Remote Script Server. Is it running?"); + } + } + + public void collision(uint localID, LLUUID itemID) + { + try + { + remoteScript[localID].ScriptEngine.m_EventManager.collision(localID, itemID); + } + catch (System.NullReferenceException) + { + OpenSim.Framework.Console.MainLog.Instance.Error("SCRIPTS", "Error Connecting to Remote Script Server. Is it running?"); + } + } + + public void collision_end(uint localID, LLUUID itemID) + { + try + { + remoteScript[localID].ScriptEngine.m_EventManager.collision_end(localID, itemID); + } + catch (System.NullReferenceException) + { + OpenSim.Framework.Console.MainLog.Instance.Error("SCRIPTS", "Error Connecting to Remote Script Server. Is it running?"); + } + } + + public void land_collision_start(uint localID, LLUUID itemID) + { + try + { + remoteScript[localID].ScriptEngine.m_EventManager.land_collision_start(localID, itemID); + } + catch (System.NullReferenceException) + { + OpenSim.Framework.Console.MainLog.Instance.Error("SCRIPTS", "Error Connecting to Remote Script Server. Is it running?"); + } + } + + public void land_collision(uint localID, LLUUID itemID) + { + try + { + remoteScript[localID].ScriptEngine.m_EventManager.land_collision(localID, itemID); + } + catch (System.NullReferenceException) + { + OpenSim.Framework.Console.MainLog.Instance.Error("SCRIPTS", "Error Connecting to Remote Script Server. Is it running?"); + } + } + + public void land_collision_end(uint localID, LLUUID itemID) + { + try + { + remoteScript[localID].ScriptEngine.m_EventManager.land_collision_end(localID, itemID); + } + catch (System.NullReferenceException) + { + OpenSim.Framework.Console.MainLog.Instance.Error("SCRIPTS", "Error Connecting to Remote Script Server. Is it running?"); + } + } + + public void timer(uint localID, LLUUID itemID) + { + try + { + remoteScript[localID].ScriptEngine.m_EventManager.timer(localID, itemID); + } + catch (System.NullReferenceException) + { + OpenSim.Framework.Console.MainLog.Instance.Error("SCRIPTS", "Error Connecting to Remote Script Server. Is it running?"); + } + } + + public void listen(uint localID, LLUUID itemID) + { + try + { + remoteScript[localID].ScriptEngine.m_EventManager.listen(localID, itemID); + } + catch (System.NullReferenceException) + { + OpenSim.Framework.Console.MainLog.Instance.Error("SCRIPTS", "Error Connecting to Remote Script Server. Is it running?"); + } + } + + public void on_rez(uint localID, LLUUID itemID) + { + try + { + remoteScript[localID].ScriptEngine.m_EventManager.on_rez(localID, itemID); + } + catch (System.NullReferenceException) + { + OpenSim.Framework.Console.MainLog.Instance.Error("SCRIPTS", "Error Connecting to Remote Script Server. Is it running?"); + } + } + + public void sensor(uint localID, LLUUID itemID) + { + try + { + remoteScript[localID].ScriptEngine.m_EventManager.sensor(localID, itemID); + } + catch (System.NullReferenceException) + { + OpenSim.Framework.Console.MainLog.Instance.Error("SCRIPTS", "Error Connecting to Remote Script Server. Is it running?"); + } + } + + public void no_sensor(uint localID, LLUUID itemID) + { + try + { + remoteScript[localID].ScriptEngine.m_EventManager.no_sensor(localID, itemID); + } + catch (System.NullReferenceException) + { + OpenSim.Framework.Console.MainLog.Instance.Error("SCRIPTS", "Error Connecting to Remote Script Server. Is it running?"); + } + } + + public void control(uint localID, LLUUID itemID) + { + try + { + remoteScript[localID].ScriptEngine.m_EventManager.control(localID, itemID); + } + catch (System.NullReferenceException) + { + OpenSim.Framework.Console.MainLog.Instance.Error("SCRIPTS", "Error Connecting to Remote Script Server. Is it running?"); + } + } + + public void money(uint localID, LLUUID itemID) + { + try + { + remoteScript[localID].ScriptEngine.m_EventManager.money(localID, itemID); + } + catch (System.NullReferenceException) + { + OpenSim.Framework.Console.MainLog.Instance.Error("SCRIPTS", "Error Connecting to Remote Script Server. Is it running?"); + } + } + + public void email(uint localID, LLUUID itemID) + { + try + { + remoteScript[localID].ScriptEngine.m_EventManager.email(localID, itemID); + } + catch (System.NullReferenceException) + { + OpenSim.Framework.Console.MainLog.Instance.Error("SCRIPTS", "Error Connecting to Remote Script Server. Is it running?"); + } + } + + public void at_target(uint localID, LLUUID itemID) + { + try + { + remoteScript[localID].ScriptEngine.m_EventManager.at_target(localID, itemID); + } + catch (System.NullReferenceException) + { + OpenSim.Framework.Console.MainLog.Instance.Error("SCRIPTS", "Error Connecting to Remote Script Server. Is it running?"); + } + } + + public void not_at_target(uint localID, LLUUID itemID) + { + try + { + remoteScript[localID].ScriptEngine.m_EventManager.not_at_target(localID, itemID); + } + catch (System.NullReferenceException) + { + OpenSim.Framework.Console.MainLog.Instance.Error("SCRIPTS", "Error Connecting to Remote Script Server. Is it running?"); + } + } + + public void at_rot_target(uint localID, LLUUID itemID) + { + try + { + remoteScript[localID].ScriptEngine.m_EventManager.at_rot_target(localID, itemID); + } + catch (System.NullReferenceException) + { + OpenSim.Framework.Console.MainLog.Instance.Error("SCRIPTS", "Error Connecting to Remote Script Server. Is it running?"); + } + } + + public void not_at_rot_target(uint localID, LLUUID itemID) + { + try + { + remoteScript[localID].ScriptEngine.m_EventManager.not_at_rot_target(localID, itemID); + } + catch (System.NullReferenceException) + { + OpenSim.Framework.Console.MainLog.Instance.Error("SCRIPTS", "Error Connecting to Remote Script Server. Is it running?"); + } + } + + public void run_time_permissions(uint localID, LLUUID itemID) + { + try + { + remoteScript[localID].ScriptEngine.m_EventManager.run_time_permissions(localID, itemID); + } + catch (System.NullReferenceException) + { + OpenSim.Framework.Console.MainLog.Instance.Error("SCRIPTS", "Error Connecting to Remote Script Server. Is it running?"); + } + } + + public void changed(uint localID, LLUUID itemID) + { + try + { + remoteScript[localID].ScriptEngine.m_EventManager.changed(localID, itemID); + } + catch (System.NullReferenceException) + { + OpenSim.Framework.Console.MainLog.Instance.Error("SCRIPTS", "Error Connecting to Remote Script Server. Is it running?"); + } + } + + public void attach(uint localID, LLUUID itemID) + { + try + { + remoteScript[localID].ScriptEngine.m_EventManager.attach(localID, itemID); + } + catch (System.NullReferenceException) + { + OpenSim.Framework.Console.MainLog.Instance.Error("SCRIPTS", "Error Connecting to Remote Script Server. Is it running?"); + } + } + + public void dataserver(uint localID, LLUUID itemID) + { + try + { + remoteScript[localID].ScriptEngine.m_EventManager.dataserver(localID, itemID); + } + catch (System.NullReferenceException) + { + OpenSim.Framework.Console.MainLog.Instance.Error("SCRIPTS", "Error Connecting to Remote Script Server. Is it running?"); + } + } + + public void link_message(uint localID, LLUUID itemID) + { + try + { + remoteScript[localID].ScriptEngine.m_EventManager.link_message(localID, itemID); + } + catch (System.NullReferenceException) + { + OpenSim.Framework.Console.MainLog.Instance.Error("SCRIPTS", "Error Connecting to Remote Script Server. Is it running?"); + } + } + + public void moving_start(uint localID, LLUUID itemID) + { + try + { + remoteScript[localID].ScriptEngine.m_EventManager.moving_start(localID, itemID); + } + catch (System.NullReferenceException) + { + OpenSim.Framework.Console.MainLog.Instance.Error("SCRIPTS", "Error Connecting to Remote Script Server. Is it running?"); + } + } + + public void moving_end(uint localID, LLUUID itemID) + { + try + { + remoteScript[localID].ScriptEngine.m_EventManager.moving_end(localID, itemID); + } + catch (System.NullReferenceException) + { + OpenSim.Framework.Console.MainLog.Instance.Error("SCRIPTS", "Error Connecting to Remote Script Server. Is it running?"); + } + } + + public void object_rez(uint localID, LLUUID itemID) + { + try + { + remoteScript[localID].ScriptEngine.m_EventManager.object_rez(localID, itemID); + } + catch (System.NullReferenceException) + { + OpenSim.Framework.Console.MainLog.Instance.Error("SCRIPTS", "Error Connecting to Remote Script Server. Is it running?"); + } + } + + public void remote_data(uint localID, LLUUID itemID) + { + try + { + remoteScript[localID].ScriptEngine.m_EventManager.remote_data(localID, itemID); + } + catch (System.NullReferenceException) + { + OpenSim.Framework.Console.MainLog.Instance.Error("SCRIPTS", "Error Connecting to Remote Script Server. Is it running?"); + } + } + + public void http_response(uint localID, LLUUID itemID) + { + try + { + remoteScript[localID].ScriptEngine.m_EventManager.http_response(localID, itemID); + } + catch (System.NullReferenceException) + { + OpenSim.Framework.Console.MainLog.Instance.Error("SCRIPTS", "Error Connecting to Remote Script Server. Is it running?"); + } + } + + } } \ No newline at end of file diff --git a/OpenSim/Region/ScriptEngine/RemoteServer/Properties/AssemblyInfo.cs b/OpenSim/Region/ScriptEngine/RemoteServer/Properties/AssemblyInfo.cs index b013562..d78caf9 100644 --- a/OpenSim/Region/ScriptEngine/RemoteServer/Properties/AssemblyInfo.cs +++ b/OpenSim/Region/ScriptEngine/RemoteServer/Properties/AssemblyInfo.cs @@ -1,38 +1,38 @@ -using System.Reflection; -using System.Runtime.InteropServices; - -// General Information about an assembly is controlled through the following -// set of attributes. Change these attribute values to modify the information -// associated with an assembly. - -[assembly : AssemblyTitle("OpenSim.Region.ScriptEngine.RemoteServer")] -[assembly : AssemblyDescription("")] -[assembly : AssemblyConfiguration("")] -[assembly : AssemblyCompany("")] -[assembly : AssemblyProduct("OpenSim.Region.ScriptEngine.RemoteServer")] -[assembly : AssemblyCopyright("Copyright © 2007")] -[assembly : AssemblyTrademark("")] -[assembly : AssemblyCulture("")] - -// Setting ComVisible to false makes the types in this assembly not visible -// to COM components. If you need to access a type in this assembly from -// COM, set the ComVisible attribute to true on that type. - -[assembly : ComVisible(false)] - -// The following GUID is for the ID of the typelib if this project is exposed to COM - -[assembly : Guid("2842257e-6fde-4460-9368-4cde57fa9cc4")] - -// Version information for an assembly consists of the following four values: -// -// Major Version -// Minor Version -// Build Number -// Revision -// -// You can specify all the values or you can default the Revision and Build Numbers -// by using the '*' as shown below: - -[assembly : AssemblyVersion("1.0.0.0")] +using System.Reflection; +using System.Runtime.InteropServices; + +// General Information about an assembly is controlled through the following +// set of attributes. Change these attribute values to modify the information +// associated with an assembly. + +[assembly : AssemblyTitle("OpenSim.Region.ScriptEngine.RemoteServer")] +[assembly : AssemblyDescription("")] +[assembly : AssemblyConfiguration("")] +[assembly : AssemblyCompany("")] +[assembly : AssemblyProduct("OpenSim.Region.ScriptEngine.RemoteServer")] +[assembly : AssemblyCopyright("Copyright © 2007")] +[assembly : AssemblyTrademark("")] +[assembly : AssemblyCulture("")] + +// Setting ComVisible to false makes the types in this assembly not visible +// to COM components. If you need to access a type in this assembly from +// COM, set the ComVisible attribute to true on that type. + +[assembly : ComVisible(false)] + +// The following GUID is for the ID of the typelib if this project is exposed to COM + +[assembly : Guid("2842257e-6fde-4460-9368-4cde57fa9cc4")] + +// Version information for an assembly consists of the following four values: +// +// Major Version +// Minor Version +// Build Number +// Revision +// +// You can specify all the values or you can default the Revision and Build Numbers +// by using the '*' as shown below: + +[assembly : AssemblyVersion("1.0.0.0")] [assembly : AssemblyFileVersion("1.0.0.0")] \ No newline at end of file diff --git a/OpenSim/Region/ScriptEngine/RemoteServer/RemoteServer.cs b/OpenSim/Region/ScriptEngine/RemoteServer/RemoteServer.cs index e5db72d..3c88c41 100644 --- a/OpenSim/Region/ScriptEngine/RemoteServer/RemoteServer.cs +++ b/OpenSim/Region/ScriptEngine/RemoteServer/RemoteServer.cs @@ -1,58 +1,58 @@ -using System; -using System.Collections.Generic; -using System.Text; -using System.Runtime.Remoting; -using System.Runtime.Remoting.Channels; -using System.Runtime.Remoting.Channels.Tcp; - -namespace OpenSim.Region.ScriptEngine.RemoteServer -{ - class RemoteServer - { - // Handles connections to servers - // Create and returns server object - - public OpenSim.Grid.ScriptServer.RemotingObject Connect(string hostname, int port) - { - // Create a channel for communicating w/ the remote object - // Notice no port is specified on the client - TcpChannel chan = new TcpChannel(); - try - { - ChannelServices.RegisterChannel(chan, true); - } - catch (System.Runtime.Remoting.RemotingException) - { - System.Console.WriteLine("Error: tcp already registered, RemoteServer.cs in OpenSim.Region.ScriptEngine.RemoteServer line 24"); - } - try - { - - // Create an instance of the remote object - OpenSim.Grid.ScriptServer.RemotingObject obj = (OpenSim.Grid.ScriptServer.RemotingObject)Activator.GetObject( - typeof(OpenSim.Grid.ScriptServer.RemotingObject), - "tcp://" + hostname + ":" + port + "/DotNetEngine"); - - // Use the object - if (obj.Equals(null)) - { - System.Console.WriteLine("Error: unable to locate server"); - } - else - { - return obj; - } - } - catch (System.Net.Sockets.SocketException) - { - System.Console.WriteLine("Error: unable to connect to server"); - } - catch (System.Runtime.Remoting.RemotingException) - { - System.Console.WriteLine("Error: unable to connect to server"); - } - return null; - - } - } -} +using System; +using System.Collections.Generic; +using System.Text; +using System.Runtime.Remoting; +using System.Runtime.Remoting.Channels; +using System.Runtime.Remoting.Channels.Tcp; + +namespace OpenSim.Region.ScriptEngine.RemoteServer +{ + class RemoteServer + { + // Handles connections to servers + // Create and returns server object + + public OpenSim.Grid.ScriptServer.RemotingObject Connect(string hostname, int port) + { + // Create a channel for communicating w/ the remote object + // Notice no port is specified on the client + TcpChannel chan = new TcpChannel(); + try + { + ChannelServices.RegisterChannel(chan, true); + } + catch (System.Runtime.Remoting.RemotingException) + { + System.Console.WriteLine("Error: tcp already registered, RemoteServer.cs in OpenSim.Region.ScriptEngine.RemoteServer line 24"); + } + try + { + + // Create an instance of the remote object + OpenSim.Grid.ScriptServer.RemotingObject obj = (OpenSim.Grid.ScriptServer.RemotingObject)Activator.GetObject( + typeof(OpenSim.Grid.ScriptServer.RemotingObject), + "tcp://" + hostname + ":" + port + "/DotNetEngine"); + + // Use the object + if (obj.Equals(null)) + { + System.Console.WriteLine("Error: unable to locate server"); + } + else + { + return obj; + } + } + catch (System.Net.Sockets.SocketException) + { + System.Console.WriteLine("Error: unable to connect to server"); + } + catch (System.Runtime.Remoting.RemotingException) + { + System.Console.WriteLine("Error: unable to connect to server"); + } + return null; + + } + } +} diff --git a/OpenSim/Region/ScriptEngine/RemoteServer/ScriptEngine.cs b/OpenSim/Region/ScriptEngine/RemoteServer/ScriptEngine.cs index 1853b65..9d3b989 100644 --- a/OpenSim/Region/ScriptEngine/RemoteServer/ScriptEngine.cs +++ b/OpenSim/Region/ScriptEngine/RemoteServer/ScriptEngine.cs @@ -1,106 +1,106 @@ -/* -* Copyright (c) Contributors, http://opensimulator.org/ -* See CONTRIBUTORS.TXT for a full list of copyright holders. -* -* Redistribution and use in source and binary forms, with or without -* modification, are permitted provided that the following conditions are met: -* * Redistributions of source code must retain the above copyright -* notice, this list of conditions and the following disclaimer. -* * Redistributions in binary form must reproduce the above copyright -* notice, this list of conditions and the following disclaimer in the -* documentation and/or other materials provided with the distribution. -* * Neither the name of the OpenSim Project nor the -* names of its contributors may be used to endorse or promote products -* derived from this software without specific prior written permission. -* -* THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``AS IS'' AND ANY -* EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED -* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE -* DISCLAIMED. IN NO EVENT SHALL THE CONTRIBUTORS BE LIABLE FOR ANY -* DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES -* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; -* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND -* ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS -* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -* -*/ -/* Original code: Tedd Hansen */ -using System; -using Nini.Config; -using OpenSim.Framework.Console; -using OpenSim.Region.Environment.Interfaces; -using OpenSim.Region.Environment.Scenes; - -namespace OpenSim.Region.ScriptEngine.RemoteServer -{ - /// - /// This is the root object for RemoteServer. Objects access each other trough this class. - /// - /// - [Serializable] - public class ScriptEngine : IRegionModule - { - internal Scene World; - internal EventManager m_EventManager; // Handles and queues incoming events from OpenSim - internal RemoteServer m_RemoteServer; // Handles connections to remote servers - - private LogBase m_log; - - public ScriptEngine() - { - Common.mySE = this; - } - - public LogBase Log - { - get { return m_log; } - } - - public void InitializeEngine(Scene Sceneworld, LogBase logger) - { - World = Sceneworld; - m_log = logger; - - Log.Verbose("ScriptEngine", "RemoteEngine (Remote Script Server) initializing"); - // Create all objects we'll be using - m_EventManager = new EventManager(this); - m_RemoteServer = new RemoteServer(); - m_RemoteServer.Connect("localhost", 1234); - } - - public void Shutdown() - { - // We are shutting down - } - - - #region IRegionModule - - public void Initialise(Scene scene, IConfigSource config) - { - InitializeEngine(scene, MainLog.Instance); - } - - public void PostInitialise() - { - } - - public void Close() - { - } - - public string Name - { - get { return "LSLScriptingModule"; } - } - - public bool IsSharedModule - { - get { return false; } - } - - #endregion - - } +/* +* Copyright (c) Contributors, http://opensimulator.org/ +* See CONTRIBUTORS.TXT for a full list of copyright holders. +* +* Redistribution and use in source and binary forms, with or without +* modification, are permitted provided that the following conditions are met: +* * Redistributions of source code must retain the above copyright +* notice, this list of conditions and the following disclaimer. +* * Redistributions in binary form must reproduce the above copyright +* notice, this list of conditions and the following disclaimer in the +* documentation and/or other materials provided with the distribution. +* * Neither the name of the OpenSim Project nor the +* names of its contributors may be used to endorse or promote products +* derived from this software without specific prior written permission. +* +* THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``AS IS'' AND ANY +* EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +* DISCLAIMED. IN NO EVENT SHALL THE CONTRIBUTORS BE LIABLE FOR ANY +* DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +* ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +* +*/ +/* Original code: Tedd Hansen */ +using System; +using Nini.Config; +using OpenSim.Framework.Console; +using OpenSim.Region.Environment.Interfaces; +using OpenSim.Region.Environment.Scenes; + +namespace OpenSim.Region.ScriptEngine.RemoteServer +{ + /// + /// This is the root object for RemoteServer. Objects access each other trough this class. + /// + /// + [Serializable] + public class ScriptEngine : IRegionModule + { + internal Scene World; + internal EventManager m_EventManager; // Handles and queues incoming events from OpenSim + internal RemoteServer m_RemoteServer; // Handles connections to remote servers + + private LogBase m_log; + + public ScriptEngine() + { + Common.mySE = this; + } + + public LogBase Log + { + get { return m_log; } + } + + public void InitializeEngine(Scene Sceneworld, LogBase logger) + { + World = Sceneworld; + m_log = logger; + + Log.Verbose("ScriptEngine", "RemoteEngine (Remote Script Server) initializing"); + // Create all objects we'll be using + m_EventManager = new EventManager(this); + m_RemoteServer = new RemoteServer(); + m_RemoteServer.Connect("localhost", 1234); + } + + public void Shutdown() + { + // We are shutting down + } + + + #region IRegionModule + + public void Initialise(Scene scene, IConfigSource config) + { + InitializeEngine(scene, MainLog.Instance); + } + + public void PostInitialise() + { + } + + public void Close() + { + } + + public string Name + { + get { return "LSLScriptingModule"; } + } + + public bool IsSharedModule + { + get { return false; } + } + + #endregion + + } } \ No newline at end of file -- cgit v1.1