From f0406f9fe2f7a1d4d135934280735a3fdc41935f Mon Sep 17 00:00:00 2001
From: Justin Clark-Casey (justincc)
Date: Sat, 31 Mar 2012 01:45:37 +0100
Subject: Rename SOG.HasChildPrim(uint) to SOG.ContainsPart(uint) to match
 existing ContainsPart method and remove method duplication.

HasChildPrim is also misleading since the 'root' prim can also be returned.
---
 OpenSim/Data/Tests/RegionTests.cs                  |  8 ++--
 OpenSim/Region/Framework/Scenes/SceneGraph.cs      |  6 +--
 .../Region/Framework/Scenes/SceneObjectGroup.cs    | 47 +++++++++-------------
 .../Shared/Api/Implementation/LSL_Api.cs           |  6 +--
 4 files changed, 28 insertions(+), 39 deletions(-)

(limited to 'OpenSim')

diff --git a/OpenSim/Data/Tests/RegionTests.cs b/OpenSim/Data/Tests/RegionTests.cs
index 1d806fc..1f03ec5 100644
--- a/OpenSim/Data/Tests/RegionTests.cs
+++ b/OpenSim/Data/Tests/RegionTests.cs
@@ -244,10 +244,10 @@ namespace OpenSim.Data.Tests
             SceneObjectPart[] newparts = newsog.Parts;
             Assert.That(newparts.Length,Is.EqualTo(4), "Assert.That(newparts.Length,Is.EqualTo(4))");
             
-            Assert.That(newsog.HasChildPrim(tmp0), "Assert.That(newsog.HasChildPrim(tmp0))");
-            Assert.That(newsog.HasChildPrim(tmp1), "Assert.That(newsog.HasChildPrim(tmp1))");
-            Assert.That(newsog.HasChildPrim(tmp2), "Assert.That(newsog.HasChildPrim(tmp2))");
-            Assert.That(newsog.HasChildPrim(tmp3), "Assert.That(newsog.HasChildPrim(tmp3))");
+            Assert.That(newsog.ContainsPart(tmp0), "Assert.That(newsog.ContainsPart(tmp0))");
+            Assert.That(newsog.ContainsPart(tmp1), "Assert.That(newsog.ContainsPart(tmp1))");
+            Assert.That(newsog.ContainsPart(tmp2), "Assert.That(newsog.ContainsPart(tmp2))");
+            Assert.That(newsog.ContainsPart(tmp3), "Assert.That(newsog.ContainsPart(tmp3))");
         }
         
         [Test]
diff --git a/OpenSim/Region/Framework/Scenes/SceneGraph.cs b/OpenSim/Region/Framework/Scenes/SceneGraph.cs
index 5c542d6..cd1366c 100644
--- a/OpenSim/Region/Framework/Scenes/SceneGraph.cs
+++ b/OpenSim/Region/Framework/Scenes/SceneGraph.cs
@@ -860,7 +860,7 @@ namespace OpenSim.Region.Framework.Scenes
 
             if (sog != null)
             {
-                if (sog.HasChildPrim(localID))
+                if (sog.ContainsPart(localID))
                 {
 //                    m_log.DebugFormat(
 //                        "[SCENE GRAPH]: Found scene object {0} {1} {2} containing part with local id {3} in {4}.  Returning.",
@@ -888,7 +888,7 @@ namespace OpenSim.Region.Framework.Scenes
                 if (ent is SceneObjectGroup)
                 {
                     sog = (SceneObjectGroup)ent;
-                    if (sog.HasChildPrim(localID))
+                    if (sog.ContainsPart(localID))
                     {
                         lock (SceneObjectGroupsByLocalPartID)
                             SceneObjectGroupsByLocalPartID[localID] = sog;
@@ -926,7 +926,7 @@ namespace OpenSim.Region.Framework.Scenes
                 if (ent is SceneObjectGroup)
                 {
                     sog = (SceneObjectGroup)ent;
-                    if (sog.HasChildPrim(fullID))
+                    if (sog.ContainsPart(fullID))
                     {
                         lock (SceneObjectGroupsByFullPartID)
                             SceneObjectGroupsByFullPartID[fullID] = sog;
diff --git a/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs b/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs
index afb5ccf..9d16beb 100644
--- a/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs
+++ b/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs
@@ -338,6 +338,24 @@ namespace OpenSim.Region.Framework.Scenes
             return m_parts.ContainsKey(partID);
         }
 
+        /// <summary>
+        /// Does this group contain the given part?
+        /// should be able to remove these methods once we have a entity index in scene
+        /// </summary>
+        /// <param name="localID"></param>
+        /// <returns></returns>
+        public bool ContainsPart(uint localID)
+        {
+            SceneObjectPart[] parts = m_parts.GetArray();
+            for (int i = 0; i < parts.Length; i++)
+            {
+                if (parts[i].LocalId == localID)
+                    return true;
+            }
+
+            return false;
+        }
+
         /// <value>
         /// The root part of this scene object
         /// </value>
@@ -1911,35 +1929,6 @@ namespace OpenSim.Region.Framework.Scenes
             return null;
         }
 
-        /// <summary>
-        /// Does this group contain the child prim
-        /// should be able to remove these methods once we have a entity index in scene
-        /// </summary>
-        /// <param name="primID"></param>
-        /// <returns></returns>
-        public bool HasChildPrim(UUID primID)
-        {
-            return m_parts.ContainsKey(primID);
-        }
-
-        /// <summary>
-        /// Does this group contain the child prim
-        /// should be able to remove these methods once we have a entity index in scene
-        /// </summary>
-        /// <param name="localID"></param>
-        /// <returns></returns>
-        public bool HasChildPrim(uint localID)
-        {
-            SceneObjectPart[] parts = m_parts.GetArray();
-            for (int i = 0; i < parts.Length; i++)
-            {
-                if (parts[i].LocalId == localID)
-                    return true;
-            }
-
-            return false;
-        }
-
         #endregion
 
         #region Packet Handlers
diff --git a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs
index 7455929..b502ab8 100644
--- a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs
+++ b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs
@@ -3763,7 +3763,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
             // parse for sitting avatare-uuids
             World.ForEachRootScenePresence(delegate(ScenePresence presence)
             {
-                if (presence.ParentID != 0 && m_host.ParentGroup.HasChildPrim(presence.ParentID))
+                if (presence.ParentID != 0 && m_host.ParentGroup.ContainsPart(presence.ParentID))
                     keytable.Add(presence.UUID);
             });
 
@@ -3826,7 +3826,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
             World.ForEachRootScenePresence(delegate(ScenePresence presence)
             {
                 SceneObjectPart sitPart = presence.ParentPart;
-                if (sitPart != null && m_host.ParentGroup.HasChildPrim(sitPart.LocalId))
+                if (sitPart != null && m_host.ParentGroup.ContainsPart(sitPart.LocalId))
                     nametable.Add(presence.ControllingClient.Name);
             });
 
@@ -7684,7 +7684,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
             int avatarCount = 0;
             World.ForEachRootScenePresence(delegate(ScenePresence presence)
             {
-                if (presence.ParentID != 0 && m_host.ParentGroup.HasChildPrim(presence.ParentID))
+                if (presence.ParentID != 0 && m_host.ParentGroup.ContainsPart(presence.ParentID))
                     avatarCount++;
             });
 
-- 
cgit v1.1