diff options
3 files changed, 26 insertions, 22 deletions
diff --git a/OpenSim/Region/CoreModules/ServiceConnectorsOut/Presence/LocalPresenceServiceConnector.cs b/OpenSim/Region/CoreModules/ServiceConnectorsOut/Presence/LocalPresenceServiceConnector.cs index 0012f0a..24362c7 100644 --- a/OpenSim/Region/CoreModules/ServiceConnectorsOut/Presence/LocalPresenceServiceConnector.cs +++ b/OpenSim/Region/CoreModules/ServiceConnectorsOut/Presence/LocalPresenceServiceConnector.cs | |||
@@ -81,7 +81,7 @@ namespace OpenSim.Region.CoreModules.ServiceConnectorsOut.Presence | |||
81 | 81 | ||
82 | if (serviceDll == String.Empty) | 82 | if (serviceDll == String.Empty) |
83 | { | 83 | { |
84 | m_log.Error("[LOCAL PRESENCE CONNECTOR]: No LocalServiceModule named in section InventoryService"); | 84 | m_log.Error("[LOCAL PRESENCE CONNECTOR]: No LocalServiceModule named in section PresenceService"); |
85 | return; | 85 | return; |
86 | } | 86 | } |
87 | 87 | ||
@@ -176,7 +176,7 @@ namespace OpenSim.Region.CoreModules.ServiceConnectorsOut.Presence | |||
176 | return m_PresenceService.GetAgent(sessionID); | 176 | return m_PresenceService.GetAgent(sessionID); |
177 | } | 177 | } |
178 | 178 | ||
179 | public PresenceInfo[] GetAgents(UUID[] principalIDs) | 179 | public PresenceInfo[] GetAgents(string[] principalIDs) |
180 | { | 180 | { |
181 | return m_PresenceService.GetAgents(principalIDs); | 181 | return m_PresenceService.GetAgents(principalIDs); |
182 | } | 182 | } |
diff --git a/OpenSim/Services/Interfaces/IPresenceService.cs b/OpenSim/Services/Interfaces/IPresenceService.cs index 70d4b28..1cda13c 100644 --- a/OpenSim/Services/Interfaces/IPresenceService.cs +++ b/OpenSim/Services/Interfaces/IPresenceService.cs | |||
@@ -52,6 +52,6 @@ namespace OpenSim.Services.Interfaces | |||
52 | bool ReportAgent(UUID sessionID, UUID regionID, Vector3 position, Vector3 lookAt); | 52 | bool ReportAgent(UUID sessionID, UUID regionID, Vector3 position, Vector3 lookAt); |
53 | 53 | ||
54 | PresenceInfo GetAgent(UUID sessionID); | 54 | PresenceInfo GetAgent(UUID sessionID); |
55 | PresenceInfo[] GetAgents(UUID[] PrincipalIDs); | 55 | PresenceInfo[] GetAgents(string[] principalIDs); |
56 | } | 56 | } |
57 | } | 57 | } |
diff --git a/OpenSim/Services/PresenceService/PresenceService.cs b/OpenSim/Services/PresenceService/PresenceService.cs index 6542c25..0529d3d 100644 --- a/OpenSim/Services/PresenceService/PresenceService.cs +++ b/OpenSim/Services/PresenceService/PresenceService.cs | |||
@@ -116,30 +116,34 @@ namespace OpenSim.Services.PresenceService | |||
116 | return ret; | 116 | return ret; |
117 | } | 117 | } |
118 | 118 | ||
119 | public PresenceInfo[] GetAgents(UUID[] PrincipalIDs) | 119 | public PresenceInfo[] GetAgents(string[] principalIDs) |
120 | { | 120 | { |
121 | List<PresenceInfo> info = new List<PresenceInfo>(); | 121 | List<PresenceInfo> info = new List<PresenceInfo>(); |
122 | 122 | ||
123 | foreach (UUID principalID in PrincipalIDs) | 123 | foreach (string principalIDStr in principalIDs) |
124 | { | 124 | { |
125 | PresenceData[] data = m_Database.Get("PrincipalID", | 125 | UUID principalID = UUID.Zero; |
126 | principalID.ToString()); | 126 | if (UUID.TryParse(principalIDStr, out principalID)) |
127 | |||
128 | foreach (PresenceData d in data) | ||
129 | { | 127 | { |
130 | PresenceInfo ret = new PresenceInfo(); | 128 | PresenceData[] data = m_Database.Get("PrincipalID", |
131 | 129 | principalID.ToString()); | |
132 | ret.PrincipalID = d.PrincipalID; | 130 | |
133 | ret.RegionID = d.RegionID; | 131 | foreach (PresenceData d in data) |
134 | ret.Online = bool.Parse(d.Data["Online"]); | 132 | { |
135 | ret.Login = Util.ToDateTime(Convert.ToInt32( | 133 | PresenceInfo ret = new PresenceInfo(); |
136 | d.Data["Login"])); | 134 | |
137 | ret.Logout = Util.ToDateTime(Convert.ToInt32( | 135 | ret.PrincipalID = d.PrincipalID; |
138 | d.Data["Logout"])); | 136 | ret.RegionID = d.RegionID; |
139 | ret.Position = Vector3.Parse(d.Data["Position"]); | 137 | ret.Online = bool.Parse(d.Data["Online"]); |
140 | ret.LookAt = Vector3.Parse(d.Data["LookAt"]); | 138 | ret.Login = Util.ToDateTime(Convert.ToInt32( |
141 | 139 | d.Data["Login"])); | |
142 | info.Add(ret); | 140 | ret.Logout = Util.ToDateTime(Convert.ToInt32( |
141 | d.Data["Logout"])); | ||
142 | ret.Position = Vector3.Parse(d.Data["Position"]); | ||
143 | ret.LookAt = Vector3.Parse(d.Data["LookAt"]); | ||
144 | |||
145 | info.Add(ret); | ||
146 | } | ||
143 | } | 147 | } |
144 | } | 148 | } |
145 | 149 | ||