diff --git a/OpenSim/Services/InventoryService/InventoryService.cs b/OpenSim/Services/InventoryService/InventoryService.cs index 9dbd591cb5..1190b38118 100644 --- a/OpenSim/Services/InventoryService/InventoryService.cs +++ b/OpenSim/Services/InventoryService/InventoryService.cs @@ -72,16 +72,10 @@ namespace OpenSim.Services.InventoryService userFolders.Add(rootFolder); - foreach (IInventoryDataPlugin plugin in m_plugins) - { - IList folders = plugin.getFolderHierarchy(rootFolder.ID); - userFolders.AddRange(folders); - } + IList folders = m_Database.getFolderHierarchy(rootFolder.ID); + userFolders.AddRange(folders); -// foreach (InventoryFolderBase folder in userFolders) -// { -// m_log.DebugFormat("[INVENTORY SERVICE]: Got folder {0} {1}", folder.name, folder.folderID); -// } +// m_log.DebugFormat("[INVENTORY SERVICE]: Got folder {0} {1}", folder.name, folder.folderID); return userFolders; } @@ -94,15 +88,12 @@ namespace OpenSim.Services.InventoryService // See IInventoryServices public virtual InventoryFolderBase RequestRootFolder(UUID userID) { - // Retrieve the first root folder we get from the list of plugins. - foreach (IInventoryDataPlugin plugin in m_plugins) - { - InventoryFolderBase rootFolder = plugin.getUserRootFolder(userID); - if (rootFolder != null) - return rootFolder; - } + // Retrieve the first root folder we get from the DB. + InventoryFolderBase rootFolder = m_Database.getUserRootFolder(userID); + if (rootFolder != null) + return rootFolder; - // Return nothing if no plugin was able to supply a root folder + // Return nothing if the plugin was unable to supply a root folder return null; } @@ -246,10 +237,7 @@ namespace OpenSim.Services.InventoryService public List GetActiveGestures(UUID userId) { List activeGestures = new List(); - foreach (IInventoryDataPlugin plugin in m_plugins) - { - activeGestures.AddRange(plugin.fetchActiveGestures(userId)); - } + activeGestures.AddRange(m_Database.fetchActiveGestures(userId)); return activeGestures; } @@ -262,10 +250,7 @@ namespace OpenSim.Services.InventoryService { List inventoryList = new List(); - foreach (IInventoryDataPlugin plugin in m_plugins) - { - inventoryList.AddRange(plugin.getInventoryFolders(parentFolderID)); - } + inventoryList.AddRange(m_Database.getInventoryFolders(parentFolderID)); return inventoryList; } @@ -274,10 +259,7 @@ namespace OpenSim.Services.InventoryService { List itemsList = new List(); - foreach (IInventoryDataPlugin plugin in m_plugins) - { - itemsList.AddRange(plugin.getInventoryInFolder(folderID)); - } + itemsList.AddRange(m_Database.getInventoryInFolder(folderID)); return itemsList; } @@ -290,10 +272,7 @@ namespace OpenSim.Services.InventoryService m_log.DebugFormat( "[INVENTORY SERVICE]: Adding folder {0} {1} to folder {2}", folder.Name, folder.ID, folder.ParentID); - foreach (IInventoryDataPlugin plugin in m_plugins) - { - plugin.addInventoryFolder(folder); - } + m_Database.addInventoryFolder(folder); // FIXME: Should return false on failure return true; @@ -305,10 +284,7 @@ namespace OpenSim.Services.InventoryService m_log.DebugFormat( "[INVENTORY SERVICE]: Updating folder {0} {1} to folder {2}", folder.Name, folder.ID, folder.ParentID); - foreach (IInventoryDataPlugin plugin in m_plugins) - { - plugin.updateInventoryFolder(folder); - } + m_Database.updateInventoryFolder(folder); // FIXME: Should return false on failure return true; @@ -320,10 +296,7 @@ namespace OpenSim.Services.InventoryService m_log.DebugFormat( "[INVENTORY SERVICE]: Moving folder {0} {1} to folder {2}", folder.Name, folder.ID, folder.ParentID); - foreach (IInventoryDataPlugin plugin in m_plugins) - { - plugin.moveInventoryFolder(folder); - } + m_Database.moveInventoryFolder(folder); // FIXME: Should return false on failure return true; @@ -335,10 +308,7 @@ namespace OpenSim.Services.InventoryService m_log.DebugFormat( "[INVENTORY SERVICE]: Adding item {0} {1} to folder {2}", item.Name, item.ID, item.Folder); - foreach (IInventoryDataPlugin plugin in m_plugins) - { - plugin.addInventoryItem(item); - } + m_Database.addInventoryItem(item); // FIXME: Should return false on failure return true; @@ -350,10 +320,7 @@ namespace OpenSim.Services.InventoryService m_log.InfoFormat( "[INVENTORY SERVICE]: Updating item {0} {1} in folder {2}", item.Name, item.ID, item.Folder); - foreach (IInventoryDataPlugin plugin in m_plugins) - { - plugin.updateInventoryItem(item); - } + m_Database.updateInventoryItem(item); // FIXME: Should return false on failure return true; @@ -365,10 +332,7 @@ namespace OpenSim.Services.InventoryService m_log.InfoFormat( "[INVENTORY SERVICE]: Deleting item {0} {1} from folder {2}", item.Name, item.ID, item.Folder); - foreach (IInventoryDataPlugin plugin in m_plugins) - { - plugin.deleteInventoryItem(item.ID); - } + m_Database.deleteInventoryItem(item.ID); // FIXME: Should return false on failure return true; @@ -376,24 +340,18 @@ namespace OpenSim.Services.InventoryService public virtual InventoryItemBase QueryItem(InventoryItemBase item) { - foreach (IInventoryDataPlugin plugin in m_plugins) - { - InventoryItemBase result = plugin.queryInventoryItem(item.ID); - if (result != null) - return result; - } + InventoryItemBase result = m_Database.queryInventoryItem(item.ID); + if (result != null) + return result; return null; } public virtual InventoryFolderBase QueryFolder(InventoryFolderBase item) { - foreach (IInventoryDataPlugin plugin in m_plugins) - { - InventoryFolderBase result = plugin.queryInventoryFolder(item.ID); - if (result != null) - return result; - } + InventoryFolderBase result = m_Database.queryInventoryFolder(item.ID); + if (result != null) + return result; return null; } @@ -416,10 +374,7 @@ namespace OpenSim.Services.InventoryService { // m_log.DebugFormat("[INVENTORY SERVICE]: Deleting folder {0} {1}", subFolder.Name, subFolder.ID); - foreach (IInventoryDataPlugin plugin in m_plugins) - { - plugin.deleteInventoryFolder(subFolder.ID); - } + m_Database.deleteInventoryFolder(subFolder.ID); } List items = GetFolderItems(folder.ID); @@ -443,12 +398,9 @@ namespace OpenSim.Services.InventoryService public InventoryItemBase GetInventoryItem(UUID itemID) { - foreach (IInventoryDataPlugin plugin in m_plugins) - { - InventoryItemBase item = plugin.getInventoryItem(itemID); - if (item != null) - return item; - } + InventoryItemBase item = m_Database.getInventoryItem(itemID); + if (item != null) + return item; return null; } diff --git a/OpenSim/Services/InventoryService/InventoryServiceBase.cs b/OpenSim/Services/InventoryService/InventoryServiceBase.cs index 4526c34e2e..456e4557db 100644 --- a/OpenSim/Services/InventoryService/InventoryServiceBase.cs +++ b/OpenSim/Services/InventoryService/InventoryServiceBase.cs @@ -40,8 +40,6 @@ namespace OpenSim.Services.InventoryService { protected IInventoryDataPlugin m_Database = null; - protected List m_plugins = new List(); - public InventoryServiceBase(IConfigSource config) : base(config) { string dllName = String.Empty; @@ -56,8 +54,6 @@ namespace OpenSim.Services.InventoryService dllName = dbConfig.GetString("StorageProvider", String.Empty); connString = dbConfig.GetString("ConnectionString", String.Empty); } - else - Console.WriteLine("------ dbConfig = null!"); // // Try reading the more specific [InventoryService] section, if it exists @@ -79,43 +75,8 @@ namespace OpenSim.Services.InventoryService if (m_Database == null) throw new Exception("Could not find a storage interface in the given module"); - //m_Database.Initialise(connString); - List plugins - = DataPluginFactory.LoadDataPlugins(dllName, connString); - - foreach (IInventoryDataPlugin plugin in plugins) - AddPlugin(plugin); - + m_Database.Initialise(connString); } - #region Plugin methods - - /// - /// Add a new inventory data plugin - plugins will be requested in the order they were added. - /// - /// The plugin that will provide data - public void AddPlugin(IInventoryDataPlugin plugin) - { - m_plugins.Add(plugin); - } - - /// - /// Adds a list of inventory data plugins, as described by `provider' - /// and `connect', to `m_plugins'. - /// - /// - /// The filename of the inventory server plugin DLL. - /// - /// - /// The connection string for the storage backend. - /// - public void AddPlugins(string provider, string connect) - { - m_plugins.AddRange(DataPluginFactory.LoadDataPlugins(provider, connect)); - } - - #endregion - - } }