aboutsummaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
-rw-r--r--OpenSim/Framework/AssetBase.cs31
-rw-r--r--OpenSim/Framework/Communications/Cache/AssetCache.cs43
-rw-r--r--OpenSim/Framework/Communications/Tests/Cache/AssetCacheTests.cs98
-rw-r--r--OpenSim/Framework/Tests/AssetBaseTest.cs49
-rw-r--r--OpenSim/Grid/UserServer.Modules/UserManager.cs108
5 files changed, 272 insertions, 57 deletions
diff --git a/OpenSim/Framework/AssetBase.cs b/OpenSim/Framework/AssetBase.cs
index 8e7e059..4e43cb7 100644
--- a/OpenSim/Framework/AssetBase.cs
+++ b/OpenSim/Framework/AssetBase.cs
@@ -49,6 +49,19 @@ namespace OpenSim.Framework
49 m_metadata.Name = name; 49 m_metadata.Name = name;
50 } 50 }
51 51
52 public bool ContainsReferences
53 {
54 get
55 {
56 return
57 IsTextualAsset && (
58 Type != (sbyte)AssetType.Notecard
59 && Type != (sbyte)AssetType.CallingCard
60 && Type != (sbyte)AssetType.LSLText
61 && Type != (sbyte)AssetType.Landmark);
62 }
63 }
64
52 public bool IsTextualAsset 65 public bool IsTextualAsset
53 { 66 {
54 get 67 get
@@ -62,10 +75,22 @@ namespace OpenSim.Framework
62 { 75 {
63 get 76 get
64 { 77 {
65 return 78 return
66 (Type == (sbyte) AssetType.Animation || 79 (Type == (sbyte) AssetType.Animation ||
67 Type == (sbyte) AssetType.Gesture || 80 Type == (sbyte)AssetType.Gesture ||
68 Type == (sbyte) AssetType.ImageJPEG || 81 Type == (sbyte)AssetType.Simstate ||
82 Type == (sbyte)AssetType.Unknown ||
83 Type == (sbyte)AssetType.Object ||
84 Type == (sbyte)AssetType.Sound ||
85 Type == (sbyte)AssetType.SoundWAV ||
86 Type == (sbyte)AssetType.Texture ||
87 Type == (sbyte)AssetType.TextureTGA ||
88 Type == (sbyte)AssetType.Folder ||
89 Type == (sbyte)AssetType.RootFolder ||
90 Type == (sbyte)AssetType.LostAndFoundFolder ||
91 Type == (sbyte)AssetType.SnapshotFolder ||
92 Type == (sbyte)AssetType.TrashFolder ||
93 Type == (sbyte)AssetType.ImageJPEG ||
69 Type == (sbyte) AssetType.ImageTGA || 94 Type == (sbyte) AssetType.ImageTGA ||
70 Type == (sbyte) AssetType.LSLBytecode); 95 Type == (sbyte) AssetType.LSLBytecode);
71 } 96 }
diff --git a/OpenSim/Framework/Communications/Cache/AssetCache.cs b/OpenSim/Framework/Communications/Cache/AssetCache.cs
index b571c0b..cbb2a5a 100644
--- a/OpenSim/Framework/Communications/Cache/AssetCache.cs
+++ b/OpenSim/Framework/Communications/Cache/AssetCache.cs
@@ -393,22 +393,26 @@ namespace OpenSim.Framework.Communications.Cache
393 393
394 protected void ProcessReceivedAsset(bool IsTexture, AssetInfo assetInf) 394 protected void ProcessReceivedAsset(bool IsTexture, AssetInfo assetInf)
395 { 395 {
396 if(!IsTexture && assetInf.ContainsReferences && false )
397 {
398 assetInf.Data = ProcessAssetData(assetInf.Data);
399 }
396 } 400 }
397 401
398 // See IAssetReceiver 402 // See IAssetReceiver
399 public virtual void AssetNotFound(UUID assetID, bool IsTexture) 403 public virtual void AssetNotFound(UUID assetId, bool isTexture)
400 { 404 {
401// m_log.WarnFormat("[ASSET CACHE]: AssetNotFound for {0}", assetID); 405// m_log.WarnFormat("[ASSET CACHE]: AssetNotFound for {0}", assetId);
402 406
403 // Remember the fact that this asset could not be found to prevent delays from repeated requests 407 // Remember the fact that this asset could not be found to prevent delays from repeated requests
404 m_memcache.Add(assetID, null, TimeSpan.FromHours(24)); 408 m_memcache.Add(assetId, null, TimeSpan.FromHours(24));
405 409
406 // Notify requesters for this asset 410 // Notify requesters for this asset
407 AssetRequestsList reqList; 411 AssetRequestsList reqList;
408 lock (RequestLists) 412 lock (RequestLists)
409 { 413 {
410 if (RequestLists.TryGetValue(assetID, out reqList)) 414 if (RequestLists.TryGetValue(assetId, out reqList))
411 RequestLists.Remove(assetID); 415 RequestLists.Remove(assetId);
412 } 416 }
413 417
414 if (reqList != null) 418 if (reqList != null)
@@ -418,7 +422,7 @@ namespace OpenSim.Framework.Communications.Cache
418 422
419 foreach (NewAssetRequest req in reqList.Requests) 423 foreach (NewAssetRequest req in reqList.Requests)
420 { 424 {
421 req.Callback(assetID, null); 425 req.Callback(assetId, null);
422 } 426 }
423 } 427 }
424 } 428 }
@@ -554,12 +558,12 @@ namespace OpenSim.Framework.Communications.Cache
554 { 558 {
555 string data = Encoding.ASCII.GetString(assetData); 559 string data = Encoding.ASCII.GetString(assetData);
556 560
557 data = ProcessAssetDataString(data); 561 data = ProcessAssetDataString(data, null);
558 562
559 return Encoding.ASCII.GetBytes( data ); 563 return Encoding.ASCII.GetBytes( data );
560 } 564 }
561 565
562 public string ProcessAssetDataString(string data) 566 public string ProcessAssetDataString(string data, IUserService userService)
563 { 567 {
564 Regex regex = new Regex("(creator_url|owner_url)\\s+(\\S+)"); 568 Regex regex = new Regex("(creator_url|owner_url)\\s+(\\S+)");
565 569
@@ -571,16 +575,18 @@ namespace OpenSim.Framework.Communications.Cache
571 575
572 string value = m.Groups[2].Captures[0].Value; 576 string value = m.Groups[2].Captures[0].Value;
573 577
574 Guid id = Util.GetHashGuid(value, AssetInfo.Secret); 578 Uri userUri;
575 579
576 switch (key) 580 switch (key)
577 { 581 {
578 case "creator_url": 582 case "creator_url":
579 result = "creator_id " + id; 583 userUri = new Uri(value);
584 result = "creator_id " + ResolveUserUri(userService, userUri);
580 break; 585 break;
581 586
582 case "owner_url": 587 case "owner_url":
583 result = "owner_id " + id; 588 userUri = new Uri(value);
589 result = "owner_id " + ResolveUserUri(userService, userUri);
584 break; 590 break;
585 } 591 }
586 592
@@ -590,6 +596,21 @@ namespace OpenSim.Framework.Communications.Cache
590 return data; 596 return data;
591 } 597 }
592 598
599 private Guid ResolveUserUri(IUserService userService, Uri userUri)
600 {
601 Guid id;
602 UserProfileData userProfile = userService.GetUserProfile(userUri);
603 if( userProfile == null )
604 {
605 id = Guid.Empty;
606 }
607 else
608 {
609 id = userProfile.ID.Guid;
610 }
611 return id;
612 }
613
593 614
594 public class AssetRequest 615 public class AssetRequest
595 { 616 {
diff --git a/OpenSim/Framework/Communications/Tests/Cache/AssetCacheTests.cs b/OpenSim/Framework/Communications/Tests/Cache/AssetCacheTests.cs
index 70a398e..3779f55 100644
--- a/OpenSim/Framework/Communications/Tests/Cache/AssetCacheTests.cs
+++ b/OpenSim/Framework/Communications/Tests/Cache/AssetCacheTests.cs
@@ -25,6 +25,8 @@
25 * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
26 */ 26 */
27 27
28using System;
29using System.Collections.Generic;
28using System.Threading; 30using System.Threading;
29using NUnit.Framework; 31using NUnit.Framework;
30using NUnit.Framework.SyntaxHelpers; 32using NUnit.Framework.SyntaxHelpers;
@@ -85,15 +87,105 @@ namespace OpenSim.Framework.Communications.Tests
85 } 87 }
86 } 88 }
87 89
90 private class FakeUserService : IUserService
91 {
92 public UserProfileData GetUserProfile(string firstName, string lastName)
93 {
94 throw new NotImplementedException();
95 }
96
97 public UserProfileData GetUserProfile(UUID userId)
98 {
99 throw new NotImplementedException();
100 }
101
102 public UserProfileData GetUserProfile(Uri uri)
103 {
104 UserProfileData userProfile = new UserProfileData();
105
106 userProfile.ID = new UUID( Util.GetHashGuid( uri.ToString(), AssetCache.AssetInfo.Secret ));
107
108 return userProfile;
109 }
110
111 public UserAgentData GetAgentByUUID(UUID userId)
112 {
113 throw new NotImplementedException();
114 }
115
116 public void ClearUserAgent(UUID avatarID)
117 {
118 throw new NotImplementedException();
119 }
120
121 public List<AvatarPickerAvatar> GenerateAgentPickerRequestResponse(UUID QueryID, string Query)
122 {
123 throw new NotImplementedException();
124 }
125
126 public UserProfileData SetupMasterUser(string firstName, string lastName)
127 {
128 throw new NotImplementedException();
129 }
130
131 public UserProfileData SetupMasterUser(string firstName, string lastName, string password)
132 {
133 throw new NotImplementedException();
134 }
135
136 public UserProfileData SetupMasterUser(UUID userId)
137 {
138 throw new NotImplementedException();
139 }
140
141 public bool UpdateUserProfile(UserProfileData data)
142 {
143 throw new NotImplementedException();
144 }
145
146 public void AddNewUserFriend(UUID friendlistowner, UUID friend, uint perms)
147 {
148 throw new NotImplementedException();
149 }
150
151 public void RemoveUserFriend(UUID friendlistowner, UUID friend)
152 {
153 throw new NotImplementedException();
154 }
155
156 public void UpdateUserFriendPerms(UUID friendlistowner, UUID friend, uint perms)
157 {
158 throw new NotImplementedException();
159 }
160
161 public void LogOffUser(UUID userid, UUID regionid, ulong regionhandle, Vector3 position, Vector3 lookat)
162 {
163 throw new NotImplementedException();
164 }
165
166 public void LogOffUser(UUID userid, UUID regionid, ulong regionhandle, float posx, float posy, float posz)
167 {
168 throw new NotImplementedException();
169 }
170
171 public List<FriendListItem> GetUserFriendList(UUID friendlistowner)
172 {
173 throw new NotImplementedException();
174 }
175 }
176
88 [Test] 177 [Test]
89 public void ProcessAssetDataTest() 178 public void TestProcessAssetData()
90 { 179 {
91 string url = "http://host/dir/"; 180 string url = "http://host/dir/";
92 string data = " creator_url " + url + " "; 181 string creatorData = " creator_url " + url + " ";
182 string ownerData = " owner_url " + url + " ";
93 183
94 AssetCache assetCache = new AssetCache(); 184 AssetCache assetCache = new AssetCache();
185 FakeUserService fakeUserService = new FakeUserService();
95 186
96 Assert.AreEqual(" creator_id "+Util.GetHashGuid( url, AssetCache.AssetInfo.Secret )+" ", assetCache.ProcessAssetDataString( data )); 187 Assert.AreEqual(" creator_id " + Util.GetHashGuid(url, AssetCache.AssetInfo.Secret) + " ", assetCache.ProcessAssetDataString(creatorData, fakeUserService));
188 Assert.AreEqual(" owner_id " + Util.GetHashGuid(url, AssetCache.AssetInfo.Secret) + " ", assetCache.ProcessAssetDataString(ownerData, fakeUserService));
97 } 189 }
98 } 190 }
99} 191}
diff --git a/OpenSim/Framework/Tests/AssetBaseTest.cs b/OpenSim/Framework/Tests/AssetBaseTest.cs
new file mode 100644
index 0000000..800b41b
--- /dev/null
+++ b/OpenSim/Framework/Tests/AssetBaseTest.cs
@@ -0,0 +1,49 @@
1using System;
2using System.Collections.Generic;
3using System.Text;
4using NUnit.Framework;
5using OpenMetaverse;
6
7namespace OpenSim.Framework.Tests
8{
9 [TestFixture]
10 public class AssetBaseTest
11 {
12 [Test]
13 public void TestContainsReferences()
14 {
15 TestContainsReferences(AssetType.Bodypart, true);
16 TestContainsReferences(AssetType.Clothing, true);
17
18 TestContainsReferences(AssetType.Animation, false);
19 TestContainsReferences(AssetType.CallingCard, false);
20 TestContainsReferences(AssetType.Folder , false);
21 TestContainsReferences(AssetType.Gesture , false);
22 TestContainsReferences(AssetType.ImageJPEG , false);
23 TestContainsReferences(AssetType.ImageTGA , false);
24 TestContainsReferences(AssetType.Landmark , false);
25 TestContainsReferences(AssetType.LostAndFoundFolder, false);
26 TestContainsReferences(AssetType.LSLBytecode, false);
27 TestContainsReferences(AssetType.LSLText, false);
28 TestContainsReferences(AssetType.Notecard, false);
29 TestContainsReferences(AssetType.Object, false);
30 TestContainsReferences(AssetType.RootFolder, false);
31 TestContainsReferences(AssetType.Simstate, false);
32 TestContainsReferences(AssetType.SnapshotFolder, false);
33 TestContainsReferences(AssetType.Sound, false);
34 TestContainsReferences(AssetType.SoundWAV, false);
35 TestContainsReferences(AssetType.Texture, false);
36 TestContainsReferences(AssetType.TextureTGA, false);
37 TestContainsReferences(AssetType.TrashFolder, false);
38 TestContainsReferences(AssetType.Unknown, false);
39 }
40
41 private void TestContainsReferences(AssetType assetType, bool expected)
42 {
43 AssetBase asset = new AssetBase();
44 asset.Type = (sbyte)assetType;
45 bool actual = asset.ContainsReferences;
46 Assert.AreEqual(expected, actual, "Expected "+assetType+".ContainsReferences to be "+expected+" but was "+actual+".");
47 }
48 }
49}
diff --git a/OpenSim/Grid/UserServer.Modules/UserManager.cs b/OpenSim/Grid/UserServer.Modules/UserManager.cs
index c40201e..515c2bf 100644
--- a/OpenSim/Grid/UserServer.Modules/UserManager.cs
+++ b/OpenSim/Grid/UserServer.Modules/UserManager.cs
@@ -41,7 +41,7 @@ namespace OpenSim.Grid.UserServer.Modules
41{ 41{
42 public delegate void logOffUser(UUID AgentID); 42 public delegate void logOffUser(UUID AgentID);
43 43
44 public class UserManager 44 public class UserManager
45 { 45 {
46 private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType); 46 private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
47 47
@@ -50,12 +50,12 @@ namespace OpenSim.Grid.UserServer.Modules
50 50
51 private UserDataBaseService m_userDataBaseService; 51 private UserDataBaseService m_userDataBaseService;
52 private BaseHttpServer m_httpServer; 52 private BaseHttpServer m_httpServer;
53 53
54 /// <summary> 54 /// <summary>
55 /// 55 ///
56 /// </summary> 56 /// </summary>
57 /// <param name="userDataBaseService"></param> 57 /// <param name="userDataBaseService"></param>
58 public UserManager( UserDataBaseService userDataBaseService) 58 public UserManager(UserDataBaseService userDataBaseService)
59 { 59 {
60 m_userDataBaseService = userDataBaseService; 60 m_userDataBaseService = userDataBaseService;
61 } 61 }
@@ -70,10 +70,38 @@ namespace OpenSim.Grid.UserServer.Modules
70 70
71 } 71 }
72 72
73 private string RESTGetUserProfile(string request, string path, string param, OSHttpRequest httpRequest, OSHttpResponse httpResponse)
74 {
75 UUID id;
76 UserProfileData userProfile;
77
78 try
79 {
80 id = new UUID(param);
81 }
82 catch (Exception)
83 {
84 httpResponse.StatusCode = 500;
85 return "Malformed Param [" + param + "]";
86 }
87
88 userProfile = m_userDataBaseService.GetUserProfile(id);
89
90 if (userProfile == null)
91 {
92 httpResponse.StatusCode = 404;
93 return "Not Found.";
94 }
95
96 return ProfileToXmlRPCResponse(userProfile).ToString();
97 }
98
73 public void RegisterHandlers(BaseHttpServer httpServer) 99 public void RegisterHandlers(BaseHttpServer httpServer)
74 { 100 {
75 m_httpServer = httpServer; 101 m_httpServer = httpServer;
76 102
103 m_httpServer.AddStreamHandler(new RestStreamHandler("GET", "/users/", RESTGetUserProfile));
104
77 m_httpServer.AddXmlRPCHandler("get_user_by_name", XmlRPCGetUserMethodName); 105 m_httpServer.AddXmlRPCHandler("get_user_by_name", XmlRPCGetUserMethodName);
78 m_httpServer.AddXmlRPCHandler("get_user_by_uuid", XmlRPCGetUserMethodUUID); 106 m_httpServer.AddXmlRPCHandler("get_user_by_uuid", XmlRPCGetUserMethodUUID);
79 m_httpServer.AddXmlRPCHandler("get_avatar_picker_avatar", XmlRPCGetAvatarPickerAvatar); 107 m_httpServer.AddXmlRPCHandler("get_avatar_picker_avatar", XmlRPCGetAvatarPickerAvatar);
@@ -191,24 +219,24 @@ namespace OpenSim.Grid.UserServer.Modules
191 public XmlRpcResponse XmlRPCGetAvatarPickerAvatar(XmlRpcRequest request) 219 public XmlRpcResponse XmlRPCGetAvatarPickerAvatar(XmlRpcRequest request)
192 { 220 {
193 // XmlRpcResponse response = new XmlRpcResponse(); 221 // XmlRpcResponse response = new XmlRpcResponse();
194 Hashtable requestData = (Hashtable) request.Params[0]; 222 Hashtable requestData = (Hashtable)request.Params[0];
195 List<AvatarPickerAvatar> returnAvatar = new List<AvatarPickerAvatar>(); 223 List<AvatarPickerAvatar> returnAvatar = new List<AvatarPickerAvatar>();
196 UUID queryID = new UUID(UUID.Zero.ToString()); 224 UUID queryID = new UUID(UUID.Zero.ToString());
197 225
198 if (requestData.Contains("avquery") && requestData.Contains("queryid")) 226 if (requestData.Contains("avquery") && requestData.Contains("queryid"))
199 { 227 {
200 queryID = new UUID((string) requestData["queryid"]); 228 queryID = new UUID((string)requestData["queryid"]);
201 returnAvatar = m_userDataBaseService.GenerateAgentPickerRequestResponse(queryID, (string) requestData["avquery"]); 229 returnAvatar = m_userDataBaseService.GenerateAgentPickerRequestResponse(queryID, (string)requestData["avquery"]);
202 } 230 }
203 231
204 m_log.InfoFormat("[AVATARINFO]: Servicing Avatar Query: " + (string) requestData["avquery"]); 232 m_log.InfoFormat("[AVATARINFO]: Servicing Avatar Query: " + (string)requestData["avquery"]);
205 return AvatarPickerListtoXmlRPCResponse(queryID, returnAvatar); 233 return AvatarPickerListtoXmlRPCResponse(queryID, returnAvatar);
206 } 234 }
207 235
208 public XmlRpcResponse XmlRPCAtRegion(XmlRpcRequest request) 236 public XmlRpcResponse XmlRPCAtRegion(XmlRpcRequest request)
209 { 237 {
210 XmlRpcResponse response = new XmlRpcResponse(); 238 XmlRpcResponse response = new XmlRpcResponse();
211 Hashtable requestData = (Hashtable) request.Params[0]; 239 Hashtable requestData = (Hashtable)request.Params[0];
212 Hashtable responseData = new Hashtable(); 240 Hashtable responseData = new Hashtable();
213 string returnstring = "FALSE"; 241 string returnstring = "FALSE";
214 242
@@ -219,14 +247,14 @@ namespace OpenSim.Grid.UserServer.Modules
219 UUID regionUUID; 247 UUID regionUUID;
220 UUID avatarUUID; 248 UUID avatarUUID;
221 249
222 UUID.TryParse((string) requestData["avatar_id"], out avatarUUID); 250 UUID.TryParse((string)requestData["avatar_id"], out avatarUUID);
223 UUID.TryParse((string) requestData["region_uuid"], out regionUUID); 251 UUID.TryParse((string)requestData["region_uuid"], out regionUUID);
224 252
225 if (avatarUUID != UUID.Zero) 253 if (avatarUUID != UUID.Zero)
226 { 254 {
227 UserProfileData userProfile = m_userDataBaseService.GetUserProfile(avatarUUID); 255 UserProfileData userProfile = m_userDataBaseService.GetUserProfile(avatarUUID);
228 userProfile.CurrentAgent.Region = regionUUID; 256 userProfile.CurrentAgent.Region = regionUUID;
229 userProfile.CurrentAgent.Handle = (ulong) Convert.ToInt64((string) requestData["region_handle"]); 257 userProfile.CurrentAgent.Handle = (ulong)Convert.ToInt64((string)requestData["region_handle"]);
230 //userProfile.CurrentAgent. 258 //userProfile.CurrentAgent.
231 m_userDataBaseService.CommitAgent(ref userProfile); 259 m_userDataBaseService.CommitAgent(ref userProfile);
232 //setUserProfile(userProfile); 260 //setUserProfile(userProfile);
@@ -243,11 +271,11 @@ namespace OpenSim.Grid.UserServer.Modules
243 public XmlRpcResponse XmlRPCGetUserMethodName(XmlRpcRequest request) 271 public XmlRpcResponse XmlRPCGetUserMethodName(XmlRpcRequest request)
244 { 272 {
245 // XmlRpcResponse response = new XmlRpcResponse(); 273 // XmlRpcResponse response = new XmlRpcResponse();
246 Hashtable requestData = (Hashtable) request.Params[0]; 274 Hashtable requestData = (Hashtable)request.Params[0];
247 UserProfileData userProfile; 275 UserProfileData userProfile;
248 if (requestData.Contains("avatar_name")) 276 if (requestData.Contains("avatar_name"))
249 { 277 {
250 string query = (string) requestData["avatar_name"]; 278 string query = (string)requestData["avatar_name"];
251 279
252 if (null == query) 280 if (null == query)
253 return CreateUnknownUserErrorResponse(); 281 return CreateUnknownUserErrorResponse();
@@ -280,7 +308,7 @@ namespace OpenSim.Grid.UserServer.Modules
280 public XmlRpcResponse XmlRPCGetUserMethodUUID(XmlRpcRequest request) 308 public XmlRpcResponse XmlRPCGetUserMethodUUID(XmlRpcRequest request)
281 { 309 {
282 // XmlRpcResponse response = new XmlRpcResponse(); 310 // XmlRpcResponse response = new XmlRpcResponse();
283 Hashtable requestData = (Hashtable) request.Params[0]; 311 Hashtable requestData = (Hashtable)request.Params[0];
284 UserProfileData userProfile; 312 UserProfileData userProfile;
285 //CFK: this clogs the UserServer log and is not necessary at this time. 313 //CFK: this clogs the UserServer log and is not necessary at this time.
286 //CFK: m_log.Debug("METHOD BY UUID CALLED"); 314 //CFK: m_log.Debug("METHOD BY UUID CALLED");
@@ -288,7 +316,7 @@ namespace OpenSim.Grid.UserServer.Modules
288 { 316 {
289 try 317 try
290 { 318 {
291 UUID guess = new UUID((string) requestData["avatar_uuid"]); 319 UUID guess = new UUID((string)requestData["avatar_uuid"]);
292 320
293 userProfile = m_userDataBaseService.GetUserProfile(guess); 321 userProfile = m_userDataBaseService.GetUserProfile(guess);
294 } 322 }
@@ -313,7 +341,7 @@ namespace OpenSim.Grid.UserServer.Modules
313 public XmlRpcResponse XmlRPCGetAgentMethodUUID(XmlRpcRequest request) 341 public XmlRpcResponse XmlRPCGetAgentMethodUUID(XmlRpcRequest request)
314 { 342 {
315 XmlRpcResponse response = new XmlRpcResponse(); 343 XmlRpcResponse response = new XmlRpcResponse();
316 Hashtable requestData = (Hashtable) request.Params[0]; 344 Hashtable requestData = (Hashtable)request.Params[0];
317 UserProfileData userProfile; 345 UserProfileData userProfile;
318 //CFK: this clogs the UserServer log and is not necessary at this time. 346 //CFK: this clogs the UserServer log and is not necessary at this time.
319 //CFK: m_log.Debug("METHOD BY UUID CALLED"); 347 //CFK: m_log.Debug("METHOD BY UUID CALLED");
@@ -321,7 +349,7 @@ namespace OpenSim.Grid.UserServer.Modules
321 { 349 {
322 UUID guess; 350 UUID guess;
323 351
324 UUID.TryParse((string) requestData["avatar_uuid"], out guess); 352 UUID.TryParse((string)requestData["avatar_uuid"], out guess);
325 353
326 if (guess == UUID.Zero) 354 if (guess == UUID.Zero)
327 { 355 {
@@ -362,7 +390,7 @@ namespace OpenSim.Grid.UserServer.Modules
362 public XmlRpcResponse XmlRPCCheckAuthSession(XmlRpcRequest request) 390 public XmlRpcResponse XmlRPCCheckAuthSession(XmlRpcRequest request)
363 { 391 {
364 XmlRpcResponse response = new XmlRpcResponse(); 392 XmlRpcResponse response = new XmlRpcResponse();
365 Hashtable requestData = (Hashtable) request.Params[0]; 393 Hashtable requestData = (Hashtable)request.Params[0];
366 UserProfileData userProfile; 394 UserProfileData userProfile;
367 395
368 string authed = "FALSE"; 396 string authed = "FALSE";
@@ -371,12 +399,12 @@ namespace OpenSim.Grid.UserServer.Modules
371 UUID guess_aid; 399 UUID guess_aid;
372 UUID guess_sid; 400 UUID guess_sid;
373 401
374 UUID.TryParse((string) requestData["avatar_uuid"], out guess_aid); 402 UUID.TryParse((string)requestData["avatar_uuid"], out guess_aid);
375 if (guess_aid == UUID.Zero) 403 if (guess_aid == UUID.Zero)
376 { 404 {
377 return CreateUnknownUserErrorResponse(); 405 return CreateUnknownUserErrorResponse();
378 } 406 }
379 UUID.TryParse((string) requestData["session_id"], out guess_sid); 407 UUID.TryParse((string)requestData["session_id"], out guess_sid);
380 if (guess_sid == UUID.Zero) 408 if (guess_sid == UUID.Zero)
381 { 409 {
382 return CreateUnknownUserErrorResponse(); 410 return CreateUnknownUserErrorResponse();
@@ -404,7 +432,7 @@ namespace OpenSim.Grid.UserServer.Modules
404 { 432 {
405 m_log.Debug("[UserManager]: Got request to update user profile"); 433 m_log.Debug("[UserManager]: Got request to update user profile");
406 XmlRpcResponse response = new XmlRpcResponse(); 434 XmlRpcResponse response = new XmlRpcResponse();
407 Hashtable requestData = (Hashtable) request.Params[0]; 435 Hashtable requestData = (Hashtable)request.Params[0];
408 Hashtable responseData = new Hashtable(); 436 Hashtable responseData = new Hashtable();
409 437
410 if (!requestData.Contains("avatar_uuid")) 438 if (!requestData.Contains("avatar_uuid"))
@@ -412,7 +440,7 @@ namespace OpenSim.Grid.UserServer.Modules
412 return CreateUnknownUserErrorResponse(); 440 return CreateUnknownUserErrorResponse();
413 } 441 }
414 442
415 UUID UserUUID = new UUID((string) requestData["avatar_uuid"]); 443 UUID UserUUID = new UUID((string)requestData["avatar_uuid"]);
416 UserProfileData userProfile = m_userDataBaseService.GetUserProfile(UserUUID); 444 UserProfileData userProfile = m_userDataBaseService.GetUserProfile(UserUUID);
417 if (null == userProfile) 445 if (null == userProfile)
418 { 446 {
@@ -424,11 +452,11 @@ namespace OpenSim.Grid.UserServer.Modules
424 } 452 }
425 if (requestData.Contains("FLImageID")) 453 if (requestData.Contains("FLImageID"))
426 { 454 {
427 userProfile.FirstLifeImage = new UUID((string) requestData["FLImageID"]); 455 userProfile.FirstLifeImage = new UUID((string)requestData["FLImageID"]);
428 } 456 }
429 if (requestData.Contains("ImageID")) 457 if (requestData.Contains("ImageID"))
430 { 458 {
431 userProfile.Image = new UUID((string) requestData["ImageID"]); 459 userProfile.Image = new UUID((string)requestData["ImageID"]);
432 } 460 }
433 // dont' know how yet 461 // dont' know how yet
434 if (requestData.Contains("MaturePublish")) 462 if (requestData.Contains("MaturePublish"))
@@ -436,11 +464,11 @@ namespace OpenSim.Grid.UserServer.Modules
436 } 464 }
437 if (requestData.Contains("AboutText")) 465 if (requestData.Contains("AboutText"))
438 { 466 {
439 userProfile.AboutText = (string) requestData["AboutText"]; 467 userProfile.AboutText = (string)requestData["AboutText"];
440 } 468 }
441 if (requestData.Contains("FLAboutText")) 469 if (requestData.Contains("FLAboutText"))
442 { 470 {
443 userProfile.FirstLifeAboutText = (string) requestData["FLAboutText"]; 471 userProfile.FirstLifeAboutText = (string)requestData["FLAboutText"];
444 } 472 }
445 // not in DB yet. 473 // not in DB yet.
446 if (requestData.Contains("ProfileURL")) 474 if (requestData.Contains("ProfileURL"))
@@ -450,7 +478,7 @@ namespace OpenSim.Grid.UserServer.Modules
450 { 478 {
451 try 479 try
452 { 480 {
453 userProfile.HomeRegion = Convert.ToUInt64((string) requestData["home_region"]); 481 userProfile.HomeRegion = Convert.ToUInt64((string)requestData["home_region"]);
454 } 482 }
455 catch (ArgumentException) 483 catch (ArgumentException)
456 { 484 {
@@ -468,14 +496,14 @@ namespace OpenSim.Grid.UserServer.Modules
468 if (requestData.Contains("home_region_id")) 496 if (requestData.Contains("home_region_id"))
469 { 497 {
470 UUID regionID; 498 UUID regionID;
471 UUID.TryParse((string) requestData["home_region_id"], out regionID); 499 UUID.TryParse((string)requestData["home_region_id"], out regionID);
472 userProfile.HomeRegionID = regionID; 500 userProfile.HomeRegionID = regionID;
473 } 501 }
474 if (requestData.Contains("home_pos_x")) 502 if (requestData.Contains("home_pos_x"))
475 { 503 {
476 try 504 try
477 { 505 {
478 userProfile.HomeLocationX = (float) Convert.ToDecimal((string) requestData["home_pos_x"]); 506 userProfile.HomeLocationX = (float)Convert.ToDecimal((string)requestData["home_pos_x"]);
479 } 507 }
480 catch (InvalidCastException) 508 catch (InvalidCastException)
481 { 509 {
@@ -486,7 +514,7 @@ namespace OpenSim.Grid.UserServer.Modules
486 { 514 {
487 try 515 try
488 { 516 {
489 userProfile.HomeLocationY = (float) Convert.ToDecimal((string) requestData["home_pos_y"]); 517 userProfile.HomeLocationY = (float)Convert.ToDecimal((string)requestData["home_pos_y"]);
490 } 518 }
491 catch (InvalidCastException) 519 catch (InvalidCastException)
492 { 520 {
@@ -497,7 +525,7 @@ namespace OpenSim.Grid.UserServer.Modules
497 { 525 {
498 try 526 try
499 { 527 {
500 userProfile.HomeLocationZ = (float) Convert.ToDecimal((string) requestData["home_pos_z"]); 528 userProfile.HomeLocationZ = (float)Convert.ToDecimal((string)requestData["home_pos_z"]);
501 } 529 }
502 catch (InvalidCastException) 530 catch (InvalidCastException)
503 { 531 {
@@ -508,7 +536,7 @@ namespace OpenSim.Grid.UserServer.Modules
508 { 536 {
509 try 537 try
510 { 538 {
511 userProfile.HomeLookAtX = (float) Convert.ToDecimal((string) requestData["home_look_x"]); 539 userProfile.HomeLookAtX = (float)Convert.ToDecimal((string)requestData["home_look_x"]);
512 } 540 }
513 catch (InvalidCastException) 541 catch (InvalidCastException)
514 { 542 {
@@ -519,7 +547,7 @@ namespace OpenSim.Grid.UserServer.Modules
519 { 547 {
520 try 548 try
521 { 549 {
522 userProfile.HomeLookAtY = (float) Convert.ToDecimal((string) requestData["home_look_y"]); 550 userProfile.HomeLookAtY = (float)Convert.ToDecimal((string)requestData["home_look_y"]);
523 } 551 }
524 catch (InvalidCastException) 552 catch (InvalidCastException)
525 { 553 {
@@ -530,7 +558,7 @@ namespace OpenSim.Grid.UserServer.Modules
530 { 558 {
531 try 559 try
532 { 560 {
533 userProfile.HomeLookAtZ = (float) Convert.ToDecimal((string) requestData["home_look_z"]); 561 userProfile.HomeLookAtZ = (float)Convert.ToDecimal((string)requestData["home_look_z"]);
534 } 562 }
535 catch (InvalidCastException) 563 catch (InvalidCastException)
536 { 564 {
@@ -541,7 +569,7 @@ namespace OpenSim.Grid.UserServer.Modules
541 { 569 {
542 try 570 try
543 { 571 {
544 userProfile.UserFlags = Convert.ToInt32((string) requestData["user_flags"]); 572 userProfile.UserFlags = Convert.ToInt32((string)requestData["user_flags"]);
545 } 573 }
546 catch (InvalidCastException) 574 catch (InvalidCastException)
547 { 575 {
@@ -552,7 +580,7 @@ namespace OpenSim.Grid.UserServer.Modules
552 { 580 {
553 try 581 try
554 { 582 {
555 userProfile.GodLevel = Convert.ToInt32((string) requestData["god_level"]); 583 userProfile.GodLevel = Convert.ToInt32((string)requestData["god_level"]);
556 } 584 }
557 catch (InvalidCastException) 585 catch (InvalidCastException)
558 { 586 {
@@ -563,7 +591,7 @@ namespace OpenSim.Grid.UserServer.Modules
563 { 591 {
564 try 592 try
565 { 593 {
566 userProfile.CustomType = (string) requestData["custom_type"]; 594 userProfile.CustomType = (string)requestData["custom_type"];
567 } 595 }
568 catch (InvalidCastException) 596 catch (InvalidCastException)
569 { 597 {
@@ -574,7 +602,7 @@ namespace OpenSim.Grid.UserServer.Modules
574 { 602 {
575 try 603 try
576 { 604 {
577 userProfile.Partner = new UUID((string) requestData["partner"]); 605 userProfile.Partner = new UUID((string)requestData["partner"]);
578 } 606 }
579 catch (InvalidCastException) 607 catch (InvalidCastException)
580 { 608 {
@@ -596,7 +624,7 @@ namespace OpenSim.Grid.UserServer.Modules
596 public XmlRpcResponse XmlRPCLogOffUserMethodUUID(XmlRpcRequest request) 624 public XmlRpcResponse XmlRPCLogOffUserMethodUUID(XmlRpcRequest request)
597 { 625 {
598 XmlRpcResponse response = new XmlRpcResponse(); 626 XmlRpcResponse response = new XmlRpcResponse();
599 Hashtable requestData = (Hashtable) request.Params[0]; 627 Hashtable requestData = (Hashtable)request.Params[0];
600 628
601 if (requestData.Contains("avatar_uuid")) 629 if (requestData.Contains("avatar_uuid"))
602 { 630 {
@@ -685,6 +713,6 @@ namespace OpenSim.Grid.UserServer.Modules
685 public void HandleRegionShutdown(UUID regionID) 713 public void HandleRegionShutdown(UUID regionID)
686 { 714 {
687 m_userDataBaseService.LogoutUsers(regionID); 715 m_userDataBaseService.LogoutUsers(regionID);
688 } 716 }
689 } 717 }
690} 718}