Comments + fix = in theory stand alone script server + "RemoteSevrver" ScriptEngine (as opposed to "DotNetEngine") should work for a single region. It will however not work because it doesn't have two-way communication.

afrisby
Tedd Hansen 2007-12-30 22:57:27 +00:00
parent 6055db2bc3
commit 5b8620d82f
5 changed files with 19 additions and 6 deletions

View File

@ -9,7 +9,8 @@ namespace OpenSim.Grid.ScriptServer
{ {
// This object will be exposed over remoting. It is a singleton, so it exists only in as one instance. // This object will be exposed over remoting. It is a singleton, so it exists only in as one instance.
// Expose ScriptEngine // Expose ScriptEngine directly for now ... this is not very secure :)
// NOTE! CURRENTLY JUST HARDWIRED DOTNETENGINE!
public OpenSim.Region.ScriptEngine.DotNetEngine.ScriptEngine ScriptEngine = new OpenSim.Region.ScriptEngine.DotNetEngine.ScriptEngine(); public OpenSim.Region.ScriptEngine.DotNetEngine.ScriptEngine ScriptEngine = new OpenSim.Region.ScriptEngine.DotNetEngine.ScriptEngine();
/// <summary> /// <summary>

View File

@ -34,17 +34,26 @@ namespace OpenSim.Grid.ScriptServer
{ {
public class ScriptServerMain : conscmd_callback public class ScriptServerMain : conscmd_callback
{ {
//
// Root object. Creates objects used.
//
private int listenPort = 1234;
private readonly string m_logFilename = ("region-console.log"); private readonly string m_logFilename = ("region-console.log");
internal RegionCommManager RegionScriptDaemon; // Listen for incoming from region
internal ScriptEngineManager ScriptEngines; // Loads scriptengines
private LogBase m_log; private LogBase m_log;
// Objects we use
internal RegionCommManager RegionScriptDaemon; // Listen for incoming from region
//internal ScriptEngineManager ScriptEngines; // Loads scriptengines
internal RemotingServer m_RemotingServer;
public ScriptServerMain() public ScriptServerMain()
{ {
m_log = CreateLog(); m_log = CreateLog();
RegionScriptDaemon = new RegionCommManager(this, m_log); RegionScriptDaemon = new RegionCommManager(this, m_log);
ScriptEngines = new ScriptEngineManager(this, m_log); //ScriptEngines = new ScriptEngineManager(this, m_log);
m_RemotingServer = new RemotingServer();
m_RemotingServer.CreateServer(listenPort, "DotNetEngine");
} }
~ScriptServerMain() ~ScriptServerMain()

View File

@ -33,6 +33,7 @@ using OpenSim.Framework;
namespace OpenSim.Region.ScriptEngine.RemoteServer namespace OpenSim.Region.ScriptEngine.RemoteServer
{ {
/// <summary> /// <summary>
/// Handles events from OpenSim. Uses RemoteServer to send commands.
/// </summary> /// </summary>
[Serializable] [Serializable]
internal class EventManager internal class EventManager

View File

@ -9,6 +9,8 @@ namespace OpenSim.Region.ScriptEngine.RemoteServer
{ {
class RemoteServer class RemoteServer
{ {
// Handles connections to servers
// Create and returns server object
public OpenSim.Grid.ScriptServer.RemotingObject Connect(string hostname, int port) public OpenSim.Grid.ScriptServer.RemotingObject Connect(string hostname, int port)
{ {

View File

@ -35,7 +35,7 @@ using OpenSim.Region.Environment.Scenes;
namespace OpenSim.Region.ScriptEngine.RemoteServer namespace OpenSim.Region.ScriptEngine.RemoteServer
{ {
/// <summary> /// <summary>
/// This is the root object for ScriptEngine. Objects access each other trough this class. /// This is the root object for RemoteServer. Objects access each other trough this class.
/// </summary> /// </summary>
/// ///
[Serializable] [Serializable]
@ -43,7 +43,7 @@ namespace OpenSim.Region.ScriptEngine.RemoteServer
{ {
internal Scene World; internal Scene World;
internal EventManager m_EventManager; // Handles and queues incoming events from OpenSim internal EventManager m_EventManager; // Handles and queues incoming events from OpenSim
internal RemoteServer m_RemoteServer; internal RemoteServer m_RemoteServer; // Handles connections to remote servers
private LogBase m_log; private LogBase m_log;