aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Services
diff options
context:
space:
mode:
authorDiva Canto2010-05-08 07:44:07 -0700
committerDiva Canto2010-05-08 07:44:07 -0700
commitd72769930aebb14ae4bfee9803adb13fbb44eb8b (patch)
tree32e9a36cab73a8ddb3528d50281c261815c44658 /OpenSim/Services
parenttest commit for panda (diff)
downloadopensim-SC-d72769930aebb14ae4bfee9803adb13fbb44eb8b.zip
opensim-SC-d72769930aebb14ae4bfee9803adb13fbb44eb8b.tar.gz
opensim-SC-d72769930aebb14ae4bfee9803adb13fbb44eb8b.tar.bz2
opensim-SC-d72769930aebb14ae4bfee9803adb13fbb44eb8b.tar.xz
More cleaning on presence. Friends online/offline works again.
Diffstat (limited to 'OpenSim/Services')
-rw-r--r--OpenSim/Services/Connectors/SimianGrid/SimianPresenceServiceConnector.cs12
-rw-r--r--OpenSim/Services/Interfaces/IPresenceService.cs28
-rw-r--r--OpenSim/Services/PresenceService/PresenceService.cs6
3 files changed, 0 insertions, 46 deletions
diff --git a/OpenSim/Services/Connectors/SimianGrid/SimianPresenceServiceConnector.cs b/OpenSim/Services/Connectors/SimianGrid/SimianPresenceServiceConnector.cs
index e48b7de..b86c45c 100644
--- a/OpenSim/Services/Connectors/SimianGrid/SimianPresenceServiceConnector.cs
+++ b/OpenSim/Services/Connectors/SimianGrid/SimianPresenceServiceConnector.cs
@@ -511,20 +511,8 @@ namespace OpenSim.Services.Connectors.SimianGrid
511 511
512 PresenceInfo info = new PresenceInfo(); 512 PresenceInfo info = new PresenceInfo();
513 513
514 info.Online = true;
515 info.UserID = sessionResponse["UserID"].AsUUID().ToString(); 514 info.UserID = sessionResponse["UserID"].AsUUID().ToString();
516 info.RegionID = sessionResponse["SceneID"].AsUUID(); 515 info.RegionID = sessionResponse["SceneID"].AsUUID();
517 info.Position = sessionResponse["ScenePosition"].AsVector3();
518 info.LookAt = sessionResponse["SceneLookAt"].AsVector3();
519
520 if (userResponse != null && userResponse["User"] is OSDMap)
521 {
522 OSDMap user = (OSDMap)userResponse["User"];
523
524 info.Login = user["LastLoginDate"].AsDate();
525 info.Logout = user["LastLogoutDate"].AsDate();
526 DeserializeLocation(user["HomeLocation"].AsString(), out info.HomeRegionID, out info.HomePosition, out info.HomeLookAt);
527 }
528 516
529 return info; 517 return info;
530 } 518 }
diff --git a/OpenSim/Services/Interfaces/IPresenceService.cs b/OpenSim/Services/Interfaces/IPresenceService.cs
index abbae2c..8d583ff 100644
--- a/OpenSim/Services/Interfaces/IPresenceService.cs
+++ b/OpenSim/Services/Interfaces/IPresenceService.cs
@@ -36,14 +36,6 @@ namespace OpenSim.Services.Interfaces
36 { 36 {
37 public string UserID; 37 public string UserID;
38 public UUID RegionID; 38 public UUID RegionID;
39 public bool Online;
40 public DateTime Login;
41 public DateTime Logout;
42 public Vector3 Position;
43 public Vector3 LookAt;
44 public UUID HomeRegionID;
45 public Vector3 HomePosition;
46 public Vector3 HomeLookAt;
47 39
48 public PresenceInfo() 40 public PresenceInfo()
49 { 41 {
@@ -65,26 +57,6 @@ namespace OpenSim.Services.Interfaces
65 57
66 return result; 58 return result;
67 } 59 }
68
69 public static PresenceInfo[] GetOnlinePresences(PresenceInfo[] pinfos)
70 {
71 if (pinfos == null)
72 return null;
73
74 List<PresenceInfo> lst = new List<PresenceInfo>(pinfos);
75 lst = lst.FindAll(delegate(PresenceInfo each) { return each.Online; });
76
77 return lst.ToArray();
78 }
79
80 public static PresenceInfo GetOnlinePresence(PresenceInfo[] pinfos)
81 {
82 pinfos = GetOnlinePresences(pinfos);
83 if (pinfos != null && pinfos.Length >= 1)
84 return pinfos[0];
85
86 return null;
87 }
88 } 60 }
89 61
90 public interface IPresenceService 62 public interface IPresenceService
diff --git a/OpenSim/Services/PresenceService/PresenceService.cs b/OpenSim/Services/PresenceService/PresenceService.cs
index 7e7e98e..19f636a 100644
--- a/OpenSim/Services/PresenceService/PresenceService.cs
+++ b/OpenSim/Services/PresenceService/PresenceService.cs
@@ -115,10 +115,6 @@ namespace OpenSim.Services.PresenceService
115 115
116 ret.UserID = data.UserID; 116 ret.UserID = data.UserID;
117 ret.RegionID = data.RegionID; 117 ret.RegionID = data.RegionID;
118 if (data.Data.ContainsKey("Position"))
119 ret.Position = Vector3.Parse(data.Data["Position"]);
120 if (data.Data.ContainsKey("LookAt"))
121 ret.LookAt = Vector3.Parse(data.Data["LookAt"]);
122 118
123 return ret; 119 return ret;
124 } 120 }
@@ -138,8 +134,6 @@ namespace OpenSim.Services.PresenceService
138 134
139 ret.UserID = d.UserID; 135 ret.UserID = d.UserID;
140 ret.RegionID = d.RegionID; 136 ret.RegionID = d.RegionID;
141 ret.Position = Vector3.Parse(d.Data["Position"]);
142 ret.LookAt = Vector3.Parse(d.Data["LookAt"]);
143 137
144 info.Add(ret); 138 info.Add(ret);
145 } 139 }