aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Grid
diff options
context:
space:
mode:
Diffstat (limited to 'OpenSim/Grid')
-rw-r--r--OpenSim/Grid/ScriptServer/RemotingObject.cs24
-rw-r--r--OpenSim/Grid/ScriptServer/RemotingServer.cs28
2 files changed, 52 insertions, 0 deletions
diff --git a/OpenSim/Grid/ScriptServer/RemotingObject.cs b/OpenSim/Grid/ScriptServer/RemotingObject.cs
new file mode 100644
index 0000000..f095ca4
--- /dev/null
+++ b/OpenSim/Grid/ScriptServer/RemotingObject.cs
@@ -0,0 +1,24 @@
1using System;
2using System.Collections.Generic;
3using System.Text;
4using OpenSim.Region.Environment.Interfaces;
5
6namespace OpenSim.Grid.ScriptServer
7{
8 public class RemotingObject : MarshalByRefObject
9 {
10 // This object will be exposed over remoting. It is a singleton, so it exists only in as one instance.
11
12 // Expose ScriptEngine
13 public OpenSim.Region.ScriptEngine.DotNetEngine.ScriptEngine ScriptEngine = new OpenSim.Region.ScriptEngine.DotNetEngine.ScriptEngine();
14
15 /// <summary>
16 /// Receives calls from remote grids.
17 /// </summary>
18 /// <returns></returns>
19 public OpenSim.Region.ScriptEngine.DotNetEngine.ScriptEngine GetScriptEngine()
20 {
21 return ScriptEngine;
22 }
23 }
24}
diff --git a/OpenSim/Grid/ScriptServer/RemotingServer.cs b/OpenSim/Grid/ScriptServer/RemotingServer.cs
new file mode 100644
index 0000000..3ec3e64
--- /dev/null
+++ b/OpenSim/Grid/ScriptServer/RemotingServer.cs
@@ -0,0 +1,28 @@
1using System;
2using System.Collections.Generic;
3using System.Text;
4using System.Runtime.Remoting;
5using System.Runtime.Remoting.Channels;
6using System.Runtime.Remoting.Channels.Tcp;
7
8
9namespace OpenSim.Grid.ScriptServer
10{
11 class RemotingServer
12 {
13
14 public void CreateServer(int port, string instanceName)
15 {
16 // Create an instance of a channel
17 TcpChannel channel = new TcpChannel(port);
18 ChannelServices.RegisterChannel(channel, true);
19
20 // Register as an available service with the name HelloWorld
21 RemotingConfiguration.RegisterWellKnownServiceType(
22 typeof(RemotingObject),
23 instanceName,
24 WellKnownObjectMode.Singleton);
25
26 }
27 }
28}