public CommunicationsLocal( ConfigSettings configSettings, NetworkServersInfo serversInfo, BaseHttpServer httpServer, IAssetCache assetCache, LibraryRootFolder libraryRootFolder) : base(serversInfo, httpServer, assetCache, libraryRootFolder) { PluginLoader <IInventoryStoragePlugin> loader = new PluginLoader <IInventoryStoragePlugin>(); loader.Add("/OpenSim/InventoryStorage", new PluginProviderFilter(configSettings.InventoryPlugin)); loader.Load(); loader.Plugin.Initialize(configSettings); LocalUserServices lus = new LocalUserServices( serversInfo.DefaultHomeLocX, serversInfo.DefaultHomeLocY, this); //lus.AddPlugin(new TemporaryUserProfilePlugin()); lus.AddPlugin(configSettings.StandaloneUserPlugin, configSettings.StandaloneUserSource); m_userService = lus; m_userAdminService = lus; m_avatarService = lus; m_messageService = lus; m_gridService = new LocalBackEndServices(); }
public CommunicationsOGS1( NetworkServersInfo serversInfo, BaseHttpServer httpServer, IAssetCache assetCache, LibraryRootFolder libraryRootFolder) : base(serversInfo, httpServer, assetCache, false, libraryRootFolder) { OGS1GridServices gridInterComms = new OGS1GridServices(serversInfo, httpServer); m_gridService = gridInterComms; if (serversInfo.secureInventoryServer) { OGS1SecureInventoryService invService = new OGS1SecureInventoryService(serversInfo.InventoryURL); AddSecureInventoryService(invService); m_defaultInventoryHost = invService.Host; } else { OGS1InventoryService invService = new OGS1InventoryService(serversInfo.InventoryURL); AddInventoryService(invService); m_defaultInventoryHost = invService.Host; } // This plugin arrangement could eventually be configurable rather than hardcoded here. OGS1UserServices userServices = new OGS1UserServices(this); userServices.AddPlugin(new TemporaryUserProfilePlugin()); userServices.AddPlugin(new OGS1UserDataPlugin(this)); m_userService = userServices; m_messageService = userServices; m_avatarService = (IAvatarService)m_userService; }
/// <summary> /// Constructor /// </summary> /// <param name="serversInfo"></param> /// <param name="httpServer"></param> /// <param name="assetCache"></param> /// <param name="dumpAssetsToFile"></param> public CommunicationsManager(NetworkServersInfo serversInfo, IHttpServer httpServer, IAssetCache assetCache, bool dumpAssetsToFile, LibraryRootFolder libraryRootFolder) { m_networkServersInfo = serversInfo; m_userProfileCacheService = new UserProfileCacheService(this, libraryRootFolder); m_httpServer = httpServer; }
public CommunicationsOGS1( NetworkServersInfo serversInfo, BaseHttpServer httpServer, IAssetCache assetCache, LibraryRootFolder libraryRootFolder, ConfigSettings configSettings) : base(serversInfo, httpServer, assetCache, libraryRootFolder) { OGS1GridServices gridInterComms = new OGS1GridServices(serversInfo, httpServer); m_gridService = gridInterComms; // This plugin arrangement could eventually be configurable rather than hardcoded here. OGS1UserServices userServices = new OGS1UserServices(this); //userServices.AddPlugin(new TemporaryUserProfilePlugin()); userServices.AddPlugin(new OGS1UserDataPlugin(this, configSettings)); m_userService = userServices; m_messageService = userServices; m_avatarService = (IAvatarService)m_userService; PluginLoader <IInventoryStoragePlugin> loader = new PluginLoader <IInventoryStoragePlugin>(); loader.Add("/OpenSim/InventoryStorage", new PluginProviderFilter(configSettings.InventoryPlugin)); loader.Load(); loader.Plugin.Initialize(configSettings); }
protected void InitializeCommsManager(OpenSimBase openSim) { LibraryRootFolder libraryRootFolder = new LibraryRootFolder(m_openSim.ConfigurationSettings.LibrariesXMLFile, m_openSim.ConfigurationSettings.LibraryName); InitializeStandardServices(libraryRootFolder); openSim.CommunicationsManager = m_commsManager; }
/// <summary> /// Initializes the backend services for standalone mode, and registers some http handlers /// </summary> /// <param name="libraryRootFolder"></param> protected virtual void InitializeStandaloneServices(LibraryRootFolder libraryRootFolder) { m_commsManager = new CommunicationsLocal( m_openSim.ConfigurationSettings, m_openSim.NetServersInfo, m_httpServer, m_openSim.AssetCache, libraryRootFolder); CreateGridInfoService(); }
/// <summary> /// Constructor /// </summary> /// <param name="serversInfo"></param> /// <param name="httpServer"></param> /// <param name="assetCache"></param> public CommunicationsManager(NetworkServersInfo serversInfo, IHttpServer httpServer, IAssetCache assetCache, LibraryRootFolder libraryRootFolder) { m_networkServersInfo = serversInfo; m_assetCache = assetCache; m_httpServer = httpServer; LibraryRoot = libraryRootFolder; Preload(); }
public UserLoginService( OpenSim.Framework.Communications.UserProfileManager userManager, LibraryRootFolder libraryRootFolder, string mapServerURI, string profileServerURI, UserConfig config, string welcomeMess, IRegionProfileRouter regionProfileService) : base(userManager, libraryRootFolder, welcomeMess, mapServerURI, profileServerURI) { m_config = config; m_defaultHomeX = m_config.DefaultX; m_defaultHomeY = m_config.DefaultY; m_regionProfileService = regionProfileService; }
protected virtual void InitialiseGridServices(LibraryRootFolder libraryRootFolder) { m_commsManager = new CommunicationsOGS1(m_openSim.NetServersInfo, m_httpServer, m_openSim.AssetCache, libraryRootFolder); m_httpServer.AddStreamHandler(new OpenSim.SimStatusHandler()); m_httpServer.AddStreamHandler(new OpenSim.XSimStatusHandler(m_openSim)); if (m_openSim.userStatsURI != String.Empty) { m_httpServer.AddStreamHandler(new OpenSim.UXSimStatusHandler(m_openSim)); } }
public HGCommunicationsStandalone( ConfigSettings configSettings, NetworkServersInfo serversInfo, BaseHttpServer httpServer, IAssetCache assetCache, HGGridServices gridService, LibraryRootFolder libraryRootFolder, bool dumpAssetsToFile) : base(serversInfo, httpServer, assetCache, dumpAssetsToFile, libraryRootFolder) { LocalUserServices localUserService = new LocalUserServices( serversInfo.DefaultHomeLocX, serversInfo.DefaultHomeLocY, this); localUserService.AddPlugin(configSettings.StandaloneUserPlugin, configSettings.StandaloneUserSource); HGInventoryServiceClient inventoryService = new HGInventoryServiceClient(serversInfo.InventoryURL, null, false); List <IInventoryDataPlugin> plugins = DataPluginFactory.LoadDataPlugins <IInventoryDataPlugin>( configSettings.StandaloneInventoryPlugin, configSettings.StandaloneInventorySource); foreach (IInventoryDataPlugin plugin in plugins) { // Using the OSP wrapper plugin should be made configurable at some point inventoryService.AddPlugin(new OspInventoryWrapperPlugin(plugin, this)); } AddInventoryService(inventoryService); m_defaultInventoryHost = inventoryService.Host; m_interServiceInventoryService = inventoryService; inventoryService.UserProfileCache = UserProfileCacheService; m_assetCache = assetCache; // Let's swap to always be secure access to inventory AddSecureInventoryService((ISecureInventoryService)inventoryService); m_inventoryServices = null; HGUserServices hgUserService = new HGUserServices(this, localUserService); // This plugin arrangement could eventually be configurable rather than hardcoded here. hgUserService.AddPlugin(new TemporaryUserProfilePlugin()); hgUserService.AddPlugin(new OGS1UserDataPlugin(this)); m_userService = hgUserService; m_userAdminService = hgUserService; m_avatarService = hgUserService; m_messageService = hgUserService; gridService.UserProfileCache = m_userProfileCacheService; m_gridService = gridService; }
public UserLoginService( UserManagerBase userManager, IInterServiceInventoryServices inventoryService, LibraryRootFolder libraryRootFolder, UserConfig config, string welcomeMess, IRegionProfileRouter regionProfileService) : base(userManager, libraryRootFolder, welcomeMess) { m_config = config; m_defaultHomeX = m_config.DefaultX; m_defaultHomeY = m_config.DefaultY; m_interInventoryService = inventoryService; m_regionProfileService = regionProfileService; }
public void Initialise(Scene scene, IConfigSource source) { if (m_firstScene == null) { m_firstScene = scene; IConfig startupConfig = source.Configs["Startup"]; if (startupConfig != null) { m_enabled = !startupConfig.GetBoolean("gridmode", false); } if (m_enabled) { m_log.Debug("[HGLogin]: HGlogin module enabled"); bool authenticate = true; string welcomeMessage = "Welcome to OpenSim"; IConfig standaloneConfig = source.Configs["StandAlone"]; if (standaloneConfig != null) { authenticate = standaloneConfig.GetBoolean("accounts_authenticate", true); welcomeMessage = standaloneConfig.GetString("welcome_message"); } //TODO: fix casting. LibraryRootFolder rootFolder = m_firstScene.CommsManager.UserProfileCacheService.LibraryRoot as LibraryRootFolder; 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); httpServer.AddXmlRPCHandler("hg_login", m_loginService.XmlRpcLoginMethod); httpServer.AddXmlRPCHandler("hg_new_auth_key", m_loginService.XmlRpcGenerateKeyMethod); httpServer.AddXmlRPCHandler("hg_verify_auth_key", m_loginService.XmlRpcVerifyKeyMethod); httpServer.AddXmlRPCHandler("check_auth_session", m_loginService.XmlRPCCheckAuthSession, false); } } if (m_enabled) { AddScene(scene); } }
public LLStandaloneLoginService( UserProfileManager userManager, string welcomeMess, string mapServerURI, string profileServerURI, NetworkServersInfo serversInfo, bool authenticate, LibraryRootFolder libraryRootFolder, ILoginServiceToRegionsConnector regionsConnector) : base(userManager, libraryRootFolder, welcomeMess, mapServerURI, profileServerURI) { this.m_serversInfo = serversInfo; m_defaultHomeX = this.m_serversInfo.DefaultHomeLocX; m_defaultHomeY = this.m_serversInfo.DefaultHomeLocY; m_authUsers = authenticate; m_regionsConnector = regionsConnector; }
protected void InitializeStandardServices(LibraryRootFolder libraryRootFolder) { // Standalone mode is determined by !startupConfig.GetBoolean("gridmode", false) if (m_openSim.ConfigurationSettings.Standalone) { InitializeStandaloneServices(libraryRootFolder); } else { // We are in grid mode InitializeGridServices(libraryRootFolder); } }
protected virtual void InitializeGridServices(LibraryRootFolder libraryRootFolder) { m_commsManager = new CommunicationsOGS1(m_openSim.NetServersInfo, m_httpServer, m_openSim.AssetCache, libraryRootFolder, m_openSim.ConfigurationSettings); m_httpServer.AddStreamHandler(new OpenSim.SimStatusHandler()); m_httpServer.AddStreamHandler(new OpenSim.XSimStatusHandler(m_openSim)); if (!String.IsNullOrEmpty(m_openSim.userStatsURI)) { m_httpServer.AddStreamHandler(new OpenSim.UXSimStatusHandler(m_openSim)); } }
protected virtual void InitialiseHGStandaloneServices(LibraryRootFolder libraryRootFolder) { HGGridServicesStandalone gridService = new HGGridServicesStandalone(m_openSim.NetServersInfo, m_httpServer, m_openSim.AssetCache, m_openSim.SceneManager); m_commsManager = new HGCommunicationsStandalone( m_openSim.ConfigurationSettings, m_openSim.NetServersInfo, m_httpServer, m_openSim.AssetCache, gridService, libraryRootFolder, m_openSim.ConfigurationSettings.DumpAssetsToFile); HGServices = gridService; CreateGridInfoService(); }
protected void InitialiseHGServices(OpenSimBase openSim, LibraryRootFolder libraryRootFolder) { // Standalone mode is determined by !startupConfig.GetBoolean("gridmode", false) if (m_openSim.ConfigurationSettings.Standalone) { InitialiseHGStandaloneServices(libraryRootFolder); } else { // We are in grid mode InitialiseHGGridServices(libraryRootFolder); } HGCommands.HGServices = HGServices; }
public void Initialize(Scene scene, IConfigSource source) { if (m_firstScene == null) { m_firstScene = scene; IConfig startupConfig = source.Configs["Startup"]; if (startupConfig != null) { m_enabled = !startupConfig.GetBoolean("gridmode", false); } if (m_enabled) { bool authenticate = true; string welcomeMessage = "Welcome to InWorldz", mapServerURI = String.Empty, profileServerURI = String.Empty; IConfig standaloneConfig = source.Configs["StandAlone"]; if (standaloneConfig != null) { authenticate = standaloneConfig.GetBoolean("accounts_authenticate", true); welcomeMessage = standaloneConfig.GetString("welcome_message"); mapServerURI = standaloneConfig.GetString("map_server_uri", String.Empty); profileServerURI = standaloneConfig.GetString("profile_server_uri", String.Empty); } //TODO: fix casting. LibraryRootFolder rootFolder = m_firstScene.CommsManager.LibraryRoot as LibraryRootFolder; 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 LLStandaloneLoginService((UserProfileManager)m_firstScene.CommsManager.UserAdminService, mapServerURI, profileServerURI, welcomeMessage, m_firstScene.CommsManager.NetworkServersInfo, authenticate, rootFolder, this); httpServer.AddXmlRPCHandler("login_to_simulator", m_loginService.XmlRpcLoginMethod); // New Style httpServer.AddStreamHandler(new XmlRpcStreamHandler("POST", Util.XmlRpcRequestPrefix("login_to_simulator"), m_loginService.XmlRpcLoginMethod)); // provides the web form login httpServer.AddHTTPHandler("login", m_loginService.ProcessHTMLLogin); } } if (m_enabled) { AddScene(scene); } }
public LLStandaloneLoginService( UserManagerBase userManager, string welcomeMess, IInterServiceInventoryServices interServiceInventoryService, NetworkServersInfo serversInfo, bool authenticate, LibraryRootFolder libraryRootFolder, ILoginServiceToRegionsConnector regionsConnector) : base(userManager, libraryRootFolder, welcomeMess) { this.m_serversInfo = serversInfo; m_defaultHomeX = this.m_serversInfo.DefaultHomeLocX; m_defaultHomeY = this.m_serversInfo.DefaultHomeLocY; m_authUsers = authenticate; m_inventoryService = interServiceInventoryService; m_regionsConnector = regionsConnector; }
public void Initialise(Scene scene, IConfigSource source) { if (m_firstScene == null) { m_firstScene = scene; IConfig startupConfig = source.Configs["Startup"]; if (startupConfig != null) { m_enabled = !startupConfig.GetBoolean("gridmode", false); } if (m_enabled) { bool authenticate = true; string welcomeMessage = "Welcome to OpenSim"; IConfig standaloneConfig = source.Configs["StandAlone"]; if (standaloneConfig != null) { authenticate = standaloneConfig.GetBoolean("accounts_authenticate", true); welcomeMessage = standaloneConfig.GetString("welcome_message"); } //TODO: fix casting. LibraryRootFolder rootFolder = m_firstScene.CommsManager.UserProfileCacheService.LibraryRoot as LibraryRootFolder; 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 LLStandaloneLoginService((UserManagerBase)m_firstScene.CommsManager.UserAdminService, welcomeMessage, m_firstScene.CommsManager.InterServiceInventoryService, m_firstScene.CommsManager.NetworkServersInfo, authenticate, rootFolder, this); httpServer.AddXmlRPCHandler("login_to_simulator", m_loginService.XmlRpcLoginMethod); // provides the web form login httpServer.AddHTTPHandler("login", m_loginService.ProcessHTMLLogin); // Provides the LLSD login httpServer.SetDefaultLLSDHandler(m_loginService.LLSDLoginMethod); } } if (m_enabled) { AddScene(scene); } }
protected void InitialiseCommsManager(OpenSimBase openSim) { LibraryRootFolder libraryRootFolder = new LibraryRootFolder(m_openSim.ConfigurationSettings.LibrariesXMLFile); bool hgrid = m_openSim.ConfigSource.Source.Configs["Startup"].GetBoolean("hypergrid", false); if (hgrid) { InitialiseHGServices(openSim, libraryRootFolder); } else { InitialiseStandardServices(libraryRootFolder); } openSim.CommunicationsManager = m_commsManager; }
public LLStandaloneLoginService( UserManagerBase userManager, string welcomeMess, IInventoryService interServiceInventoryService, NetworkServersInfo serversInfo, bool authenticate, LibraryRootFolder libraryRootFolder, ILoginServiceToRegionsConnector regionsConnector) : base(userManager, libraryRootFolder, welcomeMess) { this.m_serversInfo = serversInfo; m_defaultHomeX = this.m_serversInfo.DefaultHomeLocX; m_defaultHomeY = this.m_serversInfo.DefaultHomeLocY; m_authUsers = authenticate; m_InventoryService = interServiceInventoryService; m_regionsConnector = regionsConnector; // Standard behavior: In StandAlone, silent logout of last hung session m_warn_already_logged = false; }
public UserLoginAuthService( UserManagerBase userManager, IInterServiceInventoryServices inventoryService, LibraryRootFolder libraryRootFolder, UserConfig config, string welcomeMess, IRegionProfileRouter regionProfileService) : base(userManager, welcomeMess, inventoryService, null, true, libraryRootFolder, null) { m_config = config; m_defaultHomeX = m_config.DefaultX; m_defaultHomeY = m_config.DefaultY; m_inventoryService = inventoryService; m_regionProfileService = regionProfileService; NetworkServersInfo serversinfo = new NetworkServersInfo(1000, 1000); serversinfo.GridRecvKey = m_config.GridRecvKey; serversinfo.GridSendKey = m_config.GridSendKey; serversinfo.GridURL = m_config.GridServerURL.ToString(); serversinfo.InventoryURL = m_config.InventoryUrl.ToString(); serversinfo.UserURL = m_config.AuthUrl.ToString(); SetServersInfo(serversinfo); }
public CommunicationsLocal( ConfigSettings configSettings, NetworkServersInfo serversInfo, BaseHttpServer httpServer, IAssetCache assetCache, LibraryRootFolder libraryRootFolder, bool dumpAssetsToFile) : base(serversInfo, httpServer, assetCache, dumpAssetsToFile, libraryRootFolder) { LocalInventoryService inventoryService = new LocalInventoryService(); List <IInventoryDataPlugin> plugins = DataPluginFactory.LoadDataPlugins <IInventoryDataPlugin>( configSettings.StandaloneInventoryPlugin, configSettings.StandaloneInventorySource); foreach (IInventoryDataPlugin plugin in plugins) { // Using the OSP wrapper plugin for database plugins should be made configurable at some point inventoryService.AddPlugin(new OspInventoryWrapperPlugin(plugin, this)); } AddInventoryService(inventoryService); m_defaultInventoryHost = inventoryService.Host; m_interServiceInventoryService = inventoryService; LocalUserServices lus = new LocalUserServices( serversInfo.DefaultHomeLocX, serversInfo.DefaultHomeLocY, this); lus.AddPlugin(new TemporaryUserProfilePlugin()); lus.AddPlugin(configSettings.StandaloneUserPlugin, configSettings.StandaloneUserSource); m_userService = lus; m_userAdminService = lus; m_avatarService = lus; m_messageService = lus; m_gridService = new LocalBackEndServices(); //LocalLoginService loginService = CreateLoginService(libraryRootFolder, inventoryService, userService, backendService); }
public void RegionLoaded(Scene scene) { if (m_firstScene == null) { m_firstScene = scene; if (m_enabled) { //TODO: fix casting. LibraryRootFolder rootFolder = m_firstScene.CommsManager.UserProfileCacheService.LibraryRoot as LibraryRootFolder; 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 LLStandaloneLoginService( (UserManagerBase)m_firstScene.CommsManager.UserAdminService, welcomeMessage, m_firstScene.InventoryService, m_firstScene.CommsManager.NetworkServersInfo, authenticate, rootFolder, this); httpServer.AddXmlRPCHandler("login_to_simulator", m_loginService.XmlRpcLoginMethod); // provides the web form login httpServer.AddHTTPHandler("login", m_loginService.ProcessHTMLLogin); // Provides the LLSD login httpServer.SetDefaultLLSDHandler(m_loginService.LLSDLoginMethod); } } if (m_enabled) { AddScene(scene); } }
public HGCommunicationsGridMode( NetworkServersInfo serversInfo, BaseHttpServer httpServer, IAssetCache assetCache, SceneManager sman, LibraryRootFolder libraryRootFolder) : base(serversInfo, httpServer, assetCache, false, libraryRootFolder) { // From constructor at CommunicationsOGS1 HGGridServices gridInterComms = new HGGridServicesGridMode(serversInfo, httpServer, assetCache, sman, m_userProfileCacheService); m_gridService = gridInterComms; m_osw = gridInterComms; // The HG InventoryService always uses secure handlers HGInventoryServiceClient invService = new HGInventoryServiceClient(serversInfo.InventoryURL, this.m_userProfileCacheService, true); invService.UserProfileCache = m_userProfileCacheService; AddSecureInventoryService(invService); m_defaultInventoryHost = invService.Host; if (SecureInventoryService != null) { m_log.Info("[HG]: SecureInventoryService."); } else { m_log.Info("[HG]: Non-secureInventoryService."); } HGUserServices userServices = new HGUserServices(this); // This plugin arrangement could eventually be configurable rather than hardcoded here. userServices.AddPlugin(new TemporaryUserProfilePlugin()); userServices.AddPlugin(new OGS1UserDataPlugin(this)); m_userService = userServices; m_messageService = userServices; m_avatarService = userServices; }