aboutsummaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
authorDiva Canto2010-02-26 10:35:23 -0800
committerDiva Canto2010-02-26 10:35:23 -0800
commitbbb43f9bdeda4994653c72fac62f9023d6dbdcdc (patch)
tree2a9458010ac18ca5e89b53364c619d4433d910fc
parentFlags on Store(Friend) are supposed to be MyFlags. (diff)
downloadopensim-SC-bbb43f9bdeda4994653c72fac62f9023d6dbdcdc.zip
opensim-SC-bbb43f9bdeda4994653c72fac62f9023d6dbdcdc.tar.gz
opensim-SC-bbb43f9bdeda4994653c72fac62f9023d6dbdcdc.tar.bz2
opensim-SC-bbb43f9bdeda4994653c72fac62f9023d6dbdcdc.tar.xz
Now showing friends online upon grid login.
-rw-r--r--OpenSim/Region/CoreModules/Avatar/Friends/FriendsModule.cs6
-rw-r--r--OpenSim/Server/Base/ServerUtils.cs9
-rw-r--r--OpenSim/Server/Handlers/Presence/PresenceServerPostHandler.cs3
-rw-r--r--OpenSim/Services/Connectors/Presence/PresenceServiceConnector.cs4
-rw-r--r--OpenSim/Services/PresenceService/PresenceService.cs1
5 files changed, 17 insertions, 6 deletions
diff --git a/OpenSim/Region/CoreModules/Avatar/Friends/FriendsModule.cs b/OpenSim/Region/CoreModules/Avatar/Friends/FriendsModule.cs
index 8b15abb..d38ce68 100644
--- a/OpenSim/Region/CoreModules/Avatar/Friends/FriendsModule.cs
+++ b/OpenSim/Region/CoreModules/Avatar/Friends/FriendsModule.cs
@@ -331,11 +331,17 @@ namespace OpenSim.Region.CoreModules.Avatar.Friends
331 private void SendPresence(UUID agentID) 331 private void SendPresence(UUID agentID)
332 { 332 {
333 if (!m_Friends.ContainsKey(agentID)) 333 if (!m_Friends.ContainsKey(agentID))
334 {
335 m_log.DebugFormat("[FRIENDS MODULE]: agent {0} not found in local cache", agentID);
334 return; 336 return;
337 }
335 338
336 IClientAPI client = LocateClientObject(agentID); 339 IClientAPI client = LocateClientObject(agentID);
337 if (client == null) 340 if (client == null)
341 {
342 m_log.DebugFormat("[FRIENDS MODULE]: agent's client {0} not found in local scene", agentID);
338 return; 343 return;
344 }
339 345
340 List<string> friendList = new List<string>(); 346 List<string> friendList = new List<string>();
341 347
diff --git a/OpenSim/Server/Base/ServerUtils.cs b/OpenSim/Server/Base/ServerUtils.cs
index 2fbcea4..9c54410 100644
--- a/OpenSim/Server/Base/ServerUtils.cs
+++ b/OpenSim/Server/Base/ServerUtils.cs
@@ -140,12 +140,13 @@ namespace OpenSim.Server.Base
140 140
141 if (name.EndsWith("[]")) 141 if (name.EndsWith("[]"))
142 { 142 {
143 if (result.ContainsKey(name)) 143 string cleanName = name.Substring(0, name.Length - 2);
144 if (result.ContainsKey(cleanName))
144 { 145 {
145 if (!(result[name] is List<string>)) 146 if (!(result[cleanName] is List<string>))
146 continue; 147 continue;
147 148
148 List<string> l = (List<string>)result[name]; 149 List<string> l = (List<string>)result[cleanName];
149 150
150 l.Add(value); 151 l.Add(value);
151 } 152 }
@@ -155,7 +156,7 @@ namespace OpenSim.Server.Base
155 156
156 newList.Add(value); 157 newList.Add(value);
157 158
158 result[name] = newList; 159 result[cleanName] = newList;
159 } 160 }
160 } 161 }
161 else 162 else
diff --git a/OpenSim/Server/Handlers/Presence/PresenceServerPostHandler.cs b/OpenSim/Server/Handlers/Presence/PresenceServerPostHandler.cs
index d180bbb..4ebf933 100644
--- a/OpenSim/Server/Handlers/Presence/PresenceServerPostHandler.cs
+++ b/OpenSim/Server/Handlers/Presence/PresenceServerPostHandler.cs
@@ -227,7 +227,10 @@ namespace OpenSim.Server.Handlers.Presence
227 string[] userIDs; 227 string[] userIDs;
228 228
229 if (!request.ContainsKey("uuids")) 229 if (!request.ContainsKey("uuids"))
230 {
231 m_log.DebugFormat("[PRESENCE HANDLER]: GetAgents called without required uuids argument");
230 return FailureResult(); 232 return FailureResult();
233 }
231 234
232 if (!(request["uuids"] is List<string>)) 235 if (!(request["uuids"] is List<string>))
233 { 236 {
diff --git a/OpenSim/Services/Connectors/Presence/PresenceServiceConnector.cs b/OpenSim/Services/Connectors/Presence/PresenceServiceConnector.cs
index fac3d1f..cc219cc 100644
--- a/OpenSim/Services/Connectors/Presence/PresenceServiceConnector.cs
+++ b/OpenSim/Services/Connectors/Presence/PresenceServiceConnector.cs
@@ -321,7 +321,7 @@ namespace OpenSim.Services.Connectors
321 321
322 string reply = string.Empty; 322 string reply = string.Empty;
323 string reqString = ServerUtils.BuildQueryString(sendData); 323 string reqString = ServerUtils.BuildQueryString(sendData);
324 // m_log.DebugFormat("[PRESENCE CONNECTOR]: queryString = {0}", reqString); 324 //m_log.DebugFormat("[PRESENCE CONNECTOR]: queryString = {0}", reqString);
325 try 325 try
326 { 326 {
327 reply = SynchronousRestFormsRequester.MakeRequest("POST", 327 reply = SynchronousRestFormsRequester.MakeRequest("POST",
@@ -351,7 +351,7 @@ namespace OpenSim.Services.Connectors
351 } 351 }
352 352
353 Dictionary<string, object>.ValueCollection pinfosList = replyData.Values; 353 Dictionary<string, object>.ValueCollection pinfosList = replyData.Values;
354 //m_log.DebugFormat("[PRESENCE CONNECTOR]: GetAgents returned {0} elements", pinfosList.Count); 354 m_log.DebugFormat("[PRESENCE CONNECTOR]: GetAgents returned {0} elements", pinfosList.Count);
355 foreach (object presence in pinfosList) 355 foreach (object presence in pinfosList)
356 { 356 {
357 if (presence is Dictionary<string, object>) 357 if (presence is Dictionary<string, object>)
diff --git a/OpenSim/Services/PresenceService/PresenceService.cs b/OpenSim/Services/PresenceService/PresenceService.cs
index 350eac8..1a31965 100644
--- a/OpenSim/Services/PresenceService/PresenceService.cs
+++ b/OpenSim/Services/PresenceService/PresenceService.cs
@@ -206,6 +206,7 @@ namespace OpenSim.Services.PresenceService
206 } 206 }
207 } 207 }
208 208
209 m_log.DebugFormat("[PRESENCE SERVICE]: GetAgents for {0} userIDs found {1} presences", userIDs.Length, info.Count);
209 return info.ToArray(); 210 return info.ToArray();
210 } 211 }
211 212