more startup/initialisation refactoring

0.6.0-stable
MW 2008-11-05 17:45:56 +00:00
parent 2a249373d3
commit 079469b3f5
4 changed files with 64 additions and 47 deletions

View File

@ -21,12 +21,12 @@ namespace OpenSim.Framework
set { m_meshEngineName = value; }
}
private bool m_sandbox;
private bool m_standalone;
public bool Sandbox
public bool Standalone
{
get { return m_sandbox; }
set { m_sandbox = value; }
get { return m_standalone; }
set { m_standalone = value; }
}
private bool m_see_into_region_from_neighbor;

View File

@ -90,7 +90,7 @@ namespace OpenSim
m_log.Info("====================================================================");
m_log.Info("========================= STARTING OPENSIM =========================");
m_log.Info("====================================================================");
m_log.InfoFormat("[OPENSIM MAIN]: Running in {0} mode", (ConfigurationSettings.Sandbox ? "sandbox" : "grid"));
m_log.InfoFormat("[OPENSIM MAIN]: Running in {0} mode", (ConfigurationSettings.Standalone ? "sandbox" : "grid"));
m_console = new ConsoleBase("Region", this);
MainConsole.Instance = m_console;
@ -642,7 +642,7 @@ namespace OpenSim
ShowPluginCommandsHelp(CombineParams(helpArgs, 0), m_console);
if (ConfigurationSettings.Sandbox)
if (ConfigurationSettings.Standalone)
{
m_console.Notice("");
m_console.Notice("create user - adds a new user.");

View File

@ -56,7 +56,7 @@ namespace OpenSim
m_log.Info("====================================================================");
m_log.Info("========================= STARTING OPENSIM =========================");
m_log.Info("====================================================================");
m_log.InfoFormat("[OPENSIM MAIN]: Running in background {0} mode", ConfigurationSettings.Sandbox ? "sandbox" : "grid");
m_log.InfoFormat("[OPENSIM MAIN]: Running in background {0} mode", ConfigurationSettings.Standalone ? "sandbox" : "grid");
base.Startup();

View File

@ -271,7 +271,7 @@ namespace OpenSim
if (startupConfig != null)
{
m_configSettings.Sandbox = !startupConfig.GetBoolean("gridmode");
m_configSettings.Standalone = !startupConfig.GetBoolean("gridmode");
m_configSettings.PhysicsEngine = startupConfig.GetString("physics");
m_configSettings.MeshEngineName = startupConfig.GetString("meshing");
@ -333,44 +333,10 @@ namespace OpenSim
LibraryRootFolder libraryRootFolder = new LibraryRootFolder();
// StandAlone mode? m_sandbox is determined by !startupConfig.GetBoolean("gridmode", false)
if (m_configSettings.Sandbox)
// StandAlone mode? is determined by !startupConfig.GetBoolean("gridmode", false)
if (m_configSettings.Standalone)
{
LocalInventoryService inventoryService = new LocalInventoryService();
inventoryService.AddPlugin(m_configSettings.StandaloneInventoryPlugin, m_configSettings.StandaloneInventorySource);
LocalUserServices userService =
new LocalUserServices(m_networkServersInfo, m_networkServersInfo.DefaultHomeLocX,
m_networkServersInfo.DefaultHomeLocY, inventoryService);
userService.AddPlugin(m_configSettings.StandaloneUserPlugin, m_configSettings.StandaloneUserSource);
LocalBackEndServices backendService = new LocalBackEndServices();
LocalLoginService loginService =
new LocalLoginService(
userService, m_configSettings.StandaloneWelcomeMessage, inventoryService, backendService, m_networkServersInfo,
m_configSettings.StandaloneAuthenticate, libraryRootFolder);
m_commsManager
= new CommunicationsLocal(
m_networkServersInfo, m_httpServer, m_assetCache, userService, userService,
inventoryService, backendService, backendService, userService,
libraryRootFolder, m_dumpAssetsToFile);
// set up XMLRPC handler for client's initial login request message
m_httpServer.AddXmlRPCHandler("login_to_simulator", loginService.XmlRpcLoginMethod);
// provides the web form login
m_httpServer.AddHTTPHandler("login", loginService.ProcessHTMLLogin);
// Provides the LLSD login
m_httpServer.SetDefaultLLSDHandler(loginService.LLSDLoginMethod);
// provide grid info
// m_gridInfoService = new GridInfoService(m_config.Source.Configs["Startup"].GetString("inifile", Path.Combine(Util.configDir(), "OpenSim.ini")));
m_gridInfoService = new GridInfoService(m_config.Source);
m_httpServer.AddXmlRPCHandler("get_grid_info", m_gridInfoService.XmlRpcGridInfoMethod);
m_httpServer.AddStreamHandler(new RestStreamHandler("GET", "/get_grid_info", m_gridInfoService.RestGetGridInfoMethod));
InitialiseStandaloneServices(libraryRootFolder);
}
else
{
@ -393,6 +359,49 @@ namespace OpenSim
m_commsManager.GridService.RegionLoginsEnabled = true;
}
/// <summary>
/// Initialises the backend services for standalone mode, and registers some http handlers
/// </summary>
/// <param name="libraryRootFolder"></param>
protected void InitialiseStandaloneServices(LibraryRootFolder libraryRootFolder)
{
LocalInventoryService inventoryService = new LocalInventoryService();
inventoryService.AddPlugin(m_configSettings.StandaloneInventoryPlugin, m_configSettings.StandaloneInventorySource);
LocalUserServices userService =
new LocalUserServices(m_networkServersInfo, m_networkServersInfo.DefaultHomeLocX,
m_networkServersInfo.DefaultHomeLocY, inventoryService);
userService.AddPlugin(m_configSettings.StandaloneUserPlugin, m_configSettings.StandaloneUserSource);
LocalBackEndServices backendService = new LocalBackEndServices();
LocalLoginService loginService =
new LocalLoginService(
userService, m_configSettings.StandaloneWelcomeMessage, inventoryService, backendService, m_networkServersInfo,
m_configSettings.StandaloneAuthenticate, libraryRootFolder);
m_commsManager
= new CommunicationsLocal(
m_networkServersInfo, m_httpServer, m_assetCache, userService, userService,
inventoryService, backendService, backendService, userService,
libraryRootFolder, m_dumpAssetsToFile);
// set up XMLRPC handler for client's initial login request message
m_httpServer.AddXmlRPCHandler("login_to_simulator", loginService.XmlRpcLoginMethod);
// provides the web form login
m_httpServer.AddHTTPHandler("login", loginService.ProcessHTMLLogin);
// Provides the LLSD login
m_httpServer.SetDefaultLLSDHandler(loginService.LLSDLoginMethod);
// provide grid info
// m_gridInfoService = new GridInfoService(m_config.Source.Configs["Startup"].GetString("inifile", Path.Combine(Util.configDir(), "OpenSim.ini")));
m_gridInfoService = new GridInfoService(m_config.Source);
m_httpServer.AddXmlRPCHandler("get_grid_info", m_gridInfoService.XmlRpcGridInfoMethod);
m_httpServer.AddStreamHandler(new RestStreamHandler("GET", "/get_grid_info", m_gridInfoService.RestGetGridInfoMethod));
}
protected override void Initialize()
{
//
@ -401,6 +410,16 @@ namespace OpenSim
m_httpServerPort = m_networkServersInfo.HttpListenerPort;
InitialiseAssetCache();
m_sceneManager.OnRestartSim += handleRestartRegion;
}
/// <summary>
/// Initialises the assetcache
/// </summary>
protected void InitialiseAssetCache()
{
IAssetServer assetServer;
if (m_configSettings.AssetStorage == "grid")
{
@ -428,8 +447,6 @@ namespace OpenSim
}
m_assetCache = new AssetCache(assetServer);
m_sceneManager.OnRestartSim += handleRestartRegion;
}
public UUID CreateUser(string tempfirstname, string templastname, string tempPasswd, uint regX, uint regY)