public LLLoginService(IConfigSource config, ISimulationService simService, ILibraryService libraryService) { m_config = config; m_AuroraLoginConfig = config.Configs["AuroraLoginService"]; if (m_AuroraLoginConfig != null) { m_UseTOS = m_AuroraLoginConfig.GetBoolean("UseTermsOfServiceOnFirstLogin", false); m_DefaultHomeRegion = m_AuroraLoginConfig.GetString("DefaultHomeRegion", ""); m_DefaultUserAvatarArchive = m_AuroraLoginConfig.GetString("DefaultAvatarArchiveForNewUser", m_DefaultUserAvatarArchive); m_AllowAnonymousLogin = m_AuroraLoginConfig.GetBoolean("AllowAnonymousLogin", false); m_TOSLocation = m_AuroraLoginConfig.GetString("FileNameOfTOS", ""); m_AllowFirstLife = m_AuroraLoginConfig.GetBoolean("AllowFirstLifeInProfile", true); m_TutorialURL = m_AuroraLoginConfig.GetString("TutorialURL", m_TutorialURL); ReadEventValues(m_AuroraLoginConfig); ReadClassifiedValues(m_AuroraLoginConfig); CAPSServerURL = m_AuroraLoginConfig.GetString("CAPSServiceURL", ""); CAPSServicePassword = m_AuroraLoginConfig.GetString("CAPSServicePassword", ""); allowExportPermission = m_AuroraLoginConfig.GetBoolean("AllowUseageOfExportPermissions", true); } m_LoginServerConfig = config.Configs["LoginService"]; if (m_LoginServerConfig == null) throw new Exception(String.Format("No section LoginService in config file")); string accountService = m_LoginServerConfig.GetString("UserAccountService", String.Empty); string gridUserService = m_LoginServerConfig.GetString("GridUserService", String.Empty); string agentService = m_LoginServerConfig.GetString("UserAgentService", String.Empty); string authService = m_LoginServerConfig.GetString("AuthenticationService", String.Empty); string invService = m_LoginServerConfig.GetString("InventoryService", String.Empty); string gridService = m_LoginServerConfig.GetString("GridService", String.Empty); string presenceService = m_LoginServerConfig.GetString("PresenceService", String.Empty); string libService = m_LoginServerConfig.GetString("LibraryService", String.Empty); string friendsService = m_LoginServerConfig.GetString("FriendsService", String.Empty); string avatarService = m_LoginServerConfig.GetString("AvatarService", String.Empty); string simulationService = m_LoginServerConfig.GetString("SimulationService", String.Empty); string assetService = m_LoginServerConfig.GetString("AssetService", String.Empty); m_DefaultRegionName = m_LoginServerConfig.GetString("DefaultRegion", String.Empty); m_WelcomeMessage = m_LoginServerConfig.GetString("WelcomeMessage", "Welcome to OpenSim!"); m_RequireInventory = m_LoginServerConfig.GetBoolean("RequireInventory", true); m_AllowRemoteSetLoginLevel = m_LoginServerConfig.GetBoolean("AllowRemoteSetLoginLevel", false); m_MinLoginLevel = m_LoginServerConfig.GetInt("MinLoginLevel", 0); m_GatekeeperURL = m_LoginServerConfig.GetString("GatekeeperURI", string.Empty); m_MapTileURL = m_LoginServerConfig.GetString("MapTileURL", string.Empty); m_SearchURL = m_LoginServerConfig.GetString("SearchURL", string.Empty); // These are required; the others aren't if (accountService == string.Empty || authService == string.Empty) throw new Exception("LoginService is missing service specifications"); Object[] args = new Object[] { config }; m_UserAccountService = ServerUtils.LoadPlugin<IUserAccountService>(accountService, args); m_GridUserService = ServerUtils.LoadPlugin<IGridUserService>(gridUserService, args); m_AuthenticationService = ServerUtils.LoadPlugin<IAuthenticationService>(authService, args); m_InventoryService = ServerUtils.LoadPlugin<IInventoryService>(invService, args); if (gridService != string.Empty) m_GridService = ServerUtils.LoadPlugin<IGridService>(gridService, args); if (presenceService != string.Empty) m_PresenceService = ServerUtils.LoadPlugin<IPresenceService>(presenceService, args); if (avatarService != string.Empty) m_AvatarService = ServerUtils.LoadPlugin<IAvatarService>(avatarService, args); if (friendsService != string.Empty) m_FriendsService = ServerUtils.LoadPlugin<IFriendsService>(friendsService, args); if (simulationService != string.Empty) m_RemoteSimulationService = ServerUtils.LoadPlugin<ISimulationService>(simulationService, args); if (agentService != string.Empty) m_UserAgentService = ServerUtils.LoadPlugin<IUserAgentService>(agentService, args); if (assetService != string.Empty) m_AssetService = ServerUtils.LoadPlugin<IAssetService>(assetService, args); // // deal with the services given as argument // m_LocalSimulationService = simService; if (libraryService != null) { m_log.DebugFormat("[LLOGIN SERVICE]: Using LibraryService given as argument"); m_LibraryService = libraryService; } else if (libService != string.Empty) { m_log.DebugFormat("[LLOGIN SERVICE]: Using instantiated LibraryService"); m_LibraryService = ServerUtils.LoadPlugin<ILibraryService>(libService, args); } m_GatekeeperConnector = new GatekeeperServiceConnector(); if (!Initialized) { Initialized = true; RegisterCommands(); } //Start the grid profile archiver. new GridAvatarProfileArchiver(m_UserAccountService); archiver = new GridAvatarArchiver(m_UserAccountService, m_AvatarService, m_InventoryService, m_AssetService); LoginModules = Aurora.Framework.AuroraModuleLoader.PickupModules<ILoginModule>(); foreach (ILoginModule module in LoginModules) { module.Initialize(this, config, m_UserAccountService); } m_log.DebugFormat("[LLOGIN SERVICE]: Starting..."); }
public void Start(IConfigSource config, IRegistryCore registry) { m_UserAccountService = registry.RequestModuleInterface<IUserAccountService>().InnerService; m_agentInfoService = registry.RequestModuleInterface<IAgentInfoService>().InnerService; m_AuthenticationService = registry.RequestModuleInterface<IAuthenticationService>(); m_InventoryService = registry.RequestModuleInterface<IInventoryService>(); m_GridService = registry.RequestModuleInterface<IGridService>(); m_AvatarService = registry.RequestModuleInterface<IAvatarService>().InnerService; m_FriendsService = registry.RequestModuleInterface<IFriendsService>(); m_SimulationService = registry.RequestModuleInterface<ISimulationService>(); m_AssetService = registry.RequestModuleInterface<IAssetService> ().InnerService; m_LibraryService = registry.RequestModuleInterface<ILibraryService>(); m_CapsService = registry.RequestModuleInterface<ICapsService>(); if (!Initialized) { Initialized = true; RegisterCommands(); } //Start the grid profile archiver. new GridAvatarProfileArchiver(m_UserAccountService); archiver = new GridAvatarArchiver(m_UserAccountService, m_AvatarService, m_InventoryService, m_AssetService); LoginModules = Aurora.Framework.AuroraModuleLoader.PickupModules<ILoginModule>(); foreach (ILoginModule module in LoginModules) { module.Initialize(this, m_config, m_UserAccountService); } m_log.DebugFormat("[LLOGIN SERVICE]: Starting..."); }
public void PostStart(IConfigSource config, IRegistryCore registry) { if (!Initialized) { Initialized = true; RegisterCommands(); } //Start the grid profile archiver. new GridAvatarProfileArchiver(m_UserAccountService); archiver = new GridAvatarArchiver(m_UserAccountService, m_AvatarService, m_InventoryService, m_AssetService); LoginModules = Aurora.Framework.AuroraModuleLoader.PickupModules<ILoginModule>(); foreach (ILoginModule module in LoginModules) { module.Initialize(this, m_config, m_UserAccountService); } m_log.DebugFormat("[LLOGIN SERVICE]: Starting..."); }