aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Grid/UserServer/UserManager.cs
diff options
context:
space:
mode:
Diffstat (limited to 'OpenSim/Grid/UserServer/UserManager.cs')
-rw-r--r--OpenSim/Grid/UserServer/UserManager.cs69
1 files changed, 29 insertions, 40 deletions
diff --git a/OpenSim/Grid/UserServer/UserManager.cs b/OpenSim/Grid/UserServer/UserManager.cs
index 0a60eff..f3e9884 100644
--- a/OpenSim/Grid/UserServer/UserManager.cs
+++ b/OpenSim/Grid/UserServer/UserManager.cs
@@ -40,20 +40,23 @@ namespace OpenSim.Grid.UserServer
40{ 40{
41 public delegate void logOffUser(UUID AgentID); 41 public delegate void logOffUser(UUID AgentID);
42 42
43 public class UserManager : UserManagerBase 43 public class UserManager
44 { 44 {
45 private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType); 45 private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
46 46
47 public event logOffUser OnLogOffUser; 47 public event logOffUser OnLogOffUser;
48 private logOffUser handlerLogOffUser; 48 private logOffUser handlerLogOffUser;
49
50 private UserDataBaseService m_userDataBaseService;
49 51
50 /// <summary> 52 /// <summary>
51 /// Constructor 53 /// Constructor
52 /// </summary> 54 /// </summary>
53 /// <param name="interServiceInventoryService"></param> 55 /// <param name="interServiceInventoryService"></param>
54 public UserManager(IInterServiceInventoryServices interServiceInventoryService) 56 public UserManager(IInterServiceInventoryServices interServiceInventoryService, UserDataBaseService userDataBaseService)
55 : base(interServiceInventoryService) 57 {
56 {} 58 m_userDataBaseService = userDataBaseService;
59 }
57 60
58 /// <summary> 61 /// <summary>
59 /// Deletes an active agent session 62 /// Deletes an active agent session
@@ -185,7 +188,7 @@ namespace OpenSim.Grid.UserServer
185 if (requestData.Contains("avquery") && requestData.Contains("queryid")) 188 if (requestData.Contains("avquery") && requestData.Contains("queryid"))
186 { 189 {
187 queryID = new UUID((string) requestData["queryid"]); 190 queryID = new UUID((string) requestData["queryid"]);
188 returnAvatar = GenerateAgentPickerRequestResponse(queryID, (string) requestData["avquery"]); 191 returnAvatar = m_userDataBaseService.GenerateAgentPickerRequestResponse(queryID, (string) requestData["avquery"]);
189 } 192 }
190 193
191 m_log.InfoFormat("[AVATARINFO]: Servicing Avatar Query: " + (string) requestData["avquery"]); 194 m_log.InfoFormat("[AVATARINFO]: Servicing Avatar Query: " + (string) requestData["avquery"]);
@@ -211,11 +214,11 @@ namespace OpenSim.Grid.UserServer
211 214
212 if (avatarUUID != UUID.Zero) 215 if (avatarUUID != UUID.Zero)
213 { 216 {
214 UserProfileData userProfile = GetUserProfile(avatarUUID); 217 UserProfileData userProfile = m_userDataBaseService.GetUserProfile(avatarUUID);
215 userProfile.CurrentAgent.Region = regionUUID; 218 userProfile.CurrentAgent.Region = regionUUID;
216 userProfile.CurrentAgent.Handle = (ulong) Convert.ToInt64((string) requestData["region_handle"]); 219 userProfile.CurrentAgent.Handle = (ulong) Convert.ToInt64((string) requestData["region_handle"]);
217 //userProfile.CurrentAgent. 220 //userProfile.CurrentAgent.
218 CommitAgent(ref userProfile); 221 m_userDataBaseService.CommitAgent(ref userProfile);
219 //setUserProfile(userProfile); 222 //setUserProfile(userProfile);
220 223
221 224
@@ -239,7 +242,7 @@ namespace OpenSim.Grid.UserServer
239 requestData.Contains("friendPerms")) 242 requestData.Contains("friendPerms"))
240 { 243 {
241 // UserManagerBase.AddNewuserFriend 244 // UserManagerBase.AddNewuserFriend
242 AddNewUserFriend(new UUID((string) requestData["ownerID"]), 245 m_userDataBaseService.AddNewUserFriend(new UUID((string)requestData["ownerID"]),
243 new UUID((string) requestData["friendID"]), 246 new UUID((string) requestData["friendID"]),
244 (uint) Convert.ToInt32((string) requestData["friendPerms"])); 247 (uint) Convert.ToInt32((string) requestData["friendPerms"]));
245 returnString = "TRUE"; 248 returnString = "TRUE";
@@ -260,7 +263,7 @@ namespace OpenSim.Grid.UserServer
260 if (requestData.Contains("ownerID") && requestData.Contains("friendID")) 263 if (requestData.Contains("ownerID") && requestData.Contains("friendID"))
261 { 264 {
262 // UserManagerBase.AddNewuserFriend 265 // UserManagerBase.AddNewuserFriend
263 RemoveUserFriend(new UUID((string) requestData["ownerID"]), 266 m_userDataBaseService.RemoveUserFriend(new UUID((string)requestData["ownerID"]),
264 new UUID((string) requestData["friendID"])); 267 new UUID((string) requestData["friendID"]));
265 returnString = "TRUE"; 268 returnString = "TRUE";
266 } 269 }
@@ -279,7 +282,7 @@ namespace OpenSim.Grid.UserServer
279 if (requestData.Contains("ownerID") && requestData.Contains("friendID") && 282 if (requestData.Contains("ownerID") && requestData.Contains("friendID") &&
280 requestData.Contains("friendPerms")) 283 requestData.Contains("friendPerms"))
281 { 284 {
282 UpdateUserFriendPerms(new UUID((string) requestData["ownerID"]), 285 m_userDataBaseService.UpdateUserFriendPerms(new UUID((string)requestData["ownerID"]),
283 new UUID((string) requestData["friendID"]), 286 new UUID((string) requestData["friendID"]),
284 (uint) Convert.ToInt32((string) requestData["friendPerms"])); 287 (uint) Convert.ToInt32((string) requestData["friendPerms"]));
285 // UserManagerBase. 288 // UserManagerBase.
@@ -300,7 +303,7 @@ namespace OpenSim.Grid.UserServer
300 303
301 if (requestData.Contains("ownerID")) 304 if (requestData.Contains("ownerID"))
302 { 305 {
303 returndata = GetUserFriendList(new UUID((string) requestData["ownerID"])); 306 returndata = m_userDataBaseService.GetUserFriendList(new UUID((string)requestData["ownerID"]));
304 } 307 }
305 308
306 return FriendListItemListtoXmlRPCResponse(returndata); 309 return FriendListItemListtoXmlRPCResponse(returndata);
@@ -314,7 +317,7 @@ namespace OpenSim.Grid.UserServer
314 Hashtable responseData; 317 Hashtable responseData;
315 if (requestData.Contains("owner")) 318 if (requestData.Contains("owner"))
316 { 319 {
317 appearance = GetUserAppearance(new UUID((string) requestData["owner"])); 320 appearance = m_userDataBaseService.GetUserAppearance(new UUID((string)requestData["owner"]));
318 if (appearance == null) 321 if (appearance == null)
319 { 322 {
320 responseData = new Hashtable(); 323 responseData = new Hashtable();
@@ -345,7 +348,7 @@ namespace OpenSim.Grid.UserServer
345 if (requestData.Contains("owner")) 348 if (requestData.Contains("owner"))
346 { 349 {
347 AvatarAppearance appearance = new AvatarAppearance(requestData); 350 AvatarAppearance appearance = new AvatarAppearance(requestData);
348 UpdateUserAppearance(new UUID((string) requestData["owner"]), appearance); 351 m_userDataBaseService.UpdateUserAppearance(new UUID((string)requestData["owner"]), appearance);
349 responseData = new Hashtable(); 352 responseData = new Hashtable();
350 responseData["returnString"] = "TRUE"; 353 responseData["returnString"] = "TRUE";
351 } 354 }
@@ -374,7 +377,7 @@ namespace OpenSim.Grid.UserServer
374 377
375 if (querysplit.Length == 2) 378 if (querysplit.Length == 2)
376 { 379 {
377 userProfile = GetUserProfile(querysplit[0], querysplit[1]); 380 userProfile = m_userDataBaseService.GetUserProfile(querysplit[0], querysplit[1]);
378 if (userProfile == null) 381 if (userProfile == null)
379 { 382 {
380 return CreateUnknownUserErrorResponse(); 383 return CreateUnknownUserErrorResponse();
@@ -406,7 +409,7 @@ namespace OpenSim.Grid.UserServer
406 { 409 {
407 UUID guess = new UUID((string) requestData["avatar_uuid"]); 410 UUID guess = new UUID((string) requestData["avatar_uuid"]);
408 411
409 userProfile = GetUserProfile(guess); 412 userProfile = m_userDataBaseService.GetUserProfile(guess);
410 } 413 }
411 catch (FormatException) 414 catch (FormatException)
412 { 415 {
@@ -444,7 +447,7 @@ namespace OpenSim.Grid.UserServer
444 return CreateUnknownUserErrorResponse(); 447 return CreateUnknownUserErrorResponse();
445 } 448 }
446 449
447 userProfile = GetUserProfile(guess); 450 userProfile = m_userDataBaseService.GetUserProfile(guess);
448 451
449 if (userProfile == null) 452 if (userProfile == null)
450 { 453 {
@@ -497,7 +500,7 @@ namespace OpenSim.Grid.UserServer
497 { 500 {
498 return CreateUnknownUserErrorResponse(); 501 return CreateUnknownUserErrorResponse();
499 } 502 }
500 userProfile = GetUserProfile(guess_aid); 503 userProfile = m_userDataBaseService.GetUserProfile(guess_aid);
501 if (userProfile != null && userProfile.CurrentAgent != null && 504 if (userProfile != null && userProfile.CurrentAgent != null &&
502 userProfile.CurrentAgent.SessionID == guess_sid) 505 userProfile.CurrentAgent.SessionID == guess_sid)
503 { 506 {
@@ -529,7 +532,7 @@ namespace OpenSim.Grid.UserServer
529 } 532 }
530 533
531 UUID UserUUID = new UUID((string) requestData["avatar_uuid"]); 534 UUID UserUUID = new UUID((string) requestData["avatar_uuid"]);
532 UserProfileData userProfile = GetUserProfile(UserUUID); 535 UserProfileData userProfile = m_userDataBaseService.GetUserProfile(UserUUID);
533 if (null == userProfile) 536 if (null == userProfile)
534 { 537 {
535 return CreateUnknownUserErrorResponse(); 538 return CreateUnknownUserErrorResponse();
@@ -703,7 +706,7 @@ namespace OpenSim.Grid.UserServer
703 } 706 }
704 707
705 // call plugin! 708 // call plugin!
706 bool ret = UpdateUserProfile(userProfile); 709 bool ret = m_userDataBaseService.UpdateUserProfile(userProfile);
707 responseData["returnString"] = ret.ToString(); 710 responseData["returnString"] = ret.ToString();
708 response.Value = responseData; 711 response.Value = responseData;
709 return response; 712 return response;
@@ -734,7 +737,7 @@ namespace OpenSim.Grid.UserServer
734 if (handlerLogOffUser != null) 737 if (handlerLogOffUser != null)
735 handlerLogOffUser(userUUID); 738 handlerLogOffUser(userUUID);
736 739
737 LogOffUser(userUUID, RegionID, regionhandle, position, lookat); 740 m_userDataBaseService.LogOffUser(userUUID, RegionID, regionhandle, position, lookat);
738 } 741 }
739 catch (FormatException) 742 catch (FormatException)
740 { 743 {
@@ -752,35 +755,21 @@ namespace OpenSim.Grid.UserServer
752 755
753 #endregion 756 #endregion
754 757
755 public override UserProfileData SetupMasterUser(string firstName, string lastName)
756 {
757 throw new Exception("The method or operation is not implemented.");
758 }
759
760 public override UserProfileData SetupMasterUser(string firstName, string lastName, string password)
761 {
762 throw new Exception("The method or operation is not implemented.");
763 }
764
765 public override UserProfileData SetupMasterUser(UUID uuid)
766 {
767 throw new Exception("The method or operation is not implemented.");
768 }
769 758
770 public void HandleAgentLocation(UUID agentID, UUID regionID, ulong regionHandle) 759 public void HandleAgentLocation(UUID agentID, UUID regionID, ulong regionHandle)
771 { 760 {
772 UserProfileData userProfile = GetUserProfile(agentID); 761 UserProfileData userProfile = m_userDataBaseService.GetUserProfile(agentID);
773 if (userProfile != null) 762 if (userProfile != null)
774 { 763 {
775 userProfile.CurrentAgent.Region = regionID; 764 userProfile.CurrentAgent.Region = regionID;
776 userProfile.CurrentAgent.Handle = regionHandle; 765 userProfile.CurrentAgent.Handle = regionHandle;
777 CommitAgent(ref userProfile); 766 m_userDataBaseService.CommitAgent(ref userProfile);
778 } 767 }
779 } 768 }
780 769
781 public void HandleAgentLeaving(UUID agentID, UUID regionID, ulong regionHandle) 770 public void HandleAgentLeaving(UUID agentID, UUID regionID, ulong regionHandle)
782 { 771 {
783 UserProfileData userProfile = GetUserProfile(agentID); 772 UserProfileData userProfile = m_userDataBaseService.GetUserProfile(agentID);
784 if (userProfile != null) 773 if (userProfile != null)
785 { 774 {
786 if (userProfile.CurrentAgent.Region == regionID) 775 if (userProfile.CurrentAgent.Region == regionID)
@@ -797,7 +786,7 @@ namespace OpenSim.Grid.UserServer
797 userAgent.Handle = regionHandle; 786 userAgent.Handle = regionHandle;
798 userProfile.LastLogin = userAgent.LogoutTime; 787 userProfile.LastLogin = userAgent.LogoutTime;
799 788
800 CommitAgent(ref userProfile); 789 m_userDataBaseService.CommitAgent(ref userProfile);
801 790
802 handlerLogOffUser = OnLogOffUser; 791 handlerLogOffUser = OnLogOffUser;
803 if (handlerLogOffUser != null) 792 if (handlerLogOffUser != null)
@@ -809,12 +798,12 @@ namespace OpenSim.Grid.UserServer
809 798
810 public void HandleRegionStartup(UUID regionID) 799 public void HandleRegionStartup(UUID regionID)
811 { 800 {
812 LogoutUsers(regionID); 801 m_userDataBaseService.LogoutUsers(regionID);
813 } 802 }
814 803
815 public void HandleRegionShutdown(UUID regionID) 804 public void HandleRegionShutdown(UUID regionID)
816 { 805 {
817 LogoutUsers(regionID); 806 m_userDataBaseService.LogoutUsers(regionID);
818 } 807 }
819 } 808 }
820} 809}