From ca8d1d57e1bbf49cb52abe81b3a7246dacbe9b03 Mon Sep 17 00:00:00 2001 From: Charles Krinke Date: Fri, 27 Jun 2008 02:15:57 +0000 Subject: Mantis#1591. Thank you graciously, Sempuki for a patch that: Currently module loading is done ad-hoc. I propose creating a simple loader class that leverages Mono.Addins (and perhaps the new .NET addins when they become available in mono). Attached is a basic patch for review that compiles into HEAD, but doesn't yet replace any existing ad-hoc loaders. --- OpenSim/Data/AssetDataBase.cs | 1 + OpenSim/Data/MSSQL/MSSQLAssetData.cs | 2 ++ OpenSim/Data/MySQL/MySQLAssetData.cs | 4 +++- OpenSim/Data/NHibernate/NHibernateAssetData.cs | 8 +++----- OpenSim/Data/SQLite/SQLiteAssetData.cs | 2 ++ 5 files changed, 11 insertions(+), 6 deletions(-) (limited to 'OpenSim/Data') diff --git a/OpenSim/Data/AssetDataBase.cs b/OpenSim/Data/AssetDataBase.cs index e3b5c25..ca1de5a 100644 --- a/OpenSim/Data/AssetDataBase.cs +++ b/OpenSim/Data/AssetDataBase.cs @@ -42,5 +42,6 @@ namespace OpenSim.Data public abstract string Name { get; } public abstract void Initialise(string connect); public abstract void Initialise(); + public abstract void Dispose(); } } diff --git a/OpenSim/Data/MSSQL/MSSQLAssetData.cs b/OpenSim/Data/MSSQL/MSSQLAssetData.cs index 50e2e3a..44d78ed 100644 --- a/OpenSim/Data/MSSQL/MSSQLAssetData.cs +++ b/OpenSim/Data/MSSQL/MSSQLAssetData.cs @@ -218,6 +218,8 @@ namespace OpenSim.Data.MSSQL #region IPlugin Members + override public void Dispose() { } + /// /// Initialises asset interface /// diff --git a/OpenSim/Data/MySQL/MySQLAssetData.cs b/OpenSim/Data/MySQL/MySQLAssetData.cs index a64a256..ac7fa1d 100644 --- a/OpenSim/Data/MySQL/MySQLAssetData.cs +++ b/OpenSim/Data/MySQL/MySQLAssetData.cs @@ -39,7 +39,7 @@ namespace OpenSim.Data.MySQL /// /// A MySQL Interface for the Asset Server /// - internal class MySQLAssetData : AssetDataBase, IPlugin + internal class MySQLAssetData : AssetDataBase { private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType); @@ -109,6 +109,8 @@ namespace OpenSim.Data.MySQL } + override public void Dispose() { } + #region IAssetProvider Members /// diff --git a/OpenSim/Data/NHibernate/NHibernateAssetData.cs b/OpenSim/Data/NHibernate/NHibernateAssetData.cs index 89f907f..a339ee3 100644 --- a/OpenSim/Data/NHibernate/NHibernateAssetData.cs +++ b/OpenSim/Data/NHibernate/NHibernateAssetData.cs @@ -43,7 +43,7 @@ namespace OpenSim.Data.NHibernate /// /// A User storage interface for the DB4o database system /// - public class NHibernateAssetData : AssetDataBase, IDisposable + public class NHibernateAssetData : AssetDataBase { private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType); @@ -51,6 +51,8 @@ namespace OpenSim.Data.NHibernate private ISessionFactory factory; private ISession session; + override public void Dispose() { } + public override void Initialise() { Initialise("SQLiteDialect;SqliteClientDriver;URI=file:Asset.db,version=3"); @@ -173,9 +175,5 @@ namespace OpenSim.Data.NHibernate get { return "0.1"; } } - public void Dispose() - { - - } } } diff --git a/OpenSim/Data/SQLite/SQLiteAssetData.cs b/OpenSim/Data/SQLite/SQLiteAssetData.cs index f560b9e..018501f 100644 --- a/OpenSim/Data/SQLite/SQLiteAssetData.cs +++ b/OpenSim/Data/SQLite/SQLiteAssetData.cs @@ -56,6 +56,8 @@ namespace OpenSim.Data.SQLite private SqliteConnection m_conn; + override public void Dispose() { } + /// /// /// Initialises AssetData interface -- cgit v1.1