Send the config section name up to the service classes themselves (XInventory and Assets).
							parent
							
								
									ad865ab4fc
								
							
						
					
					
						commit
						8131a24cde
					
				|  | @ -59,7 +59,7 @@ namespace OpenSim.Server.Handlers.Asset | |||
|             if (assetService == String.Empty) | ||||
|                 throw new Exception("No LocalServiceModule in config file"); | ||||
| 
 | ||||
|             Object[] args = new Object[] { config }; | ||||
|             Object[] args = new Object[] { config, m_ConfigName }; | ||||
|             m_AssetService = | ||||
|                     ServerUtils.LoadPlugin<IAssetService>(assetService, args); | ||||
| 
 | ||||
|  |  | |||
|  | @ -67,7 +67,7 @@ namespace OpenSim.Server.Handlers.Asset | |||
|             if (inventoryService == String.Empty) | ||||
|                 throw new Exception("No InventoryService in config file"); | ||||
| 
 | ||||
|             Object[] args = new Object[] { config }; | ||||
|             Object[] args = new Object[] { config, m_ConfigName }; | ||||
|             m_InventoryService = | ||||
|                     ServerUtils.LoadPlugin<IInventoryService>(inventoryService, args); | ||||
| 
 | ||||
|  |  | |||
|  | @ -46,7 +46,12 @@ namespace OpenSim.Services.AssetService | |||
| 
 | ||||
|         protected static AssetService m_RootInstance; | ||||
| 
 | ||||
|         public AssetService(IConfigSource config) : base(config) | ||||
|         public AssetService(IConfigSource config) | ||||
|             : this(config, "AssetService") | ||||
|         { | ||||
|         } | ||||
| 
 | ||||
|         public AssetService(IConfigSource config, string configName) : base(config, configName) | ||||
|         { | ||||
|             if (m_RootInstance == null) | ||||
|             { | ||||
|  | @ -54,9 +59,9 @@ namespace OpenSim.Services.AssetService | |||
| 
 | ||||
|                 if (m_AssetLoader != null) | ||||
|                 { | ||||
|                     IConfig assetConfig = config.Configs["AssetService"]; | ||||
|                     IConfig assetConfig = config.Configs[m_ConfigName]; | ||||
|                     if (assetConfig == null) | ||||
|                         throw new Exception("No AssetService configuration"); | ||||
|                         throw new Exception("No " + m_ConfigName + " configuration"); | ||||
| 
 | ||||
|                     string loaderArgs = assetConfig.GetString("AssetLoaderArgs", | ||||
|                             String.Empty); | ||||
|  |  | |||
|  | @ -39,16 +39,25 @@ namespace OpenSim.Services.AssetService | |||
|     { | ||||
|         protected IAssetDataPlugin m_Database = null; | ||||
|         protected IAssetLoader m_AssetLoader = null; | ||||
|         protected string m_ConfigName = "AssetService"; | ||||
| 
 | ||||
|         public AssetServiceBase(IConfigSource config) : base(config) | ||||
|         public AssetServiceBase(IConfigSource config) | ||||
|             : this(config, "AssetService") | ||||
|         { | ||||
|         } | ||||
| 
 | ||||
|         public AssetServiceBase(IConfigSource config, string configName) : base(config) | ||||
|         { | ||||
|             if (configName != string.Empty) | ||||
|                 m_ConfigName = configName; | ||||
| 
 | ||||
|             string dllName = String.Empty; | ||||
|             string connString = String.Empty; | ||||
| 
 | ||||
|             // | ||||
|             // Try reading the [AssetService] section first, if it exists | ||||
|             // Try reading the [AssetService] section, if it exists | ||||
|             // | ||||
|             IConfig assetConfig = config.Configs["AssetService"]; | ||||
|             IConfig assetConfig = config.Configs[m_ConfigName]; | ||||
|             if (assetConfig != null) | ||||
|             { | ||||
|                 dllName = assetConfig.GetString("StorageProvider", dllName); | ||||
|  |  | |||
|  | @ -58,10 +58,10 @@ namespace OpenSim.Services.HypergridService | |||
| 
 | ||||
|         private UserAccountCache m_Cache; | ||||
| 
 | ||||
|         public HGAssetService(IConfigSource config) : base(config) | ||||
|         public HGAssetService(IConfigSource config, string configName) : base(config, configName) | ||||
|         { | ||||
|             m_log.Debug("[HGAsset Service]: Starting"); | ||||
|             IConfig assetConfig = config.Configs["HGAssetService"]; | ||||
|             IConfig assetConfig = config.Configs[configName]; | ||||
|             if (assetConfig == null) | ||||
|                 throw new Exception("No HGAssetService configuration"); | ||||
| 
 | ||||
|  |  | |||
|  | @ -60,36 +60,19 @@ namespace OpenSim.Services.HypergridService | |||
| 
 | ||||
|         private UserAccountCache m_Cache; | ||||
| 
 | ||||
|         public HGInventoryService(IConfigSource config) | ||||
|             : base(config) | ||||
|         public HGInventoryService(IConfigSource config, string configName) | ||||
|             : base(config, configName) | ||||
|         { | ||||
|             m_log.Debug("[HGInventory Service]: Starting"); | ||||
| 
 | ||||
|             string dllName = String.Empty; | ||||
|             string connString = String.Empty; | ||||
|             //string realm = "Inventory"; // OSG version doesn't use this | ||||
| 
 | ||||
|             // | ||||
|             // Try reading the [DatabaseService] section, if it exists | ||||
|             // | ||||
|             IConfig dbConfig = config.Configs["DatabaseService"]; | ||||
|             if (dbConfig != null) | ||||
|             { | ||||
|                 if (dllName == String.Empty) | ||||
|                     dllName = dbConfig.GetString("StorageProvider", String.Empty); | ||||
|                 if (connString == String.Empty) | ||||
|                     connString = dbConfig.GetString("ConnectionString", String.Empty); | ||||
|             } | ||||
|             if (configName != string.Empty) | ||||
|                 m_ConfigName = configName; | ||||
| 
 | ||||
|             // | ||||
|             // Try reading the [InventoryService] section, if it exists | ||||
|             // | ||||
|             IConfig invConfig = config.Configs["HGInventoryService"]; | ||||
|             IConfig invConfig = config.Configs[m_ConfigName]; | ||||
|             if (invConfig != null) | ||||
|             {                 | ||||
|                 dllName = invConfig.GetString("StorageProvider", dllName); | ||||
|                 connString = invConfig.GetString("ConnectionString", connString); | ||||
|                  | ||||
|                 // realm = authConfig.GetString("Realm", realm); | ||||
|                 string userAccountsDll = invConfig.GetString("UserAccountsService", string.Empty); | ||||
|                 if (userAccountsDll == string.Empty) | ||||
|  | @ -108,17 +91,6 @@ namespace OpenSim.Services.HypergridService | |||
|                 m_Cache = UserAccountCache.CreateUserAccountCache(m_UserAccountService); | ||||
|             } | ||||
| 
 | ||||
|             // | ||||
|             // We tried, but this doesn't exist. We can't proceed. | ||||
|             // | ||||
|             if (dllName == String.Empty) | ||||
|                 throw new Exception("No StorageProvider configured"); | ||||
| 
 | ||||
|             m_Database = LoadPlugin<IXInventoryData>(dllName, | ||||
|                     new Object[] {connString, String.Empty}); | ||||
|             if (m_Database == null) | ||||
|                 throw new Exception("Could not find a storage interface in the given module"); | ||||
| 
 | ||||
|             m_log.Debug("[HG INVENTORY SERVICE]: Starting..."); | ||||
|         } | ||||
| 
 | ||||
|  |  | |||
|  | @ -46,9 +46,17 @@ namespace OpenSim.Services.InventoryService | |||
| 
 | ||||
|         protected IXInventoryData m_Database; | ||||
|         protected bool m_AllowDelete = true; | ||||
|         protected string m_ConfigName = "InventoryService"; | ||||
| 
 | ||||
|         public XInventoryService(IConfigSource config) : base(config) | ||||
|         public XInventoryService(IConfigSource config) | ||||
|             : this(config, "InventoryService") | ||||
|         { | ||||
|         } | ||||
|         public XInventoryService(IConfigSource config, string configName) : base(config) | ||||
|         { | ||||
|             if (configName != string.Empty) | ||||
|                 m_ConfigName = configName; | ||||
| 
 | ||||
|             string dllName = String.Empty; | ||||
|             string connString = String.Empty; | ||||
|             //string realm = "Inventory"; // OSG version doesn't use this | ||||
|  | @ -56,7 +64,7 @@ namespace OpenSim.Services.InventoryService | |||
|             // | ||||
|             // Try reading the [InventoryService] section first, if it exists | ||||
|             // | ||||
|             IConfig authConfig = config.Configs["InventoryService"]; | ||||
|             IConfig authConfig = config.Configs[m_ConfigName]; | ||||
|             if (authConfig != null) | ||||
|             { | ||||
|                 dllName = authConfig.GetString("StorageProvider", dllName); | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue
	
	 Diva Canto
						Diva Canto