diff options
author | Justin Clarke Casey | 2008-10-17 16:44:05 +0000 |
---|---|---|
committer | Justin Clarke Casey | 2008-10-17 16:44:05 +0000 |
commit | 138bcf6fffdb16e3962c03f995aff7cda15a7800 (patch) | |
tree | 0e229194378b71199b999fc126b3775b53f500ff /OpenSim/Framework/Communications/UserManagerBase.cs | |
parent | * Adds a lot of stability and performance to the physics engine. The avata... (diff) | |
download | opensim-SC_OLD-138bcf6fffdb16e3962c03f995aff7cda15a7800.zip opensim-SC_OLD-138bcf6fffdb16e3962c03f995aff7cda15a7800.tar.gz opensim-SC_OLD-138bcf6fffdb16e3962c03f995aff7cda15a7800.tar.bz2 opensim-SC_OLD-138bcf6fffdb16e3962c03f995aff7cda15a7800.tar.xz |
* Apply a modified version of http://opensimulator.org/mantis/view.php?id=2290
* This allows multiple user profile providers to be specified in OpenSim.ini separated by commas
* If multiple providers are specified then a request for a user profile will query each in turn until the profile is either found or all have been queried
* Unfortunately I don't believe this order can currently be specified, which if true is something that will need to be fixed.
* Thanks to smeans for the original patch.
Diffstat (limited to 'OpenSim/Framework/Communications/UserManagerBase.cs')
-rw-r--r-- | OpenSim/Framework/Communications/UserManagerBase.cs | 20 |
1 files changed, 15 insertions, 5 deletions
diff --git a/OpenSim/Framework/Communications/UserManagerBase.cs b/OpenSim/Framework/Communications/UserManagerBase.cs index aa68367..32bfed7 100644 --- a/OpenSim/Framework/Communications/UserManagerBase.cs +++ b/OpenSim/Framework/Communications/UserManagerBase.cs | |||
@@ -56,11 +56,11 @@ namespace OpenSim.Framework.Communications | |||
56 | public void AddPlugin(string provider, string connect) | 56 | public void AddPlugin(string provider, string connect) |
57 | { | 57 | { |
58 | PluginLoader<IUserDataPlugin> loader = | 58 | PluginLoader<IUserDataPlugin> loader = |
59 | new PluginLoader<IUserDataPlugin> (new UserDataInitialiser (connect)); | 59 | new PluginLoader<IUserDataPlugin>(new UserDataInitialiser(connect)); |
60 | 60 | ||
61 | // loader will try to load all providers (MySQL, MSSQL, etc) | 61 | // loader will try to load all providers (MySQL, MSSQL, etc) |
62 | // unless it is constrainted to the correct "Provider" entry in the addin.xml | 62 | // unless it is constrainted to the correct "Provider" entry in the addin.xml |
63 | loader.Add ("/OpenSim/UserData", new PluginProviderFilter (provider)); | 63 | loader.Add("/OpenSim/UserData", new PluginProviderFilter(provider)); |
64 | loader.Load(); | 64 | loader.Load(); |
65 | 65 | ||
66 | _plugins = loader.Plugins; | 66 | _plugins = loader.Plugins; |
@@ -178,7 +178,12 @@ namespace OpenSim.Framework.Communications | |||
178 | { | 178 | { |
179 | try | 179 | try |
180 | { | 180 | { |
181 | return plugin.GetAgentByUUID(uuid); | 181 | UserAgentData result = plugin.GetAgentByUUID(uuid); |
182 | |||
183 | if (result != null) | ||
184 | { | ||
185 | return result; | ||
186 | } | ||
182 | } | 187 | } |
183 | catch (Exception e) | 188 | catch (Exception e) |
184 | { | 189 | { |
@@ -260,7 +265,12 @@ namespace OpenSim.Framework.Communications | |||
260 | { | 265 | { |
261 | try | 266 | try |
262 | { | 267 | { |
263 | return plugin.GetUserFriendList(ownerID); | 268 | List<FriendListItem> result = plugin.GetUserFriendList(ownerID); |
269 | |||
270 | if (result != null) | ||
271 | { | ||
272 | return result; | ||
273 | } | ||
264 | } | 274 | } |
265 | catch (Exception e) | 275 | catch (Exception e) |
266 | { | 276 | { |
@@ -331,7 +341,6 @@ namespace OpenSim.Framework.Communications | |||
331 | } | 341 | } |
332 | } | 342 | } |
333 | 343 | ||
334 | |||
335 | /// <summary> | 344 | /// <summary> |
336 | /// Resets the currentAgent in the user profile | 345 | /// Resets the currentAgent in the user profile |
337 | /// </summary> | 346 | /// </summary> |
@@ -344,6 +353,7 @@ namespace OpenSim.Framework.Communications | |||
344 | { | 353 | { |
345 | return; | 354 | return; |
346 | } | 355 | } |
356 | |||
347 | profile.CurrentAgent = null; | 357 | profile.CurrentAgent = null; |
348 | 358 | ||
349 | UpdateUserProfile(profile); | 359 | UpdateUserProfile(profile); |