diff options
author | Justin Clarke Casey | 2009-04-23 18:57:39 +0000 |
---|---|---|
committer | Justin Clarke Casey | 2009-04-23 18:57:39 +0000 |
commit | 0d51c22620315f125ddbd3fe501eb93f318038d8 (patch) | |
tree | 31cf4ba3cc962497c0589dc12eb5642240670d13 /OpenSim/Framework/Communications | |
parent | * Add user data plugin to store temporary profiles (which are distinct from c... (diff) | |
download | opensim-SC-0d51c22620315f125ddbd3fe501eb93f318038d8.zip opensim-SC-0d51c22620315f125ddbd3fe501eb93f318038d8.tar.gz opensim-SC-0d51c22620315f125ddbd3fe501eb93f318038d8.tar.bz2 opensim-SC-0d51c22620315f125ddbd3fe501eb93f318038d8.tar.xz |
* Allow interested user data plugins to store temporary user profiles
* Database and the OGS1 plugins are not interested and hence ignore these calls
Diffstat (limited to '')
5 files changed, 33 insertions, 6 deletions
diff --git a/OpenSim/Framework/Communications/IUserService.cs b/OpenSim/Framework/Communications/IUserService.cs index fb24c15..9a3e211 100644 --- a/OpenSim/Framework/Communications/IUserService.cs +++ b/OpenSim/Framework/Communications/IUserService.cs | |||
@@ -34,6 +34,13 @@ namespace OpenSim.Framework.Communications | |||
34 | public interface IUserService | 34 | public interface IUserService |
35 | { | 35 | { |
36 | /// <summary> | 36 | /// <summary> |
37 | /// Add a temporary user profile. | ||
38 | /// </summary> | ||
39 | /// A temporary user profile is one that should exist only for the lifetime of the process. | ||
40 | /// <param name="userProfile"></param> | ||
41 | void AddTemporaryUserProfile(UserProfileData userProfile); | ||
42 | |||
43 | /// <summary> | ||
37 | /// Loads a user profile by name | 44 | /// Loads a user profile by name |
38 | /// </summary> | 45 | /// </summary> |
39 | /// <param name="firstName">First name</param> | 46 | /// <param name="firstName">First name</param> |
diff --git a/OpenSim/Framework/Communications/TemporaryUserProfilePlugin.cs b/OpenSim/Framework/Communications/TemporaryUserProfilePlugin.cs index 1cfeaf1..3b78c99 100644 --- a/OpenSim/Framework/Communications/TemporaryUserProfilePlugin.cs +++ b/OpenSim/Framework/Communications/TemporaryUserProfilePlugin.cs | |||
@@ -64,6 +64,14 @@ namespace OpenSim.Framework.Communications | |||
64 | return null; | 64 | return null; |
65 | } | 65 | } |
66 | 66 | ||
67 | public virtual void AddTemporaryUserProfile(UserProfileData userProfile) | ||
68 | { | ||
69 | lock (m_profiles) | ||
70 | { | ||
71 | m_profiles[userProfile.ID] = userProfile; | ||
72 | } | ||
73 | } | ||
74 | |||
67 | public UserProfileData GetUserByUri(Uri uri) { return null; } | 75 | public UserProfileData GetUserByUri(Uri uri) { return null; } |
68 | public List<AvatarPickerAvatar> GeneratePickerResults(UUID queryID, string query) { return null; } | 76 | public List<AvatarPickerAvatar> GeneratePickerResults(UUID queryID, string query) { return null; } |
69 | public UserAgentData GetAgentByUUID(UUID user) { return null; } | 77 | public UserAgentData GetAgentByUUID(UUID user) { return null; } |
diff --git a/OpenSim/Framework/Communications/Tests/Cache/AssetCacheTests.cs b/OpenSim/Framework/Communications/Tests/Cache/AssetCacheTests.cs index 178c356..a5ee549 100644 --- a/OpenSim/Framework/Communications/Tests/Cache/AssetCacheTests.cs +++ b/OpenSim/Framework/Communications/Tests/Cache/AssetCacheTests.cs | |||
@@ -90,6 +90,11 @@ namespace OpenSim.Framework.Communications.Tests | |||
90 | 90 | ||
91 | private class FakeUserService : IUserService | 91 | private class FakeUserService : IUserService |
92 | { | 92 | { |
93 | public void AddTemporaryUserProfile(UserProfileData userProfile) | ||
94 | { | ||
95 | throw new NotImplementedException(); | ||
96 | } | ||
97 | |||
93 | public UserProfileData GetUserProfile(string firstName, string lastName) | 98 | public UserProfileData GetUserProfile(string firstName, string lastName) |
94 | { | 99 | { |
95 | throw new NotImplementedException(); | 100 | throw new NotImplementedException(); |
diff --git a/OpenSim/Framework/Communications/Tests/LoginServiceTests.cs b/OpenSim/Framework/Communications/Tests/LoginServiceTests.cs index 42fdea5..d0c1b3b 100644 --- a/OpenSim/Framework/Communications/Tests/LoginServiceTests.cs +++ b/OpenSim/Framework/Communications/Tests/LoginServiceTests.cs | |||
@@ -280,8 +280,8 @@ namespace OpenSim.Framework.Communications.Tests | |||
280 | [Test] | 280 | [Test] |
281 | public void T023_TestAuthenticatedLoginAlreadyLoggedIn() | 281 | public void T023_TestAuthenticatedLoginAlreadyLoggedIn() |
282 | { | 282 | { |
283 | Console.WriteLine("Starting T023_TestAuthenticatedLoginAlreadyLoggedIn()"); | 283 | //Console.WriteLine("Starting T023_TestAuthenticatedLoginAlreadyLoggedIn()"); |
284 | log4net.Config.XmlConfigurator.Configure(); | 284 | //log4net.Config.XmlConfigurator.Configure(); |
285 | 285 | ||
286 | string error_already_logged = "You appear to be already logged in. " + | 286 | string error_already_logged = "You appear to be already logged in. " + |
287 | "If this is not the case please wait for your session to timeout. " + | 287 | "If this is not the case please wait for your session to timeout. " + |
@@ -317,7 +317,7 @@ namespace OpenSim.Framework.Communications.Tests | |||
317 | responseData = (Hashtable)response.Value; | 317 | responseData = (Hashtable)response.Value; |
318 | Assert.That(responseData["message"], Is.EqualTo("Hello folks")); | 318 | Assert.That(responseData["message"], Is.EqualTo("Hello folks")); |
319 | 319 | ||
320 | Console.WriteLine("Finished T023_TestAuthenticatedLoginAlreadyLoggedIn()"); | 320 | //Console.WriteLine("Finished T023_TestAuthenticatedLoginAlreadyLoggedIn()"); |
321 | } | 321 | } |
322 | 322 | ||
323 | public class TestLoginToRegionConnector : ILoginServiceToRegionsConnector | 323 | public class TestLoginToRegionConnector : ILoginServiceToRegionsConnector |
diff --git a/OpenSim/Framework/Communications/UserManagerBase.cs b/OpenSim/Framework/Communications/UserManagerBase.cs index b6a7362..133f810 100644 --- a/OpenSim/Framework/Communications/UserManagerBase.cs +++ b/OpenSim/Framework/Communications/UserManagerBase.cs | |||
@@ -88,9 +88,16 @@ namespace OpenSim.Framework.Communications | |||
88 | m_plugins.AddRange(DataPluginFactory.LoadDataPlugins<IUserDataPlugin>(provider, connect)); | 88 | m_plugins.AddRange(DataPluginFactory.LoadDataPlugins<IUserDataPlugin>(provider, connect)); |
89 | } | 89 | } |
90 | 90 | ||
91 | #region Get UserProfile | 91 | #region UserProfile |
92 | 92 | ||
93 | // see IUserService | 93 | public virtual void AddTemporaryUserProfile(UserProfileData userProfile) |
94 | { | ||
95 | foreach (IUserDataPlugin plugin in m_plugins) | ||
96 | { | ||
97 | plugin.AddTemporaryUserProfile(userProfile); | ||
98 | } | ||
99 | } | ||
100 | |||
94 | public virtual UserProfileData GetUserProfile(string fname, string lname) | 101 | public virtual UserProfileData GetUserProfile(string fname, string lname) |
95 | { | 102 | { |
96 | foreach (IUserDataPlugin plugin in m_plugins) | 103 | foreach (IUserDataPlugin plugin in m_plugins) |