From bd8e4a8892e204e2d9e7e24087f7200c16be57f0 Mon Sep 17 00:00:00 2001 From: Justin Clarke Casey Date: Wed, 22 Apr 2009 23:04:32 +0000 Subject: * Fix hypergrid standalone login by overriding AddNewUserAgent in HGUserServices --- .../Communications/Hypergrid/HGUserServices.cs | 21 ++++++++------------- .../Hypergrid/HGStandaloneLoginModule.cs | 13 ++++++++++--- 2 files changed, 18 insertions(+), 16 deletions(-) (limited to 'OpenSim/Region') diff --git a/OpenSim/Region/Communications/Hypergrid/HGUserServices.cs b/OpenSim/Region/Communications/Hypergrid/HGUserServices.cs index 93d5434..8d9ca34 100644 --- a/OpenSim/Region/Communications/Hypergrid/HGUserServices.cs +++ b/OpenSim/Region/Communications/Hypergrid/HGUserServices.cs @@ -62,12 +62,15 @@ namespace OpenSim.Region.Communications.Hypergrid { m_localUserServices = local; } + + public override bool AddUserAgent(UserAgentData agentdata) + { + if (m_localUserServices != null) + return m_localUserServices.AddUserAgent(agentdata); + + return base.AddUserAgent(agentdata); + } - /// - /// Get a user agent from the user server - /// - /// - /// null if the request fails public override UserAgentData GetAgentByUUID(UUID userId) { string url = string.Empty; @@ -77,14 +80,6 @@ namespace OpenSim.Region.Communications.Hypergrid return base.GetAgentByUUID(userId); } - /// - /// Logs off a user on the user server - /// - /// UUID of the user - /// UUID of the Region - /// regionhandle - /// final position - /// final lookat public override void LogOffUser(UUID userid, UUID regionid, ulong regionhandle, Vector3 position, Vector3 lookat) { string url = string.Empty; diff --git a/OpenSim/Region/CoreModules/Hypergrid/HGStandaloneLoginModule.cs b/OpenSim/Region/CoreModules/Hypergrid/HGStandaloneLoginModule.cs index c458b89..2c7ba93 100644 --- a/OpenSim/Region/CoreModules/Hypergrid/HGStandaloneLoginModule.cs +++ b/OpenSim/Region/CoreModules/Hypergrid/HGStandaloneLoginModule.cs @@ -54,7 +54,6 @@ namespace OpenSim.Region.CoreModules.Hypergrid protected bool m_enabled = false; // Module is only enabled if running in standalone mode - public bool RegionLoginsEnabled { get @@ -88,7 +87,7 @@ namespace OpenSim.Region.CoreModules.Hypergrid if (m_enabled) { - m_log.Debug("[HGLogin] HGlogin module enabled"); + m_log.Debug("[HGLogin]: HGlogin module enabled"); bool authenticate = true; string welcomeMessage = "Welcome to OpenSim"; IConfig standaloneConfig = source.Configs["StandAlone"]; @@ -104,7 +103,15 @@ namespace OpenSim.Region.CoreModules.Hypergrid IHttpServer httpServer = m_firstScene.CommsManager.HttpServer; //TODO: fix the casting of the user service, maybe by registering the userManagerBase with scenes, or refactoring so we just need a IUserService reference - m_loginService = new HGLoginAuthService((UserManagerBase)m_firstScene.CommsManager.UserAdminService, welcomeMessage, m_firstScene.CommsManager.InterServiceInventoryService, m_firstScene.CommsManager.NetworkServersInfo, authenticate, rootFolder, this); + m_loginService + = new HGLoginAuthService( + (UserManagerBase)m_firstScene.CommsManager.UserAdminService, + welcomeMessage, + m_firstScene.CommsManager.InterServiceInventoryService, + m_firstScene.CommsManager.NetworkServersInfo, + authenticate, + rootFolder, + this); httpServer.AddXmlRPCHandler("hg_login", m_loginService.XmlRpcLoginMethod); httpServer.AddXmlRPCHandler("hg_new_auth_key", m_loginService.XmlRpcGenerateKeyMethod); -- cgit v1.1