diff options
Diffstat (limited to 'OpenSim/Services/Connectors/SimianGrid/SimianFriendsServiceConnector.cs')
-rw-r--r-- | OpenSim/Services/Connectors/SimianGrid/SimianFriendsServiceConnector.cs | 25 |
1 files changed, 21 insertions, 4 deletions
diff --git a/OpenSim/Services/Connectors/SimianGrid/SimianFriendsServiceConnector.cs b/OpenSim/Services/Connectors/SimianGrid/SimianFriendsServiceConnector.cs index 6f2d735..7422d94 100644 --- a/OpenSim/Services/Connectors/SimianGrid/SimianFriendsServiceConnector.cs +++ b/OpenSim/Services/Connectors/SimianGrid/SimianFriendsServiceConnector.cs | |||
@@ -78,6 +78,11 @@ namespace OpenSim.Services.Connectors.SimianGrid | |||
78 | 78 | ||
79 | public FriendInfo[] GetFriends(UUID principalID) | 79 | public FriendInfo[] GetFriends(UUID principalID) |
80 | { | 80 | { |
81 | return GetFriends(principalID.ToString()); | ||
82 | } | ||
83 | |||
84 | public FriendInfo[] GetFriends(string principalID) | ||
85 | { | ||
81 | if (String.IsNullOrEmpty(m_serverUrl)) | 86 | if (String.IsNullOrEmpty(m_serverUrl)) |
82 | return new FriendInfo[0]; | 87 | return new FriendInfo[0]; |
83 | 88 | ||
@@ -95,7 +100,14 @@ namespace OpenSim.Services.Connectors.SimianGrid | |||
95 | UUID friendID = friendEntry["Key"].AsUUID(); | 100 | UUID friendID = friendEntry["Key"].AsUUID(); |
96 | 101 | ||
97 | FriendInfo friend = new FriendInfo(); | 102 | FriendInfo friend = new FriendInfo(); |
98 | friend.PrincipalID = principalID; | 103 | if (!UUID.TryParse(principalID, out friend.PrincipalID)) |
104 | { | ||
105 | string tmp = string.Empty; | ||
106 | if (!Util.ParseUniversalUserIdentifier(principalID, out friend.PrincipalID, out tmp, out tmp, out tmp, out tmp)) | ||
107 | // bad record. ignore this entry | ||
108 | continue; | ||
109 | } | ||
110 | |||
99 | friend.Friend = friendID.ToString(); | 111 | friend.Friend = friendID.ToString(); |
100 | friend.MyFlags = friendEntry["Value"].AsInteger(); | 112 | friend.MyFlags = friendEntry["Value"].AsInteger(); |
101 | friend.TheirFlags = -1; | 113 | friend.TheirFlags = -1; |
@@ -127,7 +139,7 @@ namespace OpenSim.Services.Connectors.SimianGrid | |||
127 | return array; | 139 | return array; |
128 | } | 140 | } |
129 | 141 | ||
130 | public bool StoreFriend(UUID principalID, string friend, int flags) | 142 | public bool StoreFriend(string principalID, string friend, int flags) |
131 | { | 143 | { |
132 | if (String.IsNullOrEmpty(m_serverUrl)) | 144 | if (String.IsNullOrEmpty(m_serverUrl)) |
133 | return true; | 145 | return true; |
@@ -152,6 +164,11 @@ namespace OpenSim.Services.Connectors.SimianGrid | |||
152 | 164 | ||
153 | public bool Delete(UUID principalID, string friend) | 165 | public bool Delete(UUID principalID, string friend) |
154 | { | 166 | { |
167 | return Delete(principalID.ToString(), friend); | ||
168 | } | ||
169 | |||
170 | public bool Delete(string principalID, string friend) | ||
171 | { | ||
155 | if (String.IsNullOrEmpty(m_serverUrl)) | 172 | if (String.IsNullOrEmpty(m_serverUrl)) |
156 | return true; | 173 | return true; |
157 | 174 | ||
@@ -174,7 +191,7 @@ namespace OpenSim.Services.Connectors.SimianGrid | |||
174 | 191 | ||
175 | #endregion IFriendsService | 192 | #endregion IFriendsService |
176 | 193 | ||
177 | private OSDArray GetFriended(UUID ownerID) | 194 | private OSDArray GetFriended(string ownerID) |
178 | { | 195 | { |
179 | NameValueCollection requestArgs = new NameValueCollection | 196 | NameValueCollection requestArgs = new NameValueCollection |
180 | { | 197 | { |
@@ -195,7 +212,7 @@ namespace OpenSim.Services.Connectors.SimianGrid | |||
195 | } | 212 | } |
196 | } | 213 | } |
197 | 214 | ||
198 | private OSDArray GetFriendedBy(UUID ownerID) | 215 | private OSDArray GetFriendedBy(string ownerID) |
199 | { | 216 | { |
200 | NameValueCollection requestArgs = new NameValueCollection | 217 | NameValueCollection requestArgs = new NameValueCollection |
201 | { | 218 | { |