Changing NHibernate tests to support NHibernate 2.0

This commit is contained in:
lahma
2008-06-28 23:00:47 +00:00
parent 5d5f27dce4
commit f949a91ca8
17 changed files with 605 additions and 45 deletions

View File

@@ -65,8 +65,11 @@ namespace Spring.Data.NHibernate
{
BasicConfigurator.Configure();
ctx =
new XmlApplicationContext("assembly://Spring.Data.NHibernate.Integration.Tests/Spring.Data.NHibernate/NHDAOTests.xml");
#if NH_2_0
ctx = new XmlApplicationContext("assembly://Spring.Data.NHibernate20.Integration.Tests/Spring.Data.NHibernate/NHDAOTests.xml");
#else
ctx = new XmlApplicationContext("assembly://Spring.Data.NHibernate.Integration.Tests/Spring.Data.NHibernate/NHDAOTests.xml");
#endif
ctx.Name = AbstractApplicationContext.DefaultRootContextName;
if (!ContextRegistry.IsContextRegistered(AbstractApplicationContext.DefaultRootContextName))
{

View File

@@ -54,8 +54,12 @@ namespace Spring.Data.NHibernate
[Test]
public void CreateNative()
{
IApplicationContext ctx =
new XmlApplicationContext("assembly://Spring.Data.NHibernate.Integration.Tests/Spring.Data.NHibernate/templateTests.xml");
IApplicationContext ctx;
#if NH_2_0
ctx = new XmlApplicationContext("assembly://Spring.Data.NHibernate20.Integration.Tests/Spring.Data.NHibernate/templateTests.xml");
#else
ctx = new XmlApplicationContext("assembly://Spring.Data.NHibernate.Integration.Tests/Spring.Data.NHibernate/templateTests.xml");
#endif
ITestObjectDao dao = (ITestObjectDao)ctx.GetObject("nativeNHTestObjectDao");
TestObject toGeorge = new TestObject();

View File

@@ -28,9 +28,7 @@ using NUnit.Framework;
using Spring.Context;
using Spring.Context.Support;
using Spring.Data.Common;
using Spring.Data.Config;
using Spring.Data.Support;
using Spring.Objects.Factory.Xml;
using Spring.Transaction;
using Spring.Transaction.Support;
@@ -79,8 +77,11 @@ namespace Spring.Data.NHibernate
{
//NamespaceParserRegistry.RegisterParser(typeof(DatabaseNamespaceParser));
BasicConfigurator.Configure();
ctx =
new XmlApplicationContext("assembly://Spring.Data.NHibernate.Integration.Tests/Spring.Data.NHibernate/templateTests.xml");
#if NH_2_0
ctx = new XmlApplicationContext("assembly://Spring.Data.NHibernate20.Integration.Tests/Spring.Data.NHibernate/templateTests.xml");
#else
ctx = new XmlApplicationContext("assembly://Spring.Data.NHibernate.Integration.Tests/Spring.Data.NHibernate/templateTests.xml");
#endif
dbProvider = ctx["DbProvider"] as IDbProvider;
transactionManager = ctx["hibernateTransactionManager"] as IPlatformTransactionManager;

View File

@@ -22,8 +22,6 @@
using NUnit.Framework;
using Spring.Aop.Framework;
using Spring.Aop.Framework.DynamicProxy;
using Spring.Aop.Support;
using Spring.Context;
using Spring.Context.Support;
using Spring.Transaction;
@@ -44,8 +42,11 @@ namespace Spring.Data.NHibernate.Config
[SetUp]
public void Setup()
{
ctx =
new XmlApplicationContext("assembly://Spring.Data.NHibernate.Tests/Spring.Data.NHibernate.Config/AopConfiguration.xml");
#if NH_2_0
ctx = new XmlApplicationContext("assembly://Spring.Data.NHibernate20.Tests/Spring.Data.NHibernate.Config/AopConfiguration.xml");
#else
ctx = new XmlApplicationContext("assembly://Spring.Data.NHibernate.Tests/Spring.Data.NHibernate.Config/AopConfiguration.xml");
#endif
}

View File

@@ -379,7 +379,11 @@ namespace Spring.Data.NHibernate
LastCall.On(session).Repeat.Twice();
transaction.Commit();
LastCall.On(transaction).Repeat.Once();
#if NH_2_0
Expect.Call(session.Close()).Return(null).Repeat.Once();
#else
Expect.Call(session.Close()).Return(null).Repeat.Twice();
#endif
//}
mocks.ReplayAll();
@@ -413,7 +417,10 @@ namespace Spring.Data.NHibernate
LastCall.IgnoreArguments();
session.FlushMode = FlushMode.Never;
Expect.Call(session.FlushMode).Return(FlushMode.Never);
#if NH_2_0
#else
Expect.Call(session.Close()).Return(null);
#endif
mocks.ReplayAll();

View File

@@ -47,14 +47,17 @@ namespace Spring.Data.NHibernate
LocalSessionFactoryObject sfo = new LocalSessionFactoryObject();
sfo.DbProvider = dbProvider;
IDictionary properties = new Hashtable();
properties.Add("hibernate.connection.driver_class", "NHibernate.Driver.SqlClientDriver");
properties.Add("hibernate.connection.provider", "NHibernate.Connection.DriverConnectionProvider");
properties.Add(Environment.Dialect, "NHibernate.Dialect.MsSql2000Dialect");
properties.Add(Environment.ConnectionDriver, "NHibernate.Driver.SqlClientDriver");
properties.Add(Environment.ConnectionProvider, "NHibernate.Connection.DriverConnectionProvider");
sfo.HibernateProperties = properties;
sfo.AfterPropertiesSet();
Assert.IsNotNull(sfo.Configuration);
Assert.AreEqual(sfo.Configuration.Properties[Environment.ConnectionProvider].ToString(),
Assert.AreEqual(sfo.Configuration.Properties[Environment.ConnectionProvider],
"NHibernate.Connection.DriverConnectionProvider");
Assert.AreEqual(sfo.Configuration.Properties[Environment.Dialect],
"NHibernate.Dialect.MsSql2000Dialect");
}
[Test]
@@ -73,6 +76,7 @@ namespace Spring.Data.NHibernate
{
LocalSessionFactoryObject sfo = new LocalSessionFactoryObject();
IDictionary properties = new Hashtable();
properties.Add(Environment.Dialect, "NHibernate.Dialect.MsSql2000Dialect");
properties.Add(Environment.ConnectionProvider, "myClass");
sfo.HibernateProperties = properties;
sfo.AfterPropertiesSet();

View File

@@ -47,19 +47,19 @@ namespace Spring.Data.NHibernate
#region Properties
public int Age
public virtual int Age
{
get { return age; }
set { age = value; }
}
public string Name
public virtual string Name
{
get { return name; }
set { name = value; }
}
public int ObjectNumber
public virtual int ObjectNumber
{
get { return objectNumber; }
set { objectNumber = value; }

View File

@@ -0,0 +1,10 @@
<?xml version="1.0" encoding="utf-8" ?>
<hibernate-mapping xmlns="urn:nhibernate-mapping-2.2">
<class name="Spring.Data.NHibernate.Credit, Spring.Data.NHibernate20.Integration.Tests"
table="Credits" lazy="false">
<id name="CreditID" column="CreditID" type="Int32">
<generator class="identity" />
</id>
<property name="Amount" column="CreditAmount"/>
</class>
</hibernate-mapping>

View File

@@ -0,0 +1,111 @@
<?xml version="1.0" encoding="utf-8" ?>
<objects xmlns='http://www.springframework.net'
xmlns:db="http://www.springframework.net/database">
<db:provider id="DbProvider"
provider="System.Data.SqlClient"
connectionString="Data Source=MARKT60\SQL2005;Initial Catalog=CreditsAndDebits;User ID=springqa;Password=springqa"/>
<object id="SessionFactory" type="Spring.Data.NHibernate.LocalSessionFactoryObject, Spring.Data.NHibernate20">
<property name="DbProvider" ref="DbProvider"/>
<property name="MappingAssemblies">
<list>
<value>Spring.Data.NHibernate20.Integration.Tests</value>
</list>
</property>
<property name="HibernateProperties">
<dictionary>
<entry key="connection.provider"
value="NHibernate.Connection.DriverConnectionProvider"/>
<entry key="dialect"
value="NHibernate.Dialect.MsSql2000Dialect"/>
<entry key="connection.driver_class"
value="NHibernate.Driver.SqlClientDriver"/>
</dictionary>
</property>
</object>
<object id="AccountCreditDao" type="Spring.Data.NHibernate.AccountCreditDao, Spring.Data.NHibernate20.Integration.Tests">
<property name="SessionFactory" ref="SessionFactory"/>
</object>
<object id="AccountDebitDao" type="Spring.Data.NHibernate.AccountDebitDao, Spring.Data.NHibernate20.Integration.Tests">
<property name="SessionFactory" ref="SessionFactory"/>
</object>
<object id="AuditDao" type="Spring.Data.NHibernate.AuditDao, Spring.Data.NHibernate20.Integration.Tests">
<property name="DbProvider" ref="DbProvider"/>
</object>
<!-- The DAO object that performs multiple data access operations -->
<object id="accountManagerTarget"
type="Spring.Data.NHibernate.AccountManager, Spring.Data.NHibernate20.Integration.Tests">
<property name="AccountCreditDao" ref="AccountCreditDao"/>
<property name="AccountDebitDao" ref="AccountDebitDao"/>
<!--
<property name="AuditDao" ref="AuditDao"/>
-->
<!--
<property name="ThrowException" value="true"/>
-->
<!--
<property name="ThrowExceptionAtEnd" value="true"/>
-->
</object>
<object id="hibernateTransactionManager"
type="Spring.Data.NHibernate.HibernateTransactionManager, Spring.Data.NHibernate20">
<!-- Comment out DbProvider if you want to have the tx mgr infer the DbProvider from
the session factory. -->
<!-- Set the DbProvider explicitly if you would like to have ADO.NET and NHibernate
operations take place within the same transaction. -->
<property name="DbProvider" ref="DbProvider"/>
<property name="sessionFactory" ref="SessionFactory"/>
</object>
<!-- construct the transaction proxy based on [Transaction()] in DAO class -->
<!-- todo condense this xml for attribute usage for ease of use -->
<!--
<aop:transaction name=testObjectDao"
target="NHTestObjectDao"
interfaces="Spring.NHibernate.ITestObjectDao"
transactionManager="hibernateTransactionManager"/>
-->
<!-- Transactional Proxy for TestObjectManager using the ProxyFactoryObject -->
<object id="accountManager"
type="Spring.Aop.Framework.ProxyFactoryObject, Spring.Aop">
<property name="Target" ref="accountManagerTarget"/>
<property name="InterceptorNames">
<value>transactionInterceptor</value>
</property>
</object>
<!-- Transaction Interceptor based on attribute [Transaction()] -->
<object id="transactionInterceptor"
type="Spring.Transaction.Interceptor.TransactionInterceptor, Spring.Data">
<property name="TransactionManager" ref="hibernateTransactionManager"/>
<!-- note do not have converter from string to this property type registered -->
<property name="TransactionAttributeSource">
<object type="Spring.Transaction.Interceptor.AttributesTransactionAttributeSource, Spring.Data"/>
</property>
</object>
</objects>

View File

@@ -0,0 +1,17 @@
<?xml version="1.0" encoding="utf-8" ?>
<hibernate-mapping xmlns="urn:nhibernate-mapping-2.2">
<class name="Spring.Data.NHibernate.TestObject, Spring.Data.NHibernate20.Integration.Tests" table="TestObjects">
<id name="ObjectNumber" column="TestObjectNo" type="Int32">
<generator class="identity" />
<!--
<generator class="sequence">
<param name="sequence">ID_SEQ</param>
</generator>
-->
</id>
<property name="Age" column="Age" type="Int32"/>
<property name="Name" type="String" length="50"/>
</class>
</hibernate-mapping>

View File

@@ -0,0 +1,105 @@
<?xml version="1.0" encoding="utf-8" ?>
<objects xmlns='http://www.springframework.net'
xmlns:db="http://www.springframework.net/database">
<!--
<db:provider id="DbProvider"
provider="SqlServer-1.1"
connectionString="Data Source=(local);Database=Spring;User ID=springqa;Password=springqa;Trusted_Connection=False"/>
-->
<object id="DbProvider" type="Spring.Data.Common.UserCredentialsDbProvider, Spring.Data">
<property name="TargetDbProvider" ref="targetDbProvider"/>
<property name="Username" value="User ID=defaultName"/>
<property name="Password" value="Password=defaultPass"/>
</object>
<db:provider id="targetDbProvider"
provider="SqlServer-2.0"
connectionString="Data Source=MARKT60\SQL2005;Trusted_Connection=False"/>
<db:provider id="standardDbProvider"
provider="SqlServer-2.0"
connectionString="Data Source=MARKT60\SQL2005;Trusted_Connection=False;User ID=springqa;Password=springqa"/>
<object id="SessionFactory" type="Spring.Data.NHibernate.LocalSessionFactoryObject, Spring.Data.NHibernate20">
<property name="DbProvider" ref="DbProvider"/>
<property name="MappingResources">
<list>
<value>assembly://Spring.Data.NHibernate20.Integration.Tests/Spring.Data.NHibernate/TestObject.hbm.xml</value>
</list>
</property>
<!--
<property name="MappingAssemblies">
<list>
<value>Spring.Data.NHibernate.Integration.Tests</value>
</list>
</property>
-->
<property name="HibernateProperties">
<dictionary>
<!-- use connection provided by DbProvider
<entry key="hibernate.connection.provider"
value="NHibernate.Connection.DriverConnectionProvider"/>
-->
<entry key="dialect"
value="NHibernate.Dialect.MsSql2000Dialect"/>
<entry key="connection.driver_class"
value="NHibernate.Driver.SqlClientDriver"/>
<!--
<entry key="hibernate.dialect"
value="NHibernate.Dialect.Oracle9Dialect"/>
-->
</dictionary>
</property>
</object>
<!--
<object id="nativeNHTestObjectDao" type="Spring.Data.NHibernate.NativeNHTestObjectDao, Spring.Data.NHibernate.Integration.Tests">
<property name="SessionFactory" ref="SessionFactory"/>
</object>
<object id="NHTestObjectDao" type="Spring.Data.NHibernate.NHTestObjectDao, Spring.Data.NHibernate.Integration.Tests">
<property name="SessionFactory" ref="SessionFactory"/>
</object>
-->
<object id="hibernateTransactionManager"
type="Spring.Data.NHibernate.HibernateTransactionManager, Spring.Data.NHibernate20">
<property name="DbProvider" ref="DbProvider"/>
<property name="sessionFactory" ref="SessionFactory"/>
</object>
<!-- Transactional Proxy for TestObjectDao using the TransactionProxyFactory -->
<object id="testObjectDaoTransProxy"
type="Spring.Transaction.Interceptor.TransactionProxyFactoryObject, Spring.Data">
<property name="PlatformTransactionManager" ref="hibernateTransactionManager"/>
<property name="Target">
<object type="Spring.Data.NHibernate.NHTestObjectDao, Spring.Data.NHibernate20.Integration.Tests">
<property name="SessionFactory" ref="SessionFactory"/>
</object>
</property>
<property name="ProxyInterfaces" value="Spring.Data.NHibernate.ITestObjectDao"/>
<property name="TransactionAttributes">
<name-values>
<add key="Create*" value="PROPAGATION_REQUIRED"/>
<add key="Delete*" value="PROPAGATION_REQUIRED"/>
<add key="Update*" value="PROPAGATION_REQUIRED"/>
<add key="Find*" value="PROPAGATION_REQUIRED"/>
</name-values>
</property>
</object>
</objects>

View File

@@ -0,0 +1,102 @@
<?xml version="1.0" encoding="utf-8" ?>
<objects xmlns='http://www.springframework.net'
xmlns:db="http://www.springframework.net/database">
<db:provider id="DbProvider"
provider="SqlServer-1.1"
connectionString="Data Source=MARKT60\SQL2005;Initial Catalog=Spring;User ID=springqa; Password=springqa"/>
<!--
connectionString="Data Source=(local);Database=Spring;User ID=springqa;Password=springqa;Trusted_Connection=False"/>
-->
<!--
<db:provider id="DbProvider"
provider="OracleODP-2.0"
connectionString="Data Source=AGORA; User Id=agora_user; Password=welcome_bad"/>
-->
<!--
<db:provider id="DbProvider"
provider="System.Data.SqlClient"
connectionString="Data Source=MARKT60\SQL2005;Initial Catalog=Spring;User ID=springqa; Password=springqa"/>
-->
<object id="SessionFactory" type="Spring.Data.NHibernate.LocalSessionFactoryObject, Spring.Data.NHibernate20">
<!-- TODO Provide dedicated NHibernate Schema -->
<property name="DbProvider" ref="DbProvider"/>
<property name="MappingResources">
<list>
<value>assembly://Spring.Data.NHibernate20.Integration.Tests/Spring.Data.NHibernate/TestObject.hbm.xml</value>
</list>
</property>
<!--
<property name="MappingAssemblies">
<list>
<value>Spring.Data.NHibernate.Integration.Tests</value>
</list>
</property>
-->
<property name="HibernateProperties">
<dictionary>
<!--
<entry key="hibernate.connection.provider"
value="NHibernate.Connection.DriverConnectionProvider"/>
<entry key="hibernate.dialect"
value="NHibernate.Dialect.Oracle9Dialect"/>
-->
<entry key="dialect"
value="NHibernate.Dialect.MsSql2000Dialect"/>
<entry key="connection.driver_class"
value="NHibernate.Driver.SqlClientDriver"/>
</dictionary>
</property>
</object>
<object id="nativeNHTestObjectDao" type="Spring.Data.NHibernate.NativeNHTestObjectDao, Spring.Data.NHibernate20.Integration.Tests">
<property name="SessionFactory" ref="SessionFactory"/>
</object>
<object id="NHTestObjectDao" type="Spring.Data.NHibernate.NHTestObjectDao, Spring.Data.NHibernate20.Integration.Tests">
<property name="SessionFactory" ref="SessionFactory"/>
</object>
<object id="hibernateTransactionManager"
type="Spring.Data.NHibernate.HibernateTransactionManager, Spring.Data.NHibernate20">
<property name="DbProvider" ref="DbProvider"/>
<property name="sessionFactory" ref="SessionFactory"/>
</object>
<!-- Transactional Proxy for TestObjectDao using the TransactionProxyFactory -->
<object id="testObjectDaoTransProxy"
type="Spring.Transaction.Interceptor.TransactionProxyFactoryObject, Spring.Data">
<property name="PlatformTransactionManager" ref="hibernateTransactionManager"/>
<property name="Target">
<object type="Spring.Data.NHibernate.NHTestObjectDao, Spring.Data.NHibernate20.Integration.Tests">
<property name="SessionFactory" ref="SessionFactory"/>
</object>
</property>
<property name="ProxyInterfaces" value="Spring.Data.NHibernate.ITestObjectDao"/>
<property name="TransactionAttributes">
<name-values>
<add key="Create*" value="PROPAGATION_REQUIRED"/>
<add key="Delete*" value="PROPAGATION_REQUIRED"/>
<add key="Update*" value="PROPAGATION_REQUIRED"/>
<add key="Find*" value="PROPAGATION_REQUIRED"/>
</name-values>
</property>
</object>
</objects>

View File

@@ -141,27 +141,20 @@
</ProjectReference>
</ItemGroup>
<ItemGroup>
<EmbeddedResource Include="..\Spring.Data.NHibernate.Integration.Tests\Data\NHibernate\Credit.hbm.xml">
<Link>Data\NHibernate\Credit.hbm.xml</Link>
</EmbeddedResource>
<EmbeddedResource Include="..\Spring.Data.NHibernate.Integration.Tests\Data\NHibernate\dbProviderTemplateTests.xml">
<Link>Data\NHibernate\dbProviderTemplateTests.xml</Link>
</EmbeddedResource>
<EmbeddedResource Include="..\Spring.Data.NHibernate.Integration.Tests\Data\NHibernate\Debit.hbm.xml">
<Link>Data\NHibernate\Debit.hbm.xml</Link>
</EmbeddedResource>
<EmbeddedResource Include="..\Spring.Data.NHibernate.Integration.Tests\Data\NHibernate\MultipleDbTests.xml">
<Link>Data\NHibernate\MultipleDbTests.xml</Link>
</EmbeddedResource>
<EmbeddedResource Include="..\Spring.Data.NHibernate.Integration.Tests\Data\NHibernate\NHDAOTests.xml">
<Link>Data\NHibernate\NHDAOTests.xml</Link>
</EmbeddedResource>
<EmbeddedResource Include="..\Spring.Data.NHibernate.Integration.Tests\Data\NHibernate\templateTests.xml">
<Link>Data\NHibernate\templateTests.xml</Link>
</EmbeddedResource>
<EmbeddedResource Include="..\Spring.Data.NHibernate.Integration.Tests\Data\NHibernate\TestObject.hbm.xml">
<Link>Data\NHibernate\TestObject.hbm.xml</Link>
</EmbeddedResource>
</ItemGroup>
<ItemGroup>
<EmbeddedResource Include="Data\NHibernate\dbProviderTemplateTests.xml" />
</ItemGroup>
<ItemGroup>
<EmbeddedResource Include="Data\NHibernate\templateTests.xml" />
</ItemGroup>
<ItemGroup>
<Content Include="Data\NHibernate\Credit.hbm.xml" />
<Content Include="Data\NHibernate\NHDAOTests.xml" />
<EmbeddedResource Include="Data\NHibernate\TestObject.hbm.xml" />
</ItemGroup>
<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.

View File

@@ -0,0 +1,97 @@
<?xml version="1.0" encoding="utf-8" ?>
<objects xmlns="http://www.springframework.net"
xmlns:db="http://www.springframework.net/database"
xmlns:tx="http://www.springframework.net/tx">
<!-- Database and NHibernate Configuration -->
<db:provider id="DbProvider"
provider="SqlServer-2.0"
connectionString="Data Source=MARKT60\SQL2005;Initial Catalog=Spring;Persist Security Info=True;User ID=springqa;Password=springqa;"/>
<object id="SessionFactory" type="Spring.Data.NHibernate.LocalSessionFactoryObject, Spring.Data.NHibernate20">
<property name="DbProvider" ref="DbProvider"/>
<property name="MappingResources">
<list>
<value>assembly://Spring.Data.NHibernate20.Tests/Spring.Data.NHibernate/TestObject.hbm.xml</value>
</list>
</property>
<property name="HibernateProperties">
<dictionary>
<entry key="dialect"
value="NHibernate.Dialect.MsSql2000Dialect"/>
<entry key="connection.driver_class"
value="NHibernate.Driver.SqlClientDriver"/>
</dictionary>
</property>
</object>
<object id="TestObjectDao" type="Spring.Data.NHibernate.TestObjectDao, Spring.Data.NHibernate20.Tests">
<property name="SessionFactory" ref="SessionFactory"/>
</object>
<object id="hibernateTransactionManager" type="Spring.Data.NHibernate.HibernateTransactionManager, Spring.Data.NHibernate20">
<property name="DbProvider" ref="DbProvider"/>
<property name="sessionFactory" ref="SessionFactory"/>
</object>
<object name="transactionManager" type="Spring.Transaction.CallCountingTransactionManager, Spring.Data.Tests"/>
<object name="SimpleService" type="Spring.Data.NHibernate.SimpleService, Spring.Data.NHibernate20.Tests">
<property name="TestObjectDao" ref="TestObjectDao"/>
</object>
<object id="loggingAroundAdvice" type="Spring.Data.LoggingAroundAdvice, Spring.Data.Tests"/>
<object id ="myAutoProxy" type="Spring.Aop.Framework.AutoProxy.ObjectNameAutoProxyCreator">
<property name="InterceptorNames">
<list>
<value>loggingAroundAdvice</value>
</list>
</property>
<property name="ProxyTargetType" value="false"/>
<property name="ExposeProxy" value="false"/>
<property name="Optimize" value="false"/>
<property name="ObjectNames">
<list>
<value>TestObjectDao</value>
</list>
</property>
</object>
<tx:attribute-driven transaction-manager="transactionManager"/>
<!-- Transactional Proxy for TestObjectDao using the TransactionProxyFactory -->
<!--
<object id="testObjectDaoTransProxy"
type="Spring.Transaction.Interceptor.TransactionProxyFactoryObject, Spring.Data">
<property name="PlatformTransactionManager" ref="transactionManager"/>
<property name="Target" ref="SimpleService"/>
<property name="ProxyInterfaces" value="Spring.Data.NHibernate.ISimpleService"/>
<property name="TransactionAttributes">
<name-values>
<add key="Create*" value="PROPAGATION_REQUIRED"/>
<add key="Delete*" value="PROPAGATION_REQUIRED"/>
<add key="Update*" value="PROPAGATION_REQUIRED"/>
<add key="Find*" value="PROPAGATION_REQUIRED"/>
</name-values>
</property>
</object>
-->
</objects>

View File

@@ -0,0 +1,94 @@
<?xml version="1.0" encoding="utf-8" ?>
<objects xmlns="http://www.springframework.net"
xmlns:db="http://www.springframework.net/database"
xmlns:tx="http://www.springframework.net/tx"
xmlns:aop="http://www.springframework.net/aop">
<!-- Database and NHibernate Configuration -->
<db:provider id="DbProvider"
provider="SqlServer-2.0"
connectionString="Data Source=MARKT60\SQL2005;Initial Catalog=Spring;Persist Security Info=True;User ID=springqa;Password=springqa;"/>
<object id="SessionFactory" type="Spring.Data.NHibernate.LocalSessionFactoryObject, Spring.Data.NHibernate">
<property name="DbProvider" ref="DbProvider"/>
<property name="MappingResources">
<list>
<value>assembly://Spring.Data.NHibernate.Tests/Spring.Data.NHibernate/TestObject.hbm.xml</value>
</list>
</property>
<property name="HibernateProperties">
<dictionary>
<entry key="hibernate.dialect"
value="NHibernate.Dialect.MsSql2000Dialect"/>
<entry key="hibernate.connection.driver_class"
value="NHibernate.Driver.SqlClientDriver"/>
</dictionary>
</property>
</object>
<object id="TestObjectDao" type="Spring.Data.NHibernate.TestObjectDao, Spring.Data.NHibernate.Tests">
<property name="SessionFactory" ref="SessionFactory"/>
</object>
<object id="transactionManager" type="Spring.Data.NHibernate.HibernateTransactionManager, Spring.Data.NHibernate">
<property name="DbProvider" ref="DbProvider"/>
<property name="sessionFactory" ref="SessionFactory"/>
</object>
<object name="SimpleService" type="Spring.Data.NHibernate.SimpleService, Spring.Data.NHibernate.Tests">
<property name="TestObjectDao" ref="TestObjectDao"/>
</object>
<object name="hibernateTemplate" type="Spring.Data.NHibernate.HibernateTemplate, Spring.Data.NHibernate">
<property name="sessionFactory" ref="SessionFactory"/>
</object>
<!-- once add 'internal' role for autoproxycreator that is created via the tx:attribute-driven element -->
<!-- then we can add advisors to the config and have them picked up by any 'user' role defined autoproxycreators -->
<object id="loggingAdvisor" type="Spring.Aop.Support.NameMatchMethodPointcutAdvisor, Spring.Aop">
<property name="Advice">
<object id="loggingAroundAdvice" type="Spring.Data.LoggingAroundAdvice, Spring.Data.Tests"/>
</property>
<property name="MappedNames">
<list>
<value>12341234asdf*</value>
</list>
</property>
</object>
<object id ="myAutoProxy" type="Spring.Aop.Framework.AutoProxy.ObjectNameAutoProxyCreator">
<property name="InterceptorNames">
<list>
<value>loggingAdvisor</value>
</list>
</property>
<property name="ProxyTargetType" value="false"/>
<property name="ExposeProxy" value="false"/>
<property name="Optimize" value="false"/>
<property name="ObjectNames">
<list>
<value>TestObjectDao</value>
</list>
</property>
</object>
<tx:attribute-driven transaction-manager="transactionManager"/>
</objects>

View File

@@ -0,0 +1,17 @@
<?xml version="1.0" encoding="utf-8" ?>
<hibernate-mapping xmlns="urn:nhibernate-mapping-2.2">
<class name="Spring.Data.NHibernate.TestObject, Spring.Data.NHibernate20.Tests" table="TestObjects">
<id name="ObjectNumber" column="TestObjectNo" type="Int32">
<generator class="identity" />
<!--
<generator class="sequence">
<param name="sequence">ID_SEQ</param>
</generator>
-->
</id>
<property name="Age" column="Age" type="Int32"/>
<property name="Name" type="String" length="50"/>
</class>
</hibernate-mapping>

View File

@@ -123,17 +123,11 @@
</ProjectReference>
</ItemGroup>
<ItemGroup>
<EmbeddedResource Include="..\Spring.Data.NHibernate.Tests\Data\NHibernate\TestObject.hbm.xml">
<Link>Data\NHibernate\TestObject.hbm.xml</Link>
</EmbeddedResource>
<EmbeddedResource Include="Data\NHibernate\Config\AopConfiguration.xml" />
<EmbeddedResource Include="Data\NHibernate\Config\AopConfigurationTxPointcut.xml" />
</ItemGroup>
<ItemGroup>
<EmbeddedResource Include="..\Spring.Data.NHibernate.Tests\Data\NHibernate\Config\AopConfiguration.xml">
<Link>Data\NHibernate\Config\AopConfiguration.xml</Link>
</EmbeddedResource>
<EmbeddedResource Include="..\Spring.Data.NHibernate.Tests\Data\NHibernate\Config\AopConfigurationTxPointcut.xml">
<Link>Data\NHibernate\Config\AopConfigurationTxPointcut.xml</Link>
</EmbeddedResource>
<EmbeddedResource Include="Data\NHibernate\TestObject.hbm.xml" />
</ItemGroup>
<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.