You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ibatis.apache.org by gb...@apache.org on 2005/07/28 22:11:37 UTC

svn commit: r225865 - in /ibatis/trunk/cs/mapper: IBatisNet.DataMapper.Test/ IBatisNet.DataMapper.Test/Domain/ IBatisNet.DataMapper.Test/Maps/MSSQL/SqlClient/ IBatisNet.DataMapper.Test/NUnit/SqlMapTests/ IBatisNet.DataMapper/Configuration/ IBatisNet.Da...

Author: gbayon
Date: Thu Jul 28 13:11:14 2005
New Revision: 225865

URL: http://svn.apache.org/viewcvs?rev=225865&view=rev
Log:
- Added external Caching support

Removed:
    ibatis/trunk/cs/mapper/IBatisNet.DataMapper.Test/Maps/MSSQL/SqlClient/XMLFile1.xml
Modified:
    ibatis/trunk/cs/mapper/IBatisNet.DataMapper.Test/Domain/LineItem.cs
    ibatis/trunk/cs/mapper/IBatisNet.DataMapper.Test/IBatisNet.DataMapper.Test.csproj
    ibatis/trunk/cs/mapper/IBatisNet.DataMapper.Test/NUnit/SqlMapTests/CacheTest.cs
    ibatis/trunk/cs/mapper/IBatisNet.DataMapper/Configuration/Cache/CacheModel.cs
    ibatis/trunk/cs/mapper/IBatisNet.DataMapper/Configuration/Cache/Fifo/FifoCacheController.cs
    ibatis/trunk/cs/mapper/IBatisNet.DataMapper/Configuration/Cache/ICacheController.cs
    ibatis/trunk/cs/mapper/IBatisNet.DataMapper/Configuration/Cache/Lru/LruCacheController.cs
    ibatis/trunk/cs/mapper/IBatisNet.DataMapper/Configuration/Cache/Memory/MemoryCacheControler.cs
    ibatis/trunk/cs/mapper/IBatisNet.DataMapper/Configuration/DomSqlMapBuilder.cs
    ibatis/trunk/cs/mapper/IBatisNet.DataMapper/MappedStatements/MappedStatement.cs

Modified: ibatis/trunk/cs/mapper/IBatisNet.DataMapper.Test/Domain/LineItem.cs
URL: http://svn.apache.org/viewcvs/ibatis/trunk/cs/mapper/IBatisNet.DataMapper.Test/Domain/LineItem.cs?rev=225865&r1=225864&r2=225865&view=diff
==============================================================================
--- ibatis/trunk/cs/mapper/IBatisNet.DataMapper.Test/Domain/LineItem.cs (original)
+++ ibatis/trunk/cs/mapper/IBatisNet.DataMapper.Test/Domain/LineItem.cs Thu Jul 28 13:11:14 2005
@@ -14,7 +14,7 @@
 		private Order _order;
 		private string _code;
 		private int _quantity;
-		private decimal _price;
+		private decimal _price = decimal.MinValue;
 		private byte[] _pictureData = null;
 
 		public int Id

Modified: ibatis/trunk/cs/mapper/IBatisNet.DataMapper.Test/IBatisNet.DataMapper.Test.csproj
URL: http://svn.apache.org/viewcvs/ibatis/trunk/cs/mapper/IBatisNet.DataMapper.Test/IBatisNet.DataMapper.Test.csproj?rev=225865&r1=225864&r2=225865&view=diff
==============================================================================
--- ibatis/trunk/cs/mapper/IBatisNet.DataMapper.Test/IBatisNet.DataMapper.Test.csproj (original)
+++ ibatis/trunk/cs/mapper/IBatisNet.DataMapper.Test/IBatisNet.DataMapper.Test.csproj Thu Jul 28 13:11:14 2005
@@ -456,10 +456,6 @@
                     BuildAction = "Content"
                 />
                 <File
-                    RelPath = "Maps\MSSQL\SqlClient\XMLFile1.xml"
-                    BuildAction = "Content"
-                />
-                <File
                     RelPath = "Maps\MySql\ByteFx\Account.xml"
                     BuildAction = "Content"
                 />

Modified: ibatis/trunk/cs/mapper/IBatisNet.DataMapper.Test/NUnit/SqlMapTests/CacheTest.cs
URL: http://svn.apache.org/viewcvs/ibatis/trunk/cs/mapper/IBatisNet.DataMapper.Test/NUnit/SqlMapTests/CacheTest.cs?rev=225865&r1=225864&r2=225865&view=diff
==============================================================================
--- ibatis/trunk/cs/mapper/IBatisNet.DataMapper.Test/NUnit/SqlMapTests/CacheTest.cs (original)
+++ ibatis/trunk/cs/mapper/IBatisNet.DataMapper.Test/NUnit/SqlMapTests/CacheTest.cs Thu Jul 28 13:11:14 2005
@@ -220,7 +220,7 @@
 			CacheModel cache = new CacheModel();
 			cache.FlushInterval = new FlushInterval();
 			cache.FlushInterval.Minutes = 5;
-			cache.Implementation = "LRU";
+			cache.Implementation = "IBatisNet.DataMapper.Configuration.Cache.Lru.LruCacheController, IBatisNet.DataMapper";
 			cache.Initialize();
 
 			return cache;

Modified: ibatis/trunk/cs/mapper/IBatisNet.DataMapper/Configuration/Cache/CacheModel.cs
URL: http://svn.apache.org/viewcvs/ibatis/trunk/cs/mapper/IBatisNet.DataMapper/Configuration/Cache/CacheModel.cs?rev=225865&r1=225864&r2=225865&view=diff
==============================================================================
--- ibatis/trunk/cs/mapper/IBatisNet.DataMapper/Configuration/Cache/CacheModel.cs (original)
+++ ibatis/trunk/cs/mapper/IBatisNet.DataMapper/Configuration/Cache/CacheModel.cs Thu Jul 28 13:11:14 2005
@@ -36,6 +36,7 @@
 using IBatisNet.Common.Utilities;
 using IBatisNet.DataMapper.Exceptions;
 using IBatisNet.DataMapper.MappedStatements;
+using IBatisNet.DataMapper.Scope;
 
 #endregion
 
@@ -84,8 +85,6 @@
 		private HybridDictionary _properties = new HybridDictionary();
 		[NonSerialized]
 		private string _implementation = string.Empty;
-		[NonSerialized]
-		static private Hashtable _cacheControllerAliases = new Hashtable();
 
 		#endregion
 
@@ -128,28 +127,13 @@
 		[XmlElement("flushInterval",typeof(FlushInterval))]
 		public FlushInterval FlushInterval
 		{
-			get 
-			{
-				return _flushInterval;
-			}
-			set 
-			{
-				_flushInterval = value;
-			}
+			get { return _flushInterval; }
+			set { _flushInterval = value; }
 		}
 		#endregion
 
 		#region Constructor (s) / Destructor
 
-		/// <summary>
-		/// Constructor
-		/// </summary>
-		static CacheModel()
-		{
-			_cacheControllerAliases.Add("MEMORY","IBatisNet.DataMapper.Configuration.Cache.Memory.MemoryCacheControler, IBatisNet.DataMapper");
-			_cacheControllerAliases.Add("LRU","IBatisNet.DataMapper.Configuration.Cache.Lru.LruCacheController, IBatisNet.DataMapper");
-			_cacheControllerAliases.Add("FIFO","IBatisNet.DataMapper.Configuration.Cache.Fifo.FifoCacheController, IBatisNet.DataMapper");
-		}
 
 		/// <summary>
 		/// Constructor
@@ -161,6 +145,7 @@
 		#endregion
 
 		#region Methods
+
 		/// <summary>
 		/// 
 		/// </summary>
@@ -168,9 +153,6 @@
 		{
 			// Initialize FlushInterval
 			_flushInterval.Initialize();
-
-			// Initialize controller
-			_implementation = _cacheControllerAliases[_implementation.ToUpper()] as string;
 
 			try 
 			{

Modified: ibatis/trunk/cs/mapper/IBatisNet.DataMapper/Configuration/Cache/Fifo/FifoCacheController.cs
URL: http://svn.apache.org/viewcvs/ibatis/trunk/cs/mapper/IBatisNet.DataMapper/Configuration/Cache/Fifo/FifoCacheController.cs?rev=225865&r1=225864&r2=225865&view=diff
==============================================================================
--- ibatis/trunk/cs/mapper/IBatisNet.DataMapper/Configuration/Cache/Fifo/FifoCacheController.cs (original)
+++ ibatis/trunk/cs/mapper/IBatisNet.DataMapper/Configuration/Cache/Fifo/FifoCacheController.cs Thu Jul 28 13:11:14 2005
@@ -106,7 +106,7 @@
 		/// <summary>
 		/// Configures the cache
 		/// </summary>
-		public void Configure(HybridDictionary properties)
+		public void Configure(IDictionary properties)
 		{
 			string size = (string)properties["CacheSize"];;
 			if (size != null) 

Modified: ibatis/trunk/cs/mapper/IBatisNet.DataMapper/Configuration/Cache/ICacheController.cs
URL: http://svn.apache.org/viewcvs/ibatis/trunk/cs/mapper/IBatisNet.DataMapper/Configuration/Cache/ICacheController.cs?rev=225865&r1=225864&r2=225865&view=diff
==============================================================================
--- ibatis/trunk/cs/mapper/IBatisNet.DataMapper/Configuration/Cache/ICacheController.cs (original)
+++ ibatis/trunk/cs/mapper/IBatisNet.DataMapper/Configuration/Cache/ICacheController.cs Thu Jul 28 13:11:14 2005
@@ -60,7 +60,7 @@
 		/// Configures the CacheController
 		/// </summary>
 		/// <param name="properties"></param>
-		void Configure(HybridDictionary properties);
+		void Configure(IDictionary properties);
 		#endregion
 
 	}

Modified: ibatis/trunk/cs/mapper/IBatisNet.DataMapper/Configuration/Cache/Lru/LruCacheController.cs
URL: http://svn.apache.org/viewcvs/ibatis/trunk/cs/mapper/IBatisNet.DataMapper/Configuration/Cache/Lru/LruCacheController.cs?rev=225865&r1=225864&r2=225865&view=diff
==============================================================================
--- ibatis/trunk/cs/mapper/IBatisNet.DataMapper/Configuration/Cache/Lru/LruCacheController.cs (original)
+++ ibatis/trunk/cs/mapper/IBatisNet.DataMapper/Configuration/Cache/Lru/LruCacheController.cs Thu Jul 28 13:11:14 2005
@@ -108,7 +108,7 @@
 		/// <summary>
 		/// Configures the cache
 		/// </summary>
-		public void Configure(HybridDictionary properties)
+		public void Configure(IDictionary properties)
 		{
 			string size = (string)properties["CacheSize"];;
 			if (size != null) 

Modified: ibatis/trunk/cs/mapper/IBatisNet.DataMapper/Configuration/Cache/Memory/MemoryCacheControler.cs
URL: http://svn.apache.org/viewcvs/ibatis/trunk/cs/mapper/IBatisNet.DataMapper/Configuration/Cache/Memory/MemoryCacheControler.cs?rev=225865&r1=225864&r2=225865&view=diff
==============================================================================
--- ibatis/trunk/cs/mapper/IBatisNet.DataMapper/Configuration/Cache/Memory/MemoryCacheControler.cs (original)
+++ ibatis/trunk/cs/mapper/IBatisNet.DataMapper/Configuration/Cache/Memory/MemoryCacheControler.cs Thu Jul 28 13:11:14 2005
@@ -117,7 +117,7 @@
 		/// <summary>
 		/// Configures the cache
 		/// </summary>
-		public void Configure(HybridDictionary properties)
+		public void Configure(IDictionary properties)
 		{
 			string referenceType = (string)properties["Type"];;
 			if (referenceType != null) 

Modified: ibatis/trunk/cs/mapper/IBatisNet.DataMapper/Configuration/DomSqlMapBuilder.cs
URL: http://svn.apache.org/viewcvs/ibatis/trunk/cs/mapper/IBatisNet.DataMapper/Configuration/DomSqlMapBuilder.cs?rev=225865&r1=225864&r2=225865&view=diff
==============================================================================
--- ibatis/trunk/cs/mapper/IBatisNet.DataMapper/Configuration/DomSqlMapBuilder.cs (original)
+++ ibatis/trunk/cs/mapper/IBatisNet.DataMapper/Configuration/DomSqlMapBuilder.cs Thu Jul 28 13:11:14 2005
@@ -625,6 +625,20 @@
 			
 			_configScope.SqlMapper = new SqlMapper( new TypeHandlerFactory() );
 
+			#region Cache Alias
+
+			TypeAlias cacheAlias = new TypeAlias(typeof(IBatisNet.DataMapper.Configuration.Cache.Memory.MemoryCacheControler));
+			cacheAlias.Name = "MEMORY";
+			_configScope.SqlMapper.AddTypeAlias(cacheAlias.Name, cacheAlias);
+			cacheAlias = new TypeAlias(typeof(IBatisNet.DataMapper.Configuration.Cache.Lru.LruCacheController));
+			cacheAlias.Name = "LRU";
+			_configScope.SqlMapper.AddTypeAlias(cacheAlias.Name, cacheAlias);
+			cacheAlias = new TypeAlias(typeof(IBatisNet.DataMapper.Configuration.Cache.Fifo.FifoCacheController));
+			cacheAlias.Name = "FIFO";
+			_configScope.SqlMapper.AddTypeAlias(cacheAlias.Name, cacheAlias);
+
+			#endregion 
+
 			#region Load Global Properties
 			if (_configScope.IsCallFromDao == false)
 			{
@@ -1300,6 +1314,7 @@
 				{
 					cacheModel = (CacheModel) serializer.Deserialize(new XmlNodeReader(xmlNode));
 					cacheModel.Id = ApplyNamespace( cacheModel.Id );
+					cacheModel.Implementation = _configScope.SqlMapper.GetTypeAlias(cacheModel.Implementation).Class.AssemblyQualifiedName;
 
 					// Attach ExecuteEventHandler
 					foreach(XmlNode flushOn in xmlNode.SelectNodes( ApplyMappingNamespacePrefix(XML_FLUSH_ON_EXECUTE), _configScope.XmlNamespaceManager  ))

Modified: ibatis/trunk/cs/mapper/IBatisNet.DataMapper/MappedStatements/MappedStatement.cs
URL: http://svn.apache.org/viewcvs/ibatis/trunk/cs/mapper/IBatisNet.DataMapper/MappedStatements/MappedStatement.cs?rev=225865&r1=225864&r2=225865&view=diff
==============================================================================
--- ibatis/trunk/cs/mapper/IBatisNet.DataMapper/MappedStatements/MappedStatement.cs (original)
+++ ibatis/trunk/cs/mapper/IBatisNet.DataMapper/MappedStatements/MappedStatement.cs Thu Jul 28 13:11:14 2005
@@ -430,6 +430,8 @@
 				RetrieveOutputParameters(request, session, command, parameterObject);
 			}
 
+			RaiseExecuteEvent();
+
 			return result;
 		}