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 2008/06/08 20:20:46 UTC

svn commit: r664536 [3/4] - in /ibatis/trunk/cs/V3/src: Apache.Ibatis.DataMapper.SqlClient.Test.2005/ Apache.Ibatis.DataMapper.SqlClient.Test.2005/Fixtures/ Apache.Ibatis.DataMapper.SqlClient.Test.2005/Fixtures/Mapping/ Apache.Ibatis.DataMapper.SqlClie...

Modified: ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/MappedStatements/ResultStrategy/AutoMapStrategy.cs
URL: http://svn.apache.org/viewvc/ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/MappedStatements/ResultStrategy/AutoMapStrategy.cs?rev=664536&r1=664535&r2=664536&view=diff
==============================================================================
--- ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/MappedStatements/ResultStrategy/AutoMapStrategy.cs (original)
+++ ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/MappedStatements/ResultStrategy/AutoMapStrategy.cs Sun Jun  8 11:20:44 2008
@@ -41,7 +41,7 @@
 		/// <param name="reader">The reader.</param>
 		/// <param name="resultObject">The result object.</param>
         /// <returns>The AutoResultMap use to map the resultset.</returns>
-        private AutoResultMap InitializeAutoResultMap(RequestScope request, ref IDataReader reader, ref object resultObject) 
+        private static AutoResultMap InitializeAutoResultMap(RequestScope request, ref IDataReader reader, ref object resultObject) 
 		{
 		    AutoResultMap resultMap  = request.CurrentResultMap as AutoResultMap;
 		    
@@ -96,7 +96,7 @@
 
 			if (outObject == null) 
 			{
-                outObject = (request.CurrentResultMap as AutoResultMap).CreateInstanceOfResultClass();
+                outObject = request.CurrentResultMap.CreateInstanceOfResult(null);
 			}
 
             AutoResultMap resultMap = InitializeAutoResultMap(request, ref reader, ref outObject);

Modified: ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/MappedStatements/ResultStrategy/CirularStrategy.cs
URL: http://svn.apache.org/viewvc/ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/MappedStatements/ResultStrategy/CirularStrategy.cs?rev=664536&r1=664535&r2=664536&view=diff
==============================================================================
--- ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/MappedStatements/ResultStrategy/CirularStrategy.cs (original)
+++ ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/MappedStatements/ResultStrategy/CirularStrategy.cs Sun Jun  8 11:20:44 2008
@@ -77,7 +77,7 @@
                         for (int index = 0; index < resultMap.Parameters.Count; index++)
                         {
                             ResultProperty resultProperty = resultMap.Parameters[index];
-                            parameters[index] = resultProperty.ArgumentStrategy.GetValue(request, resultProperty, ref reader, null);
+                            parameters[index] = resultProperty.GetValue(request, ref reader, null);
                         }
                     }
 

Modified: ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/MappedStatements/ResultStrategy/DictionaryStrategy.cs
URL: http://svn.apache.org/viewvc/ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/MappedStatements/ResultStrategy/DictionaryStrategy.cs?rev=664536&r1=664535&r2=664536&view=diff
==============================================================================
--- ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/MappedStatements/ResultStrategy/DictionaryStrategy.cs (original)
+++ ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/MappedStatements/ResultStrategy/DictionaryStrategy.cs Sun Jun  8 11:20:44 2008
@@ -51,11 +51,11 @@
         public object Process(RequestScope request, ref IDataReader reader, object resultObject)
         {
 			object outObject = resultObject;
-            AutoResultMap resultMap = request.CurrentResultMap as AutoResultMap;
+            //AutoResultMap resultMap = request.CurrentResultMap as AutoResultMap;
 
 			if (outObject == null) 
 			{
-                outObject = resultMap.CreateInstanceOfResultClass();
+                outObject = request.CurrentResultMap.CreateInstanceOfResult(null);
 			}
 
 			int count = reader.FieldCount;

Modified: ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/MappedStatements/ResultStrategy/ListStrategy.cs
URL: http://svn.apache.org/viewvc/ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/MappedStatements/ResultStrategy/ListStrategy.cs?rev=664536&r1=664535&r2=664536&view=diff
==============================================================================
--- ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/MappedStatements/ResultStrategy/ListStrategy.cs (original)
+++ ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/MappedStatements/ResultStrategy/ListStrategy.cs Sun Jun  8 11:20:44 2008
@@ -51,11 +51,11 @@
         public object Process(RequestScope request, ref IDataReader reader, object resultObject)
         {
 			object outObject = resultObject;
-            AutoResultMap resultMap = request.CurrentResultMap as AutoResultMap;
+            //AutoResultMap resultMap = request.CurrentResultMap as AutoResultMap;
 
 			if (outObject == null) 
 			{
-                outObject = resultMap.CreateInstanceOfResultClass();
+                outObject = request.CurrentResultMap.CreateInstanceOfResult(null);
 			}
 
 			int count = reader.FieldCount;

Modified: ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/MappedStatements/ResultStrategy/ResultMapStrategy.cs
URL: http://svn.apache.org/viewvc/ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/MappedStatements/ResultStrategy/ResultMapStrategy.cs?rev=664536&r1=664535&r2=664536&view=diff
==============================================================================
--- ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/MappedStatements/ResultStrategy/ResultMapStrategy.cs (original)
+++ ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/MappedStatements/ResultStrategy/ResultMapStrategy.cs Sun Jun  8 11:20:44 2008
@@ -60,7 +60,7 @@
                     for (int index = 0; index < resultMap.Parameters.Count; index++)
                     {
                         ResultProperty resultProperty = resultMap.Parameters[index];
-                        parameters[index] = resultProperty.ArgumentStrategy.GetValue(request, resultProperty, ref reader, null);
+                        parameters[index] = resultProperty.GetValue(request, ref reader, null);
                     }
                 }
 

Modified: ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/MappedStatements/ResultStrategy/SimpleTypeStrategy.cs
URL: http://svn.apache.org/viewvc/ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/MappedStatements/ResultStrategy/SimpleTypeStrategy.cs?rev=664536&r1=664535&r2=664536&view=diff
==============================================================================
--- ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/MappedStatements/ResultStrategy/SimpleTypeStrategy.cs (original)
+++ ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/MappedStatements/ResultStrategy/SimpleTypeStrategy.cs Sun Jun  8 11:20:44 2008
@@ -25,7 +25,6 @@
 
 using System.Data;
 using Apache.Ibatis.DataMapper.Model.ResultMapping;
-using Apache.Ibatis.DataMapper.MappedStatements.PropertyStrategy;
 using Apache.Ibatis.DataMapper.Scope;
 using Apache.Ibatis.DataMapper.TypeHandlers;
 
@@ -51,11 +50,11 @@
         public object Process(RequestScope request, ref IDataReader reader, object resultObject)
         {
             object outObject = resultObject;
-            AutoResultMap resultMap = request.CurrentResultMap as AutoResultMap;
+            AutoResultMap resultMap = (AutoResultMap)request.CurrentResultMap;
             
             if (outObject == null) 
             {
-                outObject = resultMap.CreateInstanceOfResultClass();
+                outObject = resultMap.CreateInstanceOfResult(null);
             }
 
             if (!resultMap.IsInitalized)

Modified: ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/MappedStatements/UpdateMappedStatement.cs
URL: http://svn.apache.org/viewvc/ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/MappedStatements/UpdateMappedStatement.cs?rev=664536&r1=664535&r2=664536&view=diff
==============================================================================
--- ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/MappedStatements/UpdateMappedStatement.cs (original)
+++ ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/MappedStatements/UpdateMappedStatement.cs Sun Jun  8 11:20:44 2008
@@ -145,17 +145,6 @@
 		/// </summary>
 		/// <param name="session"></param>
 		/// <param name="parameterObject"></param>
-		/// <returns></returns>
-        public override object ExecuteQueryForObject(ISession session, object parameterObject)
-		{
-			throw new DataMapperException("Update statements cannot be executed as a query for object.");
-		}
-
-		/// <summary>
-		/// 
-		/// </summary>
-		/// <param name="session"></param>
-		/// <param name="parameterObject"></param>
 		/// <param name="resultObject"></param>
 		/// <returns></returns>
         public override object ExecuteQueryForObject(ISession session, object parameterObject, object resultObject)

Added: ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/BaseResultMapEvent.cs
URL: http://svn.apache.org/viewvc/ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/BaseResultMapEvent.cs?rev=664536&view=auto
==============================================================================
--- ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/BaseResultMapEvent.cs (added)
+++ ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/BaseResultMapEvent.cs Sun Jun  8 11:20:44 2008
@@ -0,0 +1,48 @@
+
+#region Apache Notice
+/*****************************************************************************
+ * $Revision: 408099 $
+ * $LastChangedDate$
+ * $LastChangedBy$
+ * 
+ * iBATIS.NET Data Mapper
+ * Copyright (C) 2006/2005 - The Apache Software Foundation
+ *  
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * 
+ ********************************************************************************/
+#endregion
+
+using Apache.Ibatis.DataMapper.Model.ResultMapping;
+
+namespace Apache.Ibatis.DataMapper.Model.Events
+{
+    /// <summary>
+    /// Base class for <see cref="IResultMapEvent"/>
+    /// </summary>
+    public abstract class BaseResultMapEvent : IResultMapEvent
+    {
+        private IResultMap resultMap = null;
+
+        #region IResultMapEvent Members
+
+        public IResultMap ResultMap
+        {
+            get { return resultMap; }
+            set { resultMap = value; }
+        }
+
+        #endregion
+    }
+}

Propchange: ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/BaseResultMapEvent.cs
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/BaseResultMapEvent.cs
------------------------------------------------------------------------------
    svn:keywords = Id LastChangedDate LastChangedBy

Added: ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/BaseSatementEvent.cs
URL: http://svn.apache.org/viewvc/ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/BaseSatementEvent.cs?rev=664536&view=auto
==============================================================================
--- ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/BaseSatementEvent.cs (added)
+++ ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/BaseSatementEvent.cs Sun Jun  8 11:20:44 2008
@@ -0,0 +1,71 @@
+#region Apache Notice
+/*****************************************************************************
+ * $Revision: 476843 $
+ * $LastChangedDate: 2008-05-31 15:52:05 +0200 (sam., 31 mai 2008) $
+ * $LastChangedBy: gbayon $
+ * 
+ * iBATIS.NET Data Mapper
+ * Copyright (C) 2008/2005 - The Apache Software Foundation
+ *  
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * 
+ ********************************************************************************/
+#endregion
+
+using Apache.Ibatis.DataMapper.MappedStatements;
+
+namespace Apache.Ibatis.DataMapper.Model.Events
+{
+    /// <summary>
+    /// Base class for <see cref="ISatementEvent"/>
+    /// </summary>
+    public abstract class BaseSatementEvent : ISatementEvent
+    {
+        private IMappedStatement mappedStatement = null;
+        private object parameterObject = null;
+
+
+        #region ISatementEvent Members
+
+        /// <summary>
+        /// Gets or sets the parameter object.
+        /// </summary>
+        /// <value>The parameter object.</value>
+        public object ParameterObject
+        {
+            get { return parameterObject; }
+            set { parameterObject = value; }
+        }
+
+        /// <summary>
+        /// Gets the mapped statement.
+        /// </summary>
+        /// <value>The mapped statement.</value>
+        public IMappedStatement MappedStatement
+        {
+            get { return mappedStatement; }
+            set { mappedStatement = value; }
+        }
+
+
+        /// <summary>
+        /// Gets the event type.
+        /// </summary>
+        /// <value>The type.</value>
+        public abstract StatementEventType Type { get; }
+
+
+        #endregion
+    }
+}

Added: ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/IResultMapEvent.cs
URL: http://svn.apache.org/viewvc/ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/IResultMapEvent.cs?rev=664536&view=auto
==============================================================================
--- ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/IResultMapEvent.cs (added)
+++ ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/IResultMapEvent.cs Sun Jun  8 11:20:44 2008
@@ -0,0 +1,43 @@
+
+#region Apache Notice
+/*****************************************************************************
+ * $Revision: 408099 $
+ * $LastChangedDate$
+ * $LastChangedBy$
+ * 
+ * iBATIS.NET Data Mapper
+ * Copyright (C) 2006/2005 - The Apache Software Foundation
+ *  
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * 
+ ********************************************************************************/
+#endregion
+
+using Apache.Ibatis.DataMapper.Model.ResultMapping;
+
+namespace Apache.Ibatis.DataMapper.Model.Events
+{
+    /// <summary>
+    /// Defines the contract for events generated during ResultMap mapping.
+    /// </summary>
+    public interface IResultMapEvent
+    {
+
+        /// <summary>
+        /// Gets or sets the result map.
+        /// </summary>
+        /// <value>The result map.</value>
+        IResultMap ResultMap { get; set;}
+    }
+}

Propchange: ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/IResultMapEvent.cs
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/IResultMapEvent.cs
------------------------------------------------------------------------------
    svn:keywords = Id LastChangedDate LastChangedBy

Added: ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/IResultPropertyEvent.cs
URL: http://svn.apache.org/viewvc/ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/IResultPropertyEvent.cs?rev=664536&view=auto
==============================================================================
--- ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/IResultPropertyEvent.cs (added)
+++ ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/IResultPropertyEvent.cs Sun Jun  8 11:20:44 2008
@@ -0,0 +1,43 @@
+
+#region Apache Notice
+/*****************************************************************************
+ * $Revision: 408099 $
+ * $LastChangedDate$
+ * $LastChangedBy$
+ * 
+ * iBATIS.NET Data Mapper
+ * Copyright (C) 2006/2005 - The Apache Software Foundation
+ *  
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * 
+ ********************************************************************************/
+#endregion
+
+using Apache.Ibatis.DataMapper.Model.ResultMapping;
+
+namespace Apache.Ibatis.DataMapper.Model.Events
+{
+    /// <summary>
+    /// Defines the contract for events generated during <see cref="ResultProperty"/> process.
+    /// </summary>
+    interface IResultPropertyEvent
+    {
+        /// <summary>
+        /// Gets or sets the result property.
+        /// </summary>
+        /// <value>The result property.</value>
+        ResultProperty ResultProperty { get; set;}
+
+    }
+}

Propchange: ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/IResultPropertyEvent.cs
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/IResultPropertyEvent.cs
------------------------------------------------------------------------------
    svn:keywords = Id LastChangedDate LastChangedBy

Added: ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/ISatementEvent.cs
URL: http://svn.apache.org/viewvc/ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/ISatementEvent.cs?rev=664536&view=auto
==============================================================================
--- ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/ISatementEvent.cs (added)
+++ ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/ISatementEvent.cs Sun Jun  8 11:20:44 2008
@@ -0,0 +1,55 @@
+
+#region Apache Notice
+/*****************************************************************************
+ * $Revision: 408099 $
+ * $LastChangedDate: 2008-06-07 10:14:33 +0200 (sam., 07 juin 2008) $
+ * $LastChangedBy: gbayon $
+ * 
+ * iBATIS.NET Data Mapper
+ * Copyright (C) 2006/2005 - The Apache Software Foundation
+ *  
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * 
+ ********************************************************************************/
+#endregion
+
+using Apache.Ibatis.DataMapper.MappedStatements;
+
+namespace Apache.Ibatis.DataMapper.Model.Events
+{
+    /// <summary>
+    /// Defines the contract for events generated during statement execution.
+    /// </summary>
+    public interface ISatementEvent
+    {
+        /// <summary>
+        /// Gets the mapped statement.
+        /// </summary>
+        /// <value>The mapped statement.</value>
+        IMappedStatement MappedStatement { get; set;}
+
+        /// <summary>
+        /// Gets the event type.
+        /// </summary>
+        /// <value>The type.</value>
+        StatementEventType Type { get; }
+
+        /// <summary>
+        /// Gets or sets the parameter object.
+        /// </summary>
+        /// <value>The parameter object.</value>
+        object ParameterObject { get; set;}
+
+    }
+}

Added: ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/Listeners/IResultMapEventListener.cs
URL: http://svn.apache.org/viewvc/ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/Listeners/IResultMapEventListener.cs?rev=664536&view=auto
==============================================================================
--- ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/Listeners/IResultMapEventListener.cs (added)
+++ ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/Listeners/IResultMapEventListener.cs Sun Jun  8 11:20:44 2008
@@ -0,0 +1,41 @@
+
+#region Apache Notice
+/*****************************************************************************
+ * $Revision: 408099 $
+ * $LastChangedDate$
+ * $LastChangedBy$
+ * 
+ * iBATIS.NET Data Mapper
+ * Copyright (C) 2006/2005 - The Apache Software Foundation
+ *  
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * 
+ ********************************************************************************/
+#endregion
+
+namespace Apache.Ibatis.DataMapper.Model.Events.Listeners
+{
+    /// <summary>
+    /// Handles event of type <see cref="IResultMapEvent"/>
+    /// </summary>
+    public interface IResultMapEventListener<IResultMapEvent>
+    {
+        /// <summary>
+        /// Calls on the specified event.
+        /// </summary>
+        /// <param name="evnt">The event.</param>
+        /// <returns></returns>
+        object OnEvent(IResultMapEvent evnt);
+    }
+}

Propchange: ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/Listeners/IResultMapEventListener.cs
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/Listeners/IResultMapEventListener.cs
------------------------------------------------------------------------------
    svn:keywords = Id LastChangedDate LastChangedBy

Added: ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/Listeners/IResultPropertyEventListener.cs
URL: http://svn.apache.org/viewvc/ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/Listeners/IResultPropertyEventListener.cs?rev=664536&view=auto
==============================================================================
--- ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/Listeners/IResultPropertyEventListener.cs (added)
+++ ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/Listeners/IResultPropertyEventListener.cs Sun Jun  8 11:20:44 2008
@@ -0,0 +1,41 @@
+
+#region Apache Notice
+/*****************************************************************************
+ * $Revision: 408099 $
+ * $LastChangedDate$
+ * $LastChangedBy$
+ * 
+ * iBATIS.NET Data Mapper
+ * Copyright (C) 2006/2005 - The Apache Software Foundation
+ *  
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * 
+ ********************************************************************************/
+#endregion
+
+namespace Apache.Ibatis.DataMapper.Model.Events.Listeners
+{
+    /// <summary>
+    /// Handles event of type <see cref="IResultPropertyEvent"/>.
+    /// </summary>
+    public interface IResultPropertyEventListener<IResultPropertyEvent>
+    {
+        /// <summary>
+        /// Calls on the specified event.
+        /// </summary>
+        /// <param name="evnt">The event.</param>
+        /// <returns></returns>
+        object OnEvent(IResultPropertyEvent evnt);
+    }
+}

Propchange: ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/Listeners/IResultPropertyEventListener.cs
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/Listeners/IResultPropertyEventListener.cs
------------------------------------------------------------------------------
    svn:keywords = Id LastChangedDate LastChangedBy

Added: ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/Listeners/IStatementEventListener.cs
URL: http://svn.apache.org/viewvc/ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/Listeners/IStatementEventListener.cs?rev=664536&view=auto
==============================================================================
--- ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/Listeners/IStatementEventListener.cs (added)
+++ ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/Listeners/IStatementEventListener.cs Sun Jun  8 11:20:44 2008
@@ -0,0 +1,44 @@
+
+#region Apache Notice
+/*****************************************************************************
+ * $Revision: 408099 $
+ * $LastChangedDate: 2008-06-07 10:14:33 +0200 (sam., 07 juin 2008) $
+ * $LastChangedBy: gbayon $
+ * 
+ * iBATIS.NET Data Mapper
+ * Copyright (C) 2006/2005 - The Apache Software Foundation
+ *  
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * 
+ ********************************************************************************/
+#endregion
+
+namespace Apache.Ibatis.DataMapper.Model.Events.Listeners
+{
+    /// <summary>
+    /// Handles event of type <see cref="ISatementEvent"/>.
+    /// </summary>
+    /// <example>
+    ///     mappedSatement.PreInsertEventListeners =  new PreInsertEventListener[] {new MyPreInsertEventListener() };
+    /// </example>
+    public interface IStatementEventListener<ISatementEvent>
+    {
+        /// <summary>
+        /// Calls on the specified event.
+        /// </summary>
+        /// <param name="evnt">The event.</param>
+        /// <returns>Returns is used as the parameter object</returns>
+        object OnEvent(ISatementEvent evnt);
+    }
+}

Added: ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/Listeners/PostCreateEventListener.cs
URL: http://svn.apache.org/viewvc/ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/Listeners/PostCreateEventListener.cs?rev=664536&view=auto
==============================================================================
--- ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/Listeners/PostCreateEventListener.cs (added)
+++ ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/Listeners/PostCreateEventListener.cs Sun Jun  8 11:20:44 2008
@@ -0,0 +1,46 @@
+#region Apache Notice
+/*****************************************************************************
+ * $Revision: 576082 $
+ * $LastChangedDate$
+ * $LastChangedBy$
+ * 
+ * iBATIS.NET Data Mapper
+ * Copyright (C) 2006/2005 - The Apache Software Foundation
+ *  
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * 
+ ********************************************************************************/
+#endregion
+
+using Apache.Ibatis.DataMapper.Model.ResultMapping;
+
+namespace Apache.Ibatis.DataMapper.Model.Events.Listeners
+{
+    /// <summary>
+    /// Handles event of type <see cref="PostCreateEvent"/>.
+    /// </summary>
+    public abstract class PostCreateEventListener : IResultMapEventListener<PostCreateEvent>
+    {
+        #region IResultMapEventListener<PostCreateEvent> Members
+
+        /// <summary>
+        /// Calls after creating an instance of the <see cref="IResultMap"/> object.
+        /// </summary>
+        /// <param name="evnt">The event.</param>
+        /// <returns>Returns is used as the instance object</returns>
+        public abstract object OnEvent(PostCreateEvent evnt);
+
+        #endregion
+    }
+}

Propchange: ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/Listeners/PostCreateEventListener.cs
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/Listeners/PostCreateEventListener.cs
------------------------------------------------------------------------------
    svn:keywords = Id LastChangedDate LastChangedBy

Added: ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/Listeners/PostInsertEventListener.cs
URL: http://svn.apache.org/viewvc/ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/Listeners/PostInsertEventListener.cs?rev=664536&view=auto
==============================================================================
--- ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/Listeners/PostInsertEventListener.cs (added)
+++ ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/Listeners/PostInsertEventListener.cs Sun Jun  8 11:20:44 2008
@@ -0,0 +1,45 @@
+#region Apache Notice
+/*****************************************************************************
+ * $Revision: 476843 $
+ * $LastChangedDate$
+ * $LastChangedBy$
+ * 
+ * iBATIS.NET Data Mapper
+ * Copyright (C) 2008/2005 - The Apache Software Foundation
+ *  
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * 
+ ********************************************************************************/
+#endregion
+
+namespace Apache.Ibatis.DataMapper.Model.Events.Listeners
+{
+    /// <summary>
+    /// Handles event of type <see cref="PostInsertEvent"/>.
+    /// </summary>
+    public abstract class PostInsertEventListener : IStatementEventListener<PostInsertEvent>
+    {
+        #region IStatementEventListener<PostInsertEvent> Members
+
+        /// <summary>
+        /// Calls on the specified event.
+        /// </summary>
+        /// <param name="evnt">The event.</param>
+        /// <returns>Returns is used as the result object</returns>
+        public abstract object OnEvent(PostInsertEvent evnt);
+
+
+        #endregion
+    }
+}

Propchange: ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/Listeners/PostInsertEventListener.cs
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/Listeners/PostInsertEventListener.cs
------------------------------------------------------------------------------
    svn:keywords = Id LastChangedDate LastChangedBy

Added: ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/Listeners/PostPropertyEventListener.cs
URL: http://svn.apache.org/viewvc/ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/Listeners/PostPropertyEventListener.cs?rev=664536&view=auto
==============================================================================
--- ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/Listeners/PostPropertyEventListener.cs (added)
+++ ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/Listeners/PostPropertyEventListener.cs Sun Jun  8 11:20:44 2008
@@ -0,0 +1,47 @@
+#region Apache Notice
+/*****************************************************************************
+ * $Revision: 576082 $
+ * $LastChangedDate$
+ * $LastChangedBy$
+ * 
+ * iBATIS.NET Data Mapper
+ * Copyright (C) 2006/2005 - The Apache Software Foundation
+ *  
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * 
+ ********************************************************************************/
+#endregion
+
+using Apache.Ibatis.DataMapper.Model.ResultMapping;
+
+namespace Apache.Ibatis.DataMapper.Model.Events.Listeners
+{
+    /// <summary>
+    /// Handles event of type <see cref="PostPropertyEvent"/>.
+    /// </summary>
+    public abstract class PostPropertyEventListener : IResultPropertyEventListener<PostPropertyEvent>
+    {
+
+        #region IResultMapEventListener<PostPropertyEvent> Members
+
+        /// <summary>
+        /// Calls after creating an instance of the <see cref="IResultMap"/> object.
+        /// </summary>
+        /// <param name="evnt">The event.</param>
+        /// <returns>Returns is not used</returns>
+        public abstract object OnEvent(PostPropertyEvent evnt);
+
+        #endregion
+    }
+}

Propchange: ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/Listeners/PostPropertyEventListener.cs
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/Listeners/PostPropertyEventListener.cs
------------------------------------------------------------------------------
    svn:keywords = Id LastChangedDate LastChangedBy

Added: ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/Listeners/PostSelectEventListener.cs
URL: http://svn.apache.org/viewvc/ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/Listeners/PostSelectEventListener.cs?rev=664536&view=auto
==============================================================================
--- ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/Listeners/PostSelectEventListener.cs (added)
+++ ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/Listeners/PostSelectEventListener.cs Sun Jun  8 11:20:44 2008
@@ -0,0 +1,44 @@
+#region Apache Notice
+/*****************************************************************************
+ * $Revision: 476843 $
+ * $LastChangedDate$
+ * $LastChangedBy$
+ * 
+ * iBATIS.NET Data Mapper
+ * Copyright (C) 2008/2005 - The Apache Software Foundation
+ *  
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * 
+ ********************************************************************************/
+#endregion
+
+namespace Apache.Ibatis.DataMapper.Model.Events.Listeners
+{
+    /// <summary>
+    /// Handles event of type <see cref="PostSelectEvent"/>.
+    /// </summary>
+    public abstract class PostSelectEventListener : IStatementEventListener<PostSelectEvent>
+    {
+        #region IStatementEventListener Members
+
+        /// <summary>
+        /// Calls on the specified event.
+        /// </summary>
+        /// <param name="evnt">The event.</param>
+        /// <returns>Returns is used as the result object</returns>
+        public abstract object OnEvent(PostSelectEvent evnt);
+
+        #endregion
+    }
+}

Propchange: ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/Listeners/PostSelectEventListener.cs
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/Listeners/PostSelectEventListener.cs
------------------------------------------------------------------------------
    svn:keywords = Id LastChangedDate LastChangedBy

Added: ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/Listeners/PostUpdateOrDeleteEventListener.cs
URL: http://svn.apache.org/viewvc/ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/Listeners/PostUpdateOrDeleteEventListener.cs?rev=664536&view=auto
==============================================================================
--- ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/Listeners/PostUpdateOrDeleteEventListener.cs (added)
+++ ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/Listeners/PostUpdateOrDeleteEventListener.cs Sun Jun  8 11:20:44 2008
@@ -0,0 +1,44 @@
+#region Apache Notice
+/*****************************************************************************
+ * $Revision: 476843 $
+ * $LastChangedDate$
+ * $LastChangedBy$
+ * 
+ * iBATIS.NET Data Mapper
+ * Copyright (C) 2008/2005 - The Apache Software Foundation
+ *  
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * 
+ ********************************************************************************/
+#endregion
+
+namespace Apache.Ibatis.DataMapper.Model.Events.Listeners
+{
+    /// <summary>
+    /// Handles event of type <see cref="PostUpdateOrDeleteEvent"/>.
+    /// </summary>
+    public abstract class PostUpdateOrDeleteEventListener : IStatementEventListener<PostUpdateOrDeleteEvent>
+    {
+        #region IStatementEventListener<PostUpdateOrDeleteEvent> Members
+
+        /// <summary>
+        /// Calls on the specified event.
+        /// </summary>
+        /// <param name="evnt">The event.</param>
+        /// <returns>Returns is used as the result object</returns>
+        public abstract object OnEvent(PostUpdateOrDeleteEvent evnt);
+
+        #endregion
+    }
+}

Propchange: ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/Listeners/PostUpdateOrDeleteEventListener.cs
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/Listeners/PostUpdateOrDeleteEventListener.cs
------------------------------------------------------------------------------
    svn:keywords = Id LastChangedDate LastChangedBy

Added: ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/Listeners/PreCreateEventListener.cs
URL: http://svn.apache.org/viewvc/ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/Listeners/PreCreateEventListener.cs?rev=664536&view=auto
==============================================================================
--- ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/Listeners/PreCreateEventListener.cs (added)
+++ ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/Listeners/PreCreateEventListener.cs Sun Jun  8 11:20:44 2008
@@ -0,0 +1,46 @@
+#region Apache Notice
+/*****************************************************************************
+ * $Revision: 576082 $
+ * $LastChangedDate$
+ * $LastChangedBy$
+ * 
+ * iBATIS.NET Data Mapper
+ * Copyright (C) 2006/2005 - The Apache Software Foundation
+ *  
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * 
+ ********************************************************************************/
+#endregion
+
+using Apache.Ibatis.DataMapper.Model.ResultMapping;
+
+namespace Apache.Ibatis.DataMapper.Model.Events.Listeners
+{
+    /// <summary>
+    /// Handles event of type <see cref="PreCreateEvent"/>.
+    /// </summary>
+    public abstract class PreCreateEventListener : IResultMapEventListener<PreCreateEvent>
+    {
+        #region IResultMapEventListener<PreCreateEvent> Members
+
+        /// <summary>
+        /// Calls before creating an instance of the <see cref="IResultMap"/> object.
+        /// </summary>
+        /// <param name="evnt">The event.</param>
+        /// <returns>Returns is used as constructor arguments for the instance being created</returns>
+        public abstract object OnEvent(PreCreateEvent evnt);
+
+        #endregion
+    }
+}

Propchange: ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/Listeners/PreCreateEventListener.cs
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/Listeners/PreCreateEventListener.cs
------------------------------------------------------------------------------
    svn:keywords = Id LastChangedDate LastChangedBy

Added: ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/Listeners/PreInsertEventListener.cs
URL: http://svn.apache.org/viewvc/ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/Listeners/PreInsertEventListener.cs?rev=664536&view=auto
==============================================================================
--- ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/Listeners/PreInsertEventListener.cs (added)
+++ ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/Listeners/PreInsertEventListener.cs Sun Jun  8 11:20:44 2008
@@ -0,0 +1,45 @@
+#region Apache Notice
+/*****************************************************************************
+ * $Revision: 476843 $
+ * $LastChangedDate: 2008-05-31 15:52:05 +0200 (sam., 31 mai 2008) $
+ * $LastChangedBy: gbayon $
+ * 
+ * iBATIS.NET Data Mapper
+ * Copyright (C) 2008/2005 - The Apache Software Foundation
+ *  
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * 
+ ********************************************************************************/
+#endregion
+
+namespace Apache.Ibatis.DataMapper.Model.Events.Listeners
+{
+    /// <summary>
+    /// Handles event of type <see cref="PreInsertEvent"/>.
+    /// </summary>
+    public abstract class PreInsertEventListener : IStatementEventListener<PreInsertEvent>
+    {
+        #region IStatementEventListener<PreInsertEvent> Members
+
+        /// <summary>
+        /// Calls on the specified event.
+        /// </summary>
+        /// <param name="evnt">The event.</param>
+        /// <returns>Returns is used as the parameter object</returns>
+        public abstract object OnEvent(PreInsertEvent evnt);
+
+
+        #endregion
+    }
+}

Added: ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/Listeners/PrePropertyEventListener.cs
URL: http://svn.apache.org/viewvc/ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/Listeners/PrePropertyEventListener.cs?rev=664536&view=auto
==============================================================================
--- ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/Listeners/PrePropertyEventListener.cs (added)
+++ ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/Listeners/PrePropertyEventListener.cs Sun Jun  8 11:20:44 2008
@@ -0,0 +1,46 @@
+#region Apache Notice
+/*****************************************************************************
+ * $Revision: 576082 $
+ * $LastChangedDate$
+ * $LastChangedBy$
+ * 
+ * iBATIS.NET Data Mapper
+ * Copyright (C) 2006/2005 - The Apache Software Foundation
+ *  
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * 
+ ********************************************************************************/
+#endregion
+
+using Apache.Ibatis.DataMapper.Model.ResultMapping;
+
+namespace Apache.Ibatis.DataMapper.Model.Events.Listeners
+{
+    /// <summary>
+    /// Handles event of type <see cref="PrePropertyEvent"/>.
+    /// </summary>
+    public abstract class PrePropertyEventListener : IResultPropertyEventListener<PrePropertyEvent>
+    {
+        #region IResultMapEventListener<PrePropertyEvent> Members
+
+        /// <summary>
+        /// Calls before setting the property value in an instance of a <see cref="IResultMap"/> object.
+        /// </summary>
+        /// <param name="evnt">The event.</param>
+        /// <returns>Returns is used as databse value, to be set on the property</returns>
+        public abstract object OnEvent(PrePropertyEvent evnt);
+
+        #endregion
+    }
+}

Propchange: ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/Listeners/PrePropertyEventListener.cs
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/Listeners/PrePropertyEventListener.cs
------------------------------------------------------------------------------
    svn:keywords = Id LastChangedDate LastChangedBy

Added: ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/Listeners/PreSelectEventListener.cs
URL: http://svn.apache.org/viewvc/ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/Listeners/PreSelectEventListener.cs?rev=664536&view=auto
==============================================================================
--- ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/Listeners/PreSelectEventListener.cs (added)
+++ ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/Listeners/PreSelectEventListener.cs Sun Jun  8 11:20:44 2008
@@ -0,0 +1,44 @@
+#region Apache Notice
+/*****************************************************************************
+ * $Revision: 476843 $
+ * $LastChangedDate$
+ * $LastChangedBy$
+ * 
+ * iBATIS.NET Data Mapper
+ * Copyright (C) 2008/2005 - The Apache Software Foundation
+ *  
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * 
+ ********************************************************************************/
+#endregion
+
+namespace Apache.Ibatis.DataMapper.Model.Events.Listeners
+{
+    /// <summary>
+    /// Handles event of type <see cref="PreSelectEvent"/>.
+    /// </summary>
+    public abstract class PreSelectEventListener : IStatementEventListener<PreSelectEvent>
+    {
+        #region IStatementEventListener Members
+
+        /// <summary>
+        /// Calls on the specified event.
+        /// </summary>
+        /// <param name="evnt">The event.</param>
+        /// <returns>Returns is used as the parameter object</returns>
+        public abstract object OnEvent(PreSelectEvent evnt);
+
+        #endregion
+    }
+}

Propchange: ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/Listeners/PreSelectEventListener.cs
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/Listeners/PreSelectEventListener.cs
------------------------------------------------------------------------------
    svn:keywords = Id LastChangedDate LastChangedBy

Added: ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/Listeners/PreUpdateOrDeleteEventListener.cs
URL: http://svn.apache.org/viewvc/ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/Listeners/PreUpdateOrDeleteEventListener.cs?rev=664536&view=auto
==============================================================================
--- ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/Listeners/PreUpdateOrDeleteEventListener.cs (added)
+++ ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/Listeners/PreUpdateOrDeleteEventListener.cs Sun Jun  8 11:20:44 2008
@@ -0,0 +1,44 @@
+#region Apache Notice
+/*****************************************************************************
+ * $Revision: 476843 $
+ * $LastChangedDate$
+ * $LastChangedBy$
+ * 
+ * iBATIS.NET Data Mapper
+ * Copyright (C) 2008/2005 - The Apache Software Foundation
+ *  
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * 
+ ********************************************************************************/
+#endregion
+
+namespace Apache.Ibatis.DataMapper.Model.Events.Listeners
+{
+    /// <summary>
+    /// Handles event of type <see cref="PreUpdateOrDeleteEvent"/>.
+    /// </summary>
+    public abstract class PreUpdateOrDeleteEventListener : IStatementEventListener<PreUpdateOrDeleteEvent>
+    {
+        #region IStatementEventListener<PreUpdateOrDeleteEvent> Members
+
+        /// <summary>
+        /// Calls on the specified event.
+        /// </summary>
+        /// <param name="evnt">The event.</param>
+        /// <returns>Returns is used as the parameter object</returns>
+        public abstract object OnEvent(PreUpdateOrDeleteEvent evnt);
+
+        #endregion
+    }
+}

Propchange: ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/Listeners/PreUpdateOrDeleteEventListener.cs
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/Listeners/PreUpdateOrDeleteEventListener.cs
------------------------------------------------------------------------------
    svn:keywords = Id LastChangedDate LastChangedBy

Added: ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/PostCreateEvent.cs
URL: http://svn.apache.org/viewvc/ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/PostCreateEvent.cs?rev=664536&view=auto
==============================================================================
--- ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/PostCreateEvent.cs (added)
+++ ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/PostCreateEvent.cs Sun Jun  8 11:20:44 2008
@@ -0,0 +1,48 @@
+
+#region Apache Notice
+/*****************************************************************************
+ * $Revision: 408099 $
+ * $LastChangedDate$
+ * $LastChangedBy$
+ * 
+ * iBATIS.NET Data Mapper
+ * Copyright (C) 2006/2005 - The Apache Software Foundation
+ *  
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * 
+ ********************************************************************************/
+#endregion
+
+using Apache.Ibatis.DataMapper.Model.ResultMapping;
+
+namespace Apache.Ibatis.DataMapper.Model.Events
+{
+    /// <summary>
+    /// Lauchs after creating an instance of the <see cref="IResultMap"/> object.
+    /// </summary>
+    public sealed class PostCreateEvent : BaseResultMapEvent
+    {
+        private object instance = null;
+
+        /// <summary>
+        /// Gets or sets the newly created instance.
+        /// </summary>
+        /// <value>The instance.</value>
+        public object Instance
+        {
+            get { return instance; }
+            set { instance = value; }
+        }
+    }
+}

Propchange: ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/PostCreateEvent.cs
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/PostCreateEvent.cs
------------------------------------------------------------------------------
    svn:keywords = Id LastChangedDate LastChangedBy

Added: ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/PostInsertEvent.cs
URL: http://svn.apache.org/viewvc/ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/PostInsertEvent.cs?rev=664536&view=auto
==============================================================================
--- ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/PostInsertEvent.cs (added)
+++ ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/PostInsertEvent.cs Sun Jun  8 11:20:44 2008
@@ -0,0 +1,42 @@
+#region Apache Notice
+/*****************************************************************************
+ * $Revision: 476843 $
+ * $LastChangedDate$
+ * $LastChangedBy$
+ * 
+ * iBATIS.NET Data Mapper
+ * Copyright (C) 2008/2005 - The Apache Software Foundation
+ *  
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * 
+ ********************************************************************************/
+#endregion
+
+namespace Apache.Ibatis.DataMapper.Model.Events
+{
+    /// <summary>
+    /// Lauchs after excuting an insert statement
+    /// </summary>
+    public sealed class PostInsertEvent : PostStatementEvent
+    {
+        /// <summary>
+        /// Gets the event type.
+        /// </summary>
+        /// <value>The type.</value>
+        public override StatementEventType Type
+        {
+            get { return StatementEventType.PostInsert; }
+        }
+    }
+}
\ No newline at end of file

Propchange: ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/PostInsertEvent.cs
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/PostInsertEvent.cs
------------------------------------------------------------------------------
    svn:keywords = Id LastChangedDate LastChangedBy

Added: ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/PostPropertyEvent.cs
URL: http://svn.apache.org/viewvc/ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/PostPropertyEvent.cs?rev=664536&view=auto
==============================================================================
--- ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/PostPropertyEvent.cs (added)
+++ ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/PostPropertyEvent.cs Sun Jun  8 11:20:44 2008
@@ -0,0 +1,59 @@
+
+#region Apache Notice
+/*****************************************************************************
+ * $Revision: 408099 $
+ * $LastChangedDate$
+ * $LastChangedBy$
+ * 
+ * iBATIS.NET Data Mapper
+ * Copyright (C) 2006/2005 - The Apache Software Foundation
+ *  
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * 
+ ********************************************************************************/
+#endregion
+
+using Apache.Ibatis.DataMapper.Model.ResultMapping;
+
+namespace Apache.Ibatis.DataMapper.Model.Events
+{
+    /// <summary>
+    /// Lauchs after setting the property value in an instance of a <see cref="IResultMap"/> object.
+    /// </summary>
+    public sealed class PostPropertyEvent : IResultPropertyEvent
+    {
+        private ResultProperty property = null;
+        private object target = null;
+
+        /// <summary>
+        /// Gets or sets the result property.
+        /// </summary>
+        /// <value>The result property.</value>
+        public ResultProperty ResultProperty
+        {
+            get { return property; }
+            set { property = value; }
+        }
+
+        /// <summary>
+        /// Gets or sets the target.
+        /// </summary>
+        /// <value>The target.</value>
+        public object Target
+        {
+            get { return target; }
+            set { target = value; }
+        }
+    }
+}

Propchange: ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/PostPropertyEvent.cs
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/PostPropertyEvent.cs
------------------------------------------------------------------------------
    svn:keywords = Id LastChangedDate LastChangedBy

Added: ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/PostSelectEvent.cs
URL: http://svn.apache.org/viewvc/ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/PostSelectEvent.cs?rev=664536&view=auto
==============================================================================
--- ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/PostSelectEvent.cs (added)
+++ ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/PostSelectEvent.cs Sun Jun  8 11:20:44 2008
@@ -0,0 +1,44 @@
+#region Apache Notice
+/*****************************************************************************
+ * $Revision: 476843 $
+ * $LastChangedDate$
+ * $LastChangedBy$
+ * 
+ * iBATIS.NET Data Mapper
+ * Copyright (C) 2008/2005 - The Apache Software Foundation
+ *  
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * 
+ ********************************************************************************/
+#endregion
+
+namespace Apache.Ibatis.DataMapper.Model.Events
+{
+    /// <summary>
+    /// Lauchs before excuting a select statement
+    /// </summary>
+    public sealed class PostSelectEvent : PostStatementEvent
+    {
+        /// <summary>
+        /// Gets the event type.
+        /// </summary>
+        /// <value>The type.</value>
+        public override StatementEventType Type
+        {
+            get { return StatementEventType.PostSelect; }
+        }
+
+    }
+}
+

Propchange: ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/PostSelectEvent.cs
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/PostSelectEvent.cs
------------------------------------------------------------------------------
    svn:keywords = Id LastChangedDate LastChangedBy

Added: ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/PostStatementEvent.cs
URL: http://svn.apache.org/viewvc/ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/PostStatementEvent.cs?rev=664536&view=auto
==============================================================================
--- ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/PostStatementEvent.cs (added)
+++ ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/PostStatementEvent.cs Sun Jun  8 11:20:44 2008
@@ -0,0 +1,45 @@
+#region Apache Notice
+/*****************************************************************************
+ * $Revision: 476843 $
+ * $LastChangedDate$
+ * $LastChangedBy$
+ * 
+ * iBATIS.NET Data Mapper
+ * Copyright (C) 2008/2005 - The Apache Software Foundation
+ *  
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * 
+ ********************************************************************************/
+#endregion
+
+namespace Apache.Ibatis.DataMapper.Model.Events
+{
+    /// <summary>
+    /// Base class for post <see cref="ISatementEvent"/>
+    /// </summary>
+    public abstract class PostStatementEvent : BaseSatementEvent
+    {
+        private object resultObject = null;
+
+        /// <summary>
+        /// Gets or sets the result object.
+        /// </summary>
+        /// <value>The result object.</value>
+        public object ResultObject
+        {
+            get { return resultObject; }
+            set { resultObject = value; }
+        }
+    }
+}

Propchange: ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/PostStatementEvent.cs
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/PostStatementEvent.cs
------------------------------------------------------------------------------
    svn:keywords = Id LastChangedDate LastChangedBy

Added: ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/PostUpdateOrDeleteEvent.cs
URL: http://svn.apache.org/viewvc/ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/PostUpdateOrDeleteEvent.cs?rev=664536&view=auto
==============================================================================
--- ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/PostUpdateOrDeleteEvent.cs (added)
+++ ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/PostUpdateOrDeleteEvent.cs Sun Jun  8 11:20:44 2008
@@ -0,0 +1,43 @@
+#region Apache Notice
+/*****************************************************************************
+ * $Revision: 476843 $
+ * $LastChangedDate: 2008-05-31 15:52:05 +0200 (sam., 31 mai 2008) $
+ * $LastChangedBy: gbayon $
+ * 
+ * iBATIS.NET Data Mapper
+ * Copyright (C) 2008/2005 - The Apache Software Foundation
+ *  
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * 
+ ********************************************************************************/
+#endregion
+
+namespace Apache.Ibatis.DataMapper.Model.Events
+{
+    /// <summary>
+    /// Lauchs after excuting an update/delete statement
+    /// </summary>
+    public sealed class PostUpdateOrDeleteEvent : PostStatementEvent
+    {
+        /// <summary>
+        /// Gets the event type.
+        /// </summary>
+        /// <value>The type.</value>
+        public override StatementEventType Type
+        {
+            get { return StatementEventType.PostUpdateOrDelete; }
+        }
+
+    }
+}

Added: ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/PreCreateEvent.cs
URL: http://svn.apache.org/viewvc/ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/PreCreateEvent.cs?rev=664536&view=auto
==============================================================================
--- ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/PreCreateEvent.cs (added)
+++ ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/PreCreateEvent.cs Sun Jun  8 11:20:44 2008
@@ -0,0 +1,48 @@
+
+#region Apache Notice
+/*****************************************************************************
+ * $Revision: 408099 $
+ * $LastChangedDate$
+ * $LastChangedBy$
+ * 
+ * iBATIS.NET Data Mapper
+ * Copyright (C) 2006/2005 - The Apache Software Foundation
+ *  
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * 
+ ********************************************************************************/
+#endregion
+
+using Apache.Ibatis.DataMapper.Model.ResultMapping;
+
+namespace Apache.Ibatis.DataMapper.Model.Events
+{
+    /// <summary>
+    /// Lauchs before creating an instance of the <see cref="IResultMap"/> object.
+    /// </summary>
+    public sealed class PreCreateEvent : BaseResultMapEvent
+    {
+        private object[] parameters = null;
+
+        /// <summary>
+        /// Gets or sets the parameters used for create the instance 
+        /// </summary>
+        /// <value>The parameters.</value>
+        public object[] Parameters
+        {
+            get { return parameters; }
+            set { parameters = value; }
+        }
+    }
+}

Propchange: ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/PreCreateEvent.cs
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/PreCreateEvent.cs
------------------------------------------------------------------------------
    svn:keywords = Id LastChangedDate LastChangedBy

Added: ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/PreInsertEvent.cs
URL: http://svn.apache.org/viewvc/ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/PreInsertEvent.cs?rev=664536&view=auto
==============================================================================
--- ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/PreInsertEvent.cs (added)
+++ ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/PreInsertEvent.cs Sun Jun  8 11:20:44 2008
@@ -0,0 +1,42 @@
+#region Apache Notice
+/*****************************************************************************
+ * $Revision: 476843 $
+ * $LastChangedDate$
+ * $LastChangedBy$
+ * 
+ * iBATIS.NET Data Mapper
+ * Copyright (C) 2008/2005 - The Apache Software Foundation
+ *  
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * 
+ ********************************************************************************/
+#endregion
+
+namespace Apache.Ibatis.DataMapper.Model.Events
+{
+    /// <summary>
+    /// Lauchs before excuting an insert statement
+    /// </summary>
+    public sealed class PreInsertEvent : PreStatementEvent
+    {
+        /// <summary>
+        /// Gets the event type.
+        /// </summary>
+        /// <value>The type.</value>
+        public override StatementEventType Type
+        {
+            get { return StatementEventType.PreInsert; }
+        }
+    }
+}

Propchange: ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/PreInsertEvent.cs
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/PreInsertEvent.cs
------------------------------------------------------------------------------
    svn:keywords = Id LastChangedDate LastChangedBy

Added: ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/PrePropertyEvent.cs
URL: http://svn.apache.org/viewvc/ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/PrePropertyEvent.cs?rev=664536&view=auto
==============================================================================
--- ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/PrePropertyEvent.cs (added)
+++ ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/PrePropertyEvent.cs Sun Jun  8 11:20:44 2008
@@ -0,0 +1,70 @@
+
+#region Apache Notice
+/*****************************************************************************
+ * $Revision: 408099 $
+ * $LastChangedDate$
+ * $LastChangedBy$
+ * 
+ * iBATIS.NET Data Mapper
+ * Copyright (C) 2006/2005 - The Apache Software Foundation
+ *  
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * 
+ ********************************************************************************/
+#endregion
+
+using Apache.Ibatis.DataMapper.Model.ResultMapping;
+
+namespace Apache.Ibatis.DataMapper.Model.Events
+{
+    /// <summary>
+    /// Lauchs before setting the property value in an instance of a <see cref="IResultMap"/> object.
+    /// </summary>
+    public sealed class PrePropertyEvent : IResultPropertyEvent
+    {
+        private ResultProperty property = null;
+        private object dataBaseValue = null;
+        private object target = null;
+
+        /// <summary>
+        /// Gets or sets the result property.
+        /// </summary>
+        /// <value>The result property.</value>
+        public ResultProperty ResultProperty
+        {
+            get { return property; }
+            set { property = value; }
+        }
+
+        /// <summary>
+        /// Gets or sets the data base value.
+        /// </summary>
+        /// <value>The data base value.</value>
+        public object DataBaseValue
+        {
+            get { return dataBaseValue; }
+            set { dataBaseValue = value; }
+        }
+
+        /// <summary>
+        /// Gets or sets the target.
+        /// </summary>
+        /// <value>The target.</value>
+        public object Target
+        {
+            get { return target; }
+            set { target = value; }
+        }
+    }
+}

Propchange: ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/PrePropertyEvent.cs
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/PrePropertyEvent.cs
------------------------------------------------------------------------------
    svn:keywords = Id LastChangedDate LastChangedBy

Added: ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/PreSelectEvent.cs
URL: http://svn.apache.org/viewvc/ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/PreSelectEvent.cs?rev=664536&view=auto
==============================================================================
--- ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/PreSelectEvent.cs (added)
+++ ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/PreSelectEvent.cs Sun Jun  8 11:20:44 2008
@@ -0,0 +1,43 @@
+#region Apache Notice
+/*****************************************************************************
+ * $Revision: 476843 $
+ * $LastChangedDate$
+ * $LastChangedBy$
+ * 
+ * iBATIS.NET Data Mapper
+ * Copyright (C) 2008/2005 - The Apache Software Foundation
+ *  
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * 
+ ********************************************************************************/
+#endregion
+
+namespace Apache.Ibatis.DataMapper.Model.Events
+{
+    /// <summary>
+    /// Lauchs before excuting a select statement
+    /// </summary>
+    public sealed class PreSelectEvent : PreStatementEvent
+    {
+        /// <summary>
+        /// Gets the event type.
+        /// </summary>
+        /// <value>The type.</value>
+        public override StatementEventType Type
+        {
+            get { return StatementEventType.PreSelect; }
+        }
+
+    }
+}

Propchange: ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/PreSelectEvent.cs
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/PreSelectEvent.cs
------------------------------------------------------------------------------
    svn:keywords = Id LastChangedDate LastChangedBy

Added: ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/PreStatementEvent.cs
URL: http://svn.apache.org/viewvc/ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/PreStatementEvent.cs?rev=664536&view=auto
==============================================================================
--- ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/PreStatementEvent.cs (added)
+++ ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/PreStatementEvent.cs Sun Jun  8 11:20:44 2008
@@ -0,0 +1,35 @@
+#region Apache Notice
+/*****************************************************************************
+ * $Revision: 476843 $
+ * $LastChangedDate$
+ * $LastChangedBy$
+ * 
+ * iBATIS.NET Data Mapper
+ * Copyright (C) 2008/2005 - The Apache Software Foundation
+ *  
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * 
+ ********************************************************************************/
+#endregion
+
+namespace Apache.Ibatis.DataMapper.Model.Events
+{
+    /// <summary>
+    /// Base class for pre <see cref="ISatementEvent"/>
+    /// </summary>
+    public abstract class PreStatementEvent : BaseSatementEvent
+    {
+
+    }
+}

Propchange: ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/PreStatementEvent.cs
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/PreStatementEvent.cs
------------------------------------------------------------------------------
    svn:keywords = Id LastChangedDate LastChangedBy

Added: ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/PreUpdateOrDeleteEvent.cs
URL: http://svn.apache.org/viewvc/ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/PreUpdateOrDeleteEvent.cs?rev=664536&view=auto
==============================================================================
--- ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/PreUpdateOrDeleteEvent.cs (added)
+++ ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/PreUpdateOrDeleteEvent.cs Sun Jun  8 11:20:44 2008
@@ -0,0 +1,42 @@
+#region Apache Notice
+/*****************************************************************************
+ * $Revision: 476843 $
+ * $LastChangedDate: 2008-05-31 15:52:05 +0200 (sam., 31 mai 2008) $
+ * $LastChangedBy: gbayon $
+ * 
+ * iBATIS.NET Data Mapper
+ * Copyright (C) 2008/2005 - The Apache Software Foundation
+ *  
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * 
+ ********************************************************************************/
+#endregion
+
+namespace Apache.Ibatis.DataMapper.Model.Events
+{
+    /// <summary>
+    /// Lauchs before excuting an update/delete statement
+    /// </summary>
+    public sealed class PreUpdateOrDeleteEvent : PreStatementEvent
+    {
+        /// <summary>
+        /// Gets the event type.
+        /// </summary>
+        /// <value>The type.</value>
+        public override StatementEventType Type
+        {
+            get { return StatementEventType.PreUpdateOrDelete; }
+        }
+    }
+}

Added: ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/StatementEventType.cs
URL: http://svn.apache.org/viewvc/ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/StatementEventType.cs?rev=664536&view=auto
==============================================================================
--- ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/StatementEventType.cs (added)
+++ ibatis/trunk/cs/V3/src/Apache.Ibatis.DataMapper/Model/Events/StatementEventType.cs Sun Jun  8 11:20:44 2008
@@ -0,0 +1,41 @@
+
+#region Apache Notice
+/*****************************************************************************
+ * $Revision: 408099 $
+ * $LastChangedDate: 2008-06-07 10:14:33 +0200 (sam., 07 juin 2008) $
+ * $LastChangedBy: gbayon $
+ * 
+ * iBATIS.NET Data Mapper
+ * Copyright (C) 2006/2005 - The Apache Software Foundation
+ *  
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * 
+ ********************************************************************************/
+#endregion
+
+namespace Apache.Ibatis.DataMapper.Model.Events
+{
+    /// <summary>
+    /// Valid event type
+    /// </summary>
+    public enum StatementEventType
+    {
+        PreInsert,
+        PostInsert,
+        PreSelect,
+        PostSelect,
+        PreUpdateOrDelete,
+        PostUpdateOrDelete
+    }
+}