From 1e9a66cbaae97759c5c4e936664b5cc7a4feca89 Mon Sep 17 00:00:00 2001 From: Tedd Hansen Date: Sat, 12 Jan 2008 00:48:58 +0000 Subject: ScriptServer communication protocol (v1), primitive RPC-like TCP client/server --- OpenSim/Region/ScriptEngine/RemoteServer/EventManager.cs | 6 ++++-- OpenSim/Region/ScriptEngine/RemoteServer/RemoteServer.cs | 16 +++++++--------- 2 files changed, 11 insertions(+), 11 deletions(-) (limited to 'OpenSim/Region/ScriptEngine/RemoteServer') diff --git a/OpenSim/Region/ScriptEngine/RemoteServer/EventManager.cs b/OpenSim/Region/ScriptEngine/RemoteServer/EventManager.cs index d56c1fb..1b37378 100644 --- a/OpenSim/Region/ScriptEngine/RemoteServer/EventManager.cs +++ b/OpenSim/Region/ScriptEngine/RemoteServer/EventManager.cs @@ -48,6 +48,7 @@ namespace OpenSim.Region.ScriptEngine.RemoteServer { myScriptEngine = _ScriptEngine; + myScriptEngine.Log.Verbose("RemoteEngine", "Hooking up to server events"); //myScriptEngine.World.EventManager.OnObjectGrab += touch_start; myScriptEngine.World.EventManager.OnRezScript += OnRezScript; @@ -61,10 +62,11 @@ namespace OpenSim.Region.ScriptEngine.RemoteServer { // WE ARE CREATING A NEW SCRIPT ... CREATE SCRIPT, GET A REMOTEID THAT WE MAP FROM LOCALID myScriptEngine.Log.Verbose("RemoteEngine", "Creating new script (with connection)"); + + ScriptServerInterfaces.ServerRemotingObject obj = myScriptEngine.m_RemoteServer.Connect("localhost", 1234); - remoteScript.Add(localID, obj); - //remoteScript[localID].Events.OnRezScript(localID, itemID, script); + remoteScript[localID].Events().OnRezScript(localID, itemID, script); } diff --git a/OpenSim/Region/ScriptEngine/RemoteServer/RemoteServer.cs b/OpenSim/Region/ScriptEngine/RemoteServer/RemoteServer.cs index 6fc6c5c..38eb9b9 100644 --- a/OpenSim/Region/ScriptEngine/RemoteServer/RemoteServer.cs +++ b/OpenSim/Region/ScriptEngine/RemoteServer/RemoteServer.cs @@ -13,19 +13,17 @@ namespace OpenSim.Region.ScriptEngine.RemoteServer // Handles connections to servers // Create and returns server object + public RemoteServer() + { + TcpChannel chan = new TcpChannel(); + ChannelServices.RegisterChannel(chan, true); + } + public ScriptServerInterfaces.ServerRemotingObject 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 { -- cgit v1.1