From 2c81e41c8a884ece643f3079349b033d03b6b774 Mon Sep 17 00:00:00 2001
From: Justin Clarke Casey
Date: Wed, 22 Apr 2009 18:15:43 +0000
Subject: * Fission OGS1UserServices into user service and OGS1 user data
plugin components * Make OGS1UserServices inherit from UserManagerBase * This
allows grid mode regions to use the same user data plugin infrastructure as
grid servers and standalone OpenSims
---
OpenSim/Framework/Communications/IAvatarService.cs | 12 ++-
.../Communications/Services/LoginService.cs | 13 +--
.../Framework/Communications/UserManagerBase.cs | 108 ++++++++++-----------
3 files changed, 68 insertions(+), 65 deletions(-)
(limited to 'OpenSim/Framework/Communications')
diff --git a/OpenSim/Framework/Communications/IAvatarService.cs b/OpenSim/Framework/Communications/IAvatarService.cs
index 3822e9f..db583e1 100644
--- a/OpenSim/Framework/Communications/IAvatarService.cs
+++ b/OpenSim/Framework/Communications/IAvatarService.cs
@@ -31,10 +31,18 @@ namespace OpenSim.Framework.Communications
{
public interface IAvatarService
{
- /// Get's the User Appearance
+ ///
+ /// Get avatar appearance information
+ ///
+ ///
+ ///
AvatarAppearance GetUserAppearance(UUID user);
+ ///
+ /// Update avatar appearance information
+ ///
+ ///
+ ///
void UpdateUserAppearance(UUID user, AvatarAppearance appearance);
-
}
}
diff --git a/OpenSim/Framework/Communications/Services/LoginService.cs b/OpenSim/Framework/Communications/Services/LoginService.cs
index 72a4281..1b71367 100644
--- a/OpenSim/Framework/Communications/Services/LoginService.cs
+++ b/OpenSim/Framework/Communications/Services/LoginService.cs
@@ -1147,14 +1147,15 @@ namespace OpenSim.Framework.Communications.Services
if (m_userManager.VerifySession(guess_aid, guess_sid))
{
authed = "TRUE";
+ m_log.InfoFormat("[UserManager]: CheckAuthSession TRUE for user {0}", guess_aid);
+ }
+ else
+ {
+ m_log.InfoFormat("[UserManager]: CheckAuthSession FALSE");
+ return Util.CreateUnknownUserErrorResponse();
}
- m_log.InfoFormat("[UserManager]: CheckAuthSession TRUE for user {0}", guess_aid);
- }
- else
- {
- m_log.InfoFormat("[UserManager]: CheckAuthSession FALSE");
- return Util.CreateUnknownUserErrorResponse();
}
+
Hashtable responseData = new Hashtable();
responseData["auth_session"] = authed;
response.Value = responseData;
diff --git a/OpenSim/Framework/Communications/UserManagerBase.cs b/OpenSim/Framework/Communications/UserManagerBase.cs
index 1115041..3b43622 100644
--- a/OpenSim/Framework/Communications/UserManagerBase.cs
+++ b/OpenSim/Framework/Communications/UserManagerBase.cs
@@ -50,7 +50,7 @@ namespace OpenSim.Framework.Communications
///
/// List of plugins to search for user data
///
- private List _plugins = new List();
+ private List m_plugins = new List();
protected IInterServiceInventoryServices m_interServiceInventoryService;
@@ -69,7 +69,7 @@ namespace OpenSim.Framework.Communications
/// The plugin that will provide user data
public void AddPlugin(IUserDataPlugin plugin)
{
- _plugins.Add(plugin);
+ m_plugins.Add(plugin);
}
///
@@ -84,15 +84,15 @@ namespace OpenSim.Framework.Communications
///
public void AddPlugin(string provider, string connect)
{
- _plugins.AddRange(DataPluginFactory.LoadDataPlugins(provider, connect));
+ m_plugins.AddRange(DataPluginFactory.LoadDataPlugins(provider, connect));
}
#region Get UserProfile
// see IUserService
- public UserProfileData GetUserProfile(string fname, string lname)
+ public virtual UserProfileData GetUserProfile(string fname, string lname)
{
- foreach (IUserDataPlugin plugin in _plugins)
+ foreach (IUserDataPlugin plugin in m_plugins)
{
UserProfileData profile = plugin.GetUserByName(fname, lname);
@@ -108,7 +108,7 @@ namespace OpenSim.Framework.Communications
public void LogoutUsers(UUID regionID)
{
- foreach (IUserDataPlugin plugin in _plugins)
+ foreach (IUserDataPlugin plugin in m_plugins)
{
plugin.LogoutUsers(regionID);
}
@@ -116,7 +116,7 @@ namespace OpenSim.Framework.Communications
public void ResetAttachments(UUID userID)
{
- foreach (IUserDataPlugin plugin in _plugins)
+ foreach (IUserDataPlugin plugin in m_plugins)
{
plugin.ResetAttachments(userID);
}
@@ -124,12 +124,20 @@ namespace OpenSim.Framework.Communications
public UserProfileData GetUserProfile(Uri uri)
{
- throw new NotImplementedException();
+ foreach (IUserDataPlugin plugin in m_plugins)
+ {
+ UserProfileData profile = plugin.GetUserByUri(uri);
+
+ if (null != profile)
+ return profile;
+ }
+
+ return null;
}
- public UserAgentData GetAgentByUUID(UUID userId)
+ public virtual UserAgentData GetAgentByUUID(UUID userId)
{
- foreach (IUserDataPlugin plugin in _plugins)
+ foreach (IUserDataPlugin plugin in m_plugins)
{
UserAgentData agent = plugin.GetAgentByUUID(userId);
@@ -150,7 +158,7 @@ namespace OpenSim.Framework.Communications
// see IUserService
public virtual UserProfileData GetUserProfile(UUID uuid)
{
- foreach (IUserDataPlugin plugin in _plugins)
+ foreach (IUserDataPlugin plugin in m_plugins)
{
UserProfileData profile = plugin.GetUserByUUID(uuid);
@@ -164,10 +172,10 @@ namespace OpenSim.Framework.Communications
return null;
}
- public List GenerateAgentPickerRequestResponse(UUID queryID, string query)
+ public virtual List GenerateAgentPickerRequestResponse(UUID queryID, string query)
{
List pickerlist = new List();
- foreach (IUserDataPlugin plugin in _plugins)
+ foreach (IUserDataPlugin plugin in m_plugins)
{
try
{
@@ -188,9 +196,9 @@ namespace OpenSim.Framework.Communications
///
///
///
- public bool UpdateUserProfile(UserProfileData data)
+ public virtual bool UpdateUserProfile(UserProfileData data)
{
- foreach (IUserDataPlugin plugin in _plugins)
+ foreach (IUserDataPlugin plugin in m_plugins)
{
try
{
@@ -217,7 +225,7 @@ namespace OpenSim.Framework.Communications
/// Agent profiles
public UserAgentData GetUserAgent(UUID uuid)
{
- foreach (IUserDataPlugin plugin in _plugins)
+ foreach (IUserDataPlugin plugin in m_plugins)
{
try
{
@@ -244,7 +252,7 @@ namespace OpenSim.Framework.Communications
/// A user agent
public UserAgentData GetUserAgent(string name)
{
- foreach (IUserDataPlugin plugin in _plugins)
+ foreach (IUserDataPlugin plugin in m_plugins)
{
try
{
@@ -267,7 +275,7 @@ namespace OpenSim.Framework.Communications
/// A user agent
public UserAgentData GetUserAgent(string fname, string lname)
{
- foreach (IUserDataPlugin plugin in _plugins)
+ foreach (IUserDataPlugin plugin in m_plugins)
{
try
{
@@ -287,9 +295,9 @@ namespace OpenSim.Framework.Communications
///
/// the UUID of the friend list owner
/// A List of FriendListItems that contains info about the user's friends
- public List GetUserFriendList(UUID ownerID)
+ public virtual List GetUserFriendList(UUID ownerID)
{
- foreach (IUserDataPlugin plugin in _plugins)
+ foreach (IUserDataPlugin plugin in m_plugins)
{
try
{
@@ -309,9 +317,9 @@ namespace OpenSim.Framework.Communications
return null;
}
- public Dictionary GetFriendRegionInfos (List uuids)
+ public virtual Dictionary GetFriendRegionInfos (List uuids)
{
- foreach (IUserDataPlugin plugin in _plugins)
+ foreach (IUserDataPlugin plugin in m_plugins)
{
try
{
@@ -332,7 +340,7 @@ namespace OpenSim.Framework.Communications
public void StoreWebLoginKey(UUID agentID, UUID webLoginKey)
{
- foreach (IUserDataPlugin plugin in _plugins)
+ foreach (IUserDataPlugin plugin in m_plugins)
{
try
{
@@ -345,13 +353,13 @@ namespace OpenSim.Framework.Communications
}
}
- public void AddNewUserFriend(UUID friendlistowner, UUID friend, uint perms)
+ public virtual void AddNewUserFriend(UUID friendlistowner, UUID friend, uint perms)
{
- foreach (IUserDataPlugin plugin in _plugins)
+ foreach (IUserDataPlugin plugin in m_plugins)
{
try
{
- plugin.AddNewUserFriend(friendlistowner,friend,perms);
+ plugin.AddNewUserFriend(friendlistowner, friend, perms);
}
catch (Exception e)
{
@@ -360,9 +368,9 @@ namespace OpenSim.Framework.Communications
}
}
- public void RemoveUserFriend(UUID friendlistowner, UUID friend)
+ public virtual void RemoveUserFriend(UUID friendlistowner, UUID friend)
{
- foreach (IUserDataPlugin plugin in _plugins)
+ foreach (IUserDataPlugin plugin in m_plugins)
{
try
{
@@ -375,9 +383,9 @@ namespace OpenSim.Framework.Communications
}
}
- public void UpdateUserFriendPerms(UUID friendlistowner, UUID friend, uint perms)
+ public virtual void UpdateUserFriendPerms(UUID friendlistowner, UUID friend, uint perms)
{
- foreach (IUserDataPlugin plugin in _plugins)
+ foreach (IUserDataPlugin plugin in m_plugins)
{
try
{
@@ -394,7 +402,7 @@ namespace OpenSim.Framework.Communications
/// Resets the currentAgent in the user profile
///
/// The agent's ID
- public void ClearUserAgent(UUID agentID)
+ public virtual void ClearUserAgent(UUID agentID)
{
UserProfileData profile = GetUserProfile(agentID);
@@ -408,7 +416,6 @@ namespace OpenSim.Framework.Communications
UpdateUserProfile(profile);
}
-
#endregion
#region CreateAgent
@@ -544,7 +551,7 @@ namespace OpenSim.Framework.Communications
///
///
///
- public void LogOffUser(UUID userid, UUID regionid, ulong regionhandle, Vector3 position, Vector3 lookat)
+ public virtual void LogOffUser(UUID userid, UUID regionid, ulong regionhandle, Vector3 position, Vector3 lookat)
{
if (StatsManager.UserStats != null)
StatsManager.UserStats.AddLogout();
@@ -583,15 +590,6 @@ namespace OpenSim.Framework.Communications
}
}
- ///
- /// Process a user logoff from OpenSim (deprecated as of 2008-08-27)
- ///
- ///
- ///
- ///
- ///
- ///
- ///
public void LogOffUser(UUID userid, UUID regionid, ulong regionhandle, float posx, float posy, float posz)
{
LogOffUser(userid, regionid, regionhandle, new Vector3(posx, posy, posz), new Vector3());
@@ -643,7 +641,7 @@ namespace OpenSim.Framework.Communications
user.HomeRegionY = regY;
user.Email = email;
- foreach (IUserDataPlugin plugin in _plugins)
+ foreach (IUserDataPlugin plugin in m_plugins)
{
try
{
@@ -669,13 +667,13 @@ namespace OpenSim.Framework.Communications
}
///
- /// Reset a user password
+ /// Reset a user password.
///
///
///
///
/// true if the update was successful, false otherwise
- public bool ResetUserPassword(string firstName, string lastName, string newPassword)
+ public virtual bool ResetUserPassword(string firstName, string lastName, string newPassword)
{
string md5PasswdHash = Util.Md5Hash(Util.Md5Hash(newPassword) + ":" + String.Empty);
@@ -705,7 +703,7 @@ namespace OpenSim.Framework.Communications
/// The agent data to be added
public bool AddUserAgent(UserAgentData agentdata)
{
- foreach (IUserDataPlugin plugin in _plugins)
+ foreach (IUserDataPlugin plugin in m_plugins)
{
try
{
@@ -725,9 +723,9 @@ namespace OpenSim.Framework.Communications
///
///
///
- public AvatarAppearance GetUserAppearance(UUID user)
+ public virtual AvatarAppearance GetUserAppearance(UUID user)
{
- foreach (IUserDataPlugin plugin in _plugins)
+ foreach (IUserDataPlugin plugin in m_plugins)
{
try
{
@@ -741,14 +739,9 @@ namespace OpenSim.Framework.Communications
return null;
}
- ///
- /// Update avatar appearance information
- ///
- ///
- ///
- public void UpdateUserAppearance(UUID user, AvatarAppearance appearance)
+ public virtual void UpdateUserAppearance(UUID user, AvatarAppearance appearance)
{
- foreach (IUserDataPlugin plugin in _plugins)
+ foreach (IUserDataPlugin plugin in m_plugins)
{
try
{
@@ -838,8 +831,8 @@ namespace OpenSim.Framework.Communications
return false;
}
}
-
- public bool VerifySession(UUID userID, UUID sessionID)
+
+ public virtual bool VerifySession(UUID userID, UUID sessionID)
{
UserProfileData userProfile = GetUserProfile(userID);
@@ -851,6 +844,7 @@ namespace OpenSim.Framework.Communications
return true;
}
}
+
return false;
}
--
cgit v1.1