aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region
diff options
context:
space:
mode:
authorCharles Krinke2008-09-03 03:32:29 +0000
committerCharles Krinke2008-09-03 03:32:29 +0000
commit98da84c851503c498e788f9c057ad19efaa33ebc (patch)
treec8952fdcfbd8f0437806e35ddb3601e40acdba86 /OpenSim/Region
parentMantis #2099 (diff)
downloadopensim-SC-98da84c851503c498e788f9c057ad19efaa33ebc.zip
opensim-SC-98da84c851503c498e788f9c057ad19efaa33ebc.tar.gz
opensim-SC-98da84c851503c498e788f9c057ad19efaa33ebc.tar.bz2
opensim-SC-98da84c851503c498e788f9c057ad19efaa33ebc.tar.xz
Mantis#2105. Thank you kindly, HomerHorwitz for a patch that addresses:
Due to the many problems with not cleaned up child-agents, I thought it might make sense to be able to see them on the console. 'show users' on the region-server's console now outputs root- and child-agents (with "root" or "child" column)
Diffstat (limited to 'OpenSim/Region')
-rw-r--r--OpenSim/Region/Application/OpenSim.cs17
-rw-r--r--OpenSim/Region/Environment/Scenes/SceneManager.cs13
2 files changed, 22 insertions, 8 deletions
diff --git a/OpenSim/Region/Application/OpenSim.cs b/OpenSim/Region/Application/OpenSim.cs
index dbadecc..6829bef 100644
--- a/OpenSim/Region/Application/OpenSim.cs
+++ b/OpenSim/Region/Application/OpenSim.cs
@@ -661,13 +661,13 @@ namespace OpenSim
661 break; 661 break;
662 662
663 case "users": 663 case "users":
664 IList agents = m_sceneManager.GetCurrentSceneAvatars(); 664 IList agents = m_sceneManager.GetCurrentScenePresences();
665 665
666 m_console.Notice(String.Format("\nAgents connected: {0}\n", agents.Count)); 666 m_console.Notice(String.Format("\nAgents connected: {0}\n", agents.Count));
667 667
668 m_console.Notice( 668 m_console.Notice(
669 String.Format("{0,-16}{1,-16}{2,-37}{3,-16}", "Firstname", "Lastname", 669 String.Format("{0,-16}{1,-16}{2,-37}{3,-11}{4,-16}", "Firstname", "Lastname",
670 "Agent ID","Region")); 670 "Agent ID", "Root/Child", "Region"));
671 671
672 foreach (ScenePresence presence in agents) 672 foreach (ScenePresence presence in agents)
673 { 673 {
@@ -685,11 +685,12 @@ namespace OpenSim
685 685
686 m_console.Notice( 686 m_console.Notice(
687 String.Format( 687 String.Format(
688 "{0,-16}{1,-16}{2,-37}{3,-16}", 688 "{0,-16}{1,-16}{2,-37}{3,-11}{4,-16}",
689 presence.Firstname, 689 presence.Firstname,
690 presence.Lastname, 690 presence.Lastname,
691 presence.UUID, 691 presence.UUID,
692 regionName)); 692 presence.IsChildAgent ? "Child" : "Root",
693 regionName));
693 } 694 }
694 695
695 m_console.Notice(""); 696 m_console.Notice("");
diff --git a/OpenSim/Region/Environment/Scenes/SceneManager.cs b/OpenSim/Region/Environment/Scenes/SceneManager.cs
index 046dab3..5546618 100644
--- a/OpenSim/Region/Environment/Scenes/SceneManager.cs
+++ b/OpenSim/Region/Environment/Scenes/SceneManager.cs
@@ -435,6 +435,19 @@ namespace OpenSim.Region.Environment.Scenes
435 return avatars; 435 return avatars;
436 } 436 }
437 437
438 public List<ScenePresence> GetCurrentScenePresences()
439 {
440 List<ScenePresence> presences = new List<ScenePresence>();
441
442 ForEachCurrentScene(delegate(Scene scene)
443 {
444 List<ScenePresence> scenePresences = scene.GetScenePresences();
445 presences.AddRange(scenePresences);
446 });
447
448 return presences;
449 }
450
438 public RegionInfo GetRegionInfo(ulong regionHandle) 451 public RegionInfo GetRegionInfo(ulong regionHandle)
439 { 452 {
440 foreach (Scene scene in m_localScenes) 453 foreach (Scene scene in m_localScenes)