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