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;
}