diff --git a/OpenSim/ApplicationPlugins/RemoteController/RemoteAdminPlugin.cs b/OpenSim/ApplicationPlugins/RemoteController/RemoteAdminPlugin.cs index 5d2d23e7b1..4dc63fda5a 100644 --- a/OpenSim/ApplicationPlugins/RemoteController/RemoteAdminPlugin.cs +++ b/OpenSim/ApplicationPlugins/RemoteController/RemoteAdminPlugin.cs @@ -441,7 +441,7 @@ namespace OpenSim.ApplicationPlugins.RemoteController if (persist) { // default place for region XML files is in the - // Regions directory of th config dir (aka /bin) + // Regions directory of the config dir (aka /bin) string regionConfigPath = Path.Combine(Util.configDir(), "Regions"); try { diff --git a/OpenSim/Framework/Communications/GridInfoService.cs b/OpenSim/Framework/Communications/GridInfoService.cs index d51bc594e1..ad60638816 100644 --- a/OpenSim/Framework/Communications/GridInfoService.cs +++ b/OpenSim/Framework/Communications/GridInfoService.cs @@ -55,59 +55,55 @@ namespace OpenSim.Framework.Communications /// anything else requires a general redesign of the config /// system. /// - public GridInfoService(string configPath) + public GridInfoService(IConfigSource configSource) { _info["platform"] = "OpenSim"; - if (File.Exists(configPath)) + try { - try + IConfig startupCfg = configSource.Configs["Startup"]; + IConfig gridCfg = configSource.Configs["GridInfo"]; + IConfig netCfg = configSource.Configs["Network"]; + + bool grid = startupCfg.GetBoolean("gridmode", false); + + if (grid) + _info["mode"] = "grid"; + else + _info["mode"] = "standalone"; + + + if (null != gridCfg) { - IConfigSource _configSource = new IniConfigSource(configPath); - IConfig startupCfg = _configSource.Configs["Startup"]; - IConfig gridCfg = _configSource.Configs["GridInfo"]; - IConfig netCfg = _configSource.Configs["Network"]; - - bool grid = startupCfg.GetBoolean("gridmode", false); - - if (grid) - _info["mode"] = "grid"; - else - _info["mode"] = "standalone"; - - - if (null != gridCfg) + foreach (string k in gridCfg.GetKeys()) { - foreach (string k in gridCfg.GetKeys()) - { - _info[k] = gridCfg.GetString(k); - } + _info[k] = gridCfg.GetString(k); } - else if (null != netCfg) - { - if (grid) - _info["login"] = netCfg.GetString("user_server_url"); + } + else if (null != netCfg) + { + if (grid) + _info["login"] = netCfg.GetString("user_server_url"); else _info["login"] = String.Format("http://127.0.0.1:{0}/", netCfg.GetString("http_listener_port")); - IssueWarning(); - } - else - { - _info["login"] = "http://127.0.0.1:9000/"; - IssueWarning(); - } + IssueWarning(); } - catch (Exception) + else { - _log.DebugFormat("[GridInfoService] cannot get grid info from {0}, using minimal defaults", configPath); + _info["login"] = "http://127.0.0.1:9000/"; + IssueWarning(); } } + catch (Exception) + { + _log.Debug("[GridInfoService] cannot get grid info from config source, using minimal defaults"); + } _log.InfoFormat("[GridInfoService] Grid info service initialized with {0} keys", _info.Count); } /// /// Default constructor, uses OpenSim.ini. /// - public GridInfoService() : this(Path.Combine(Util.configDir(), "OpenSim.ini")) + public GridInfoService() : this(new IniConfigSource(Path.Combine(Util.configDir(), "OpenSim.ini"))) { } diff --git a/OpenSim/Region/Application/OpenSimBase.cs b/OpenSim/Region/Application/OpenSimBase.cs index 983773a342..0dd037d0be 100644 --- a/OpenSim/Region/Application/OpenSimBase.cs +++ b/OpenSim/Region/Application/OpenSimBase.cs @@ -387,7 +387,8 @@ namespace OpenSim m_httpServer.SetLLSDHandler(m_loginService.LLSDLoginMethod); // provide grid info - m_gridInfoService = new GridInfoService(); + // 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)); }