From 710856e3d34837eaba90f9fae893e6a59758802f Mon Sep 17 00:00:00 2001 From: MW Date: Tue, 4 Sep 2007 17:53:21 +0000 Subject: Removed the exit-region command, now use "change-region root" or "change-region .." to change back to root level. [Would be nice if the command prompt changed to show what the current region was, but think that will need changes to the console code so for now it will have to stay as it is]. --- OpenSim/Region/Application/OpenSimMain.cs | 41 ++++++++++++---------- .../Region/Environment/Interfaces/IHttpRequests.cs | 12 +++++++ OpenSim/Region/Environment/Scenes/Scene.cs | 11 ++++++ 3 files changed, 45 insertions(+), 19 deletions(-) create mode 100644 OpenSim/Region/Environment/Interfaces/IHttpRequests.cs diff --git a/OpenSim/Region/Application/OpenSimMain.cs b/OpenSim/Region/Application/OpenSimMain.cs index c94d328..5dfb30b 100644 --- a/OpenSim/Region/Application/OpenSimMain.cs +++ b/OpenSim/Region/Application/OpenSimMain.cs @@ -371,7 +371,7 @@ namespace OpenSim /// Additional arguments passed to the command public void RunCmd(string command, string[] cmdparams) { - if ((m_consoleRegion == null) || (command == "exit-region") || (command == "change-region")) + if ((m_consoleRegion == null) ||(command == "change-region")) { switch (command) { @@ -499,14 +499,29 @@ namespace OpenSim case "change-region": if (cmdparams.Length > 0) { - string name = this.CombineParams(cmdparams, 0); - Console.WriteLine("Searching for Region: '" + name + "'"); - foreach (Scene scene in m_localScenes) + if ((cmdparams[0].ToLower() == "root") || (cmdparams[0].ToLower() == "..")) { - if (scene.RegionInfo.RegionName.ToLower() == name.ToLower()) + if (m_consoleRegion != null) { - m_consoleRegion = scene; - MainLog.Instance.Verbose("Setting current region: " + m_consoleRegion.RegionInfo.RegionName); + m_consoleRegion = null; + MainLog.Instance.Verbose("Now at Root level"); + } + else + { + MainLog.Instance.Verbose("Already at Root level"); + } + } + else + { + string name = this.CombineParams(cmdparams, 0); + Console.WriteLine("Searching for Region: '" + name + "'"); + foreach (Scene scene in m_localScenes) + { + if (scene.RegionInfo.RegionName.ToLower() == name.ToLower()) + { + m_consoleRegion = scene; + MainLog.Instance.Verbose("Setting current region: " + m_consoleRegion.RegionInfo.RegionName); + } } } } @@ -523,18 +538,6 @@ namespace OpenSim } break; - case "exit-region": - if (m_consoleRegion != null) - { - m_consoleRegion = null; - MainLog.Instance.Verbose("Exiting region, Now at Root level"); - } - else - { - MainLog.Instance.Verbose("No region is set. Already at Root level"); - } - break; - default: m_log.Error("Unknown command"); break; diff --git a/OpenSim/Region/Environment/Interfaces/IHttpRequests.cs b/OpenSim/Region/Environment/Interfaces/IHttpRequests.cs new file mode 100644 index 0000000..2294631 --- /dev/null +++ b/OpenSim/Region/Environment/Interfaces/IHttpRequests.cs @@ -0,0 +1,12 @@ +using System; +using System.Collections.Generic; +using System.Text; +using libsecondlife; + +namespace OpenSim.Region.Environment.Interfaces +{ + public interface IHttpRequests + { + LLUUID MakeHttpRequest(string url, string type, string body); + } +} diff --git a/OpenSim/Region/Environment/Scenes/Scene.cs b/OpenSim/Region/Environment/Scenes/Scene.cs index f8d17b4..dca4222 100644 --- a/OpenSim/Region/Environment/Scenes/Scene.cs +++ b/OpenSim/Region/Environment/Scenes/Scene.cs @@ -93,6 +93,7 @@ namespace OpenSim.Region.Environment.Scenes // this most likely shouldn't be handled as a API method like this, but doing it for testing purposes public ModuleAPIMethod2 AddXferFile = null; + private IHttpRequests m_httpRequestModule = null; private ISimChat m_simChatModule = null; #region Properties @@ -196,6 +197,7 @@ namespace OpenSim.Region.Environment.Scenes public void SetModuleInterfaces() { m_simChatModule = this.RequestModuleInterface(); + m_httpRequestModule = this.RequestModuleInterface(); //should change so it uses the module interface functions AddXferFile = (ModuleAPIMethod2)this.RequestAPIMethod("API_AddXferFile"); @@ -1318,6 +1320,15 @@ namespace OpenSim.Region.Environment.Scenes } } + public LLUUID MakeHttpRequest(string url, string type, string body) + { + if (m_httpRequestModule != null) + { + return m_httpRequestModule.MakeHttpRequest(url, type, body); + } + return LLUUID.Zero; + } + #region Script Engine private List ScriptEngines = new List(); public void AddScriptEngine(OpenSim.Region.Environment.Scenes.Scripting.ScriptEngineInterface ScriptEngine, LogBase m_logger) -- cgit v1.1