diff --git a/build-support/solutions/Spring.Net.NHibernate21.2005.sln b/build-support/solutions/Spring.Net.NHibernate21.2005.sln index cf44e7d2..67d2615b 100644 --- a/build-support/solutions/Spring.Net.NHibernate21.2005.sln +++ b/build-support/solutions/Spring.Net.NHibernate21.2005.sln @@ -18,7 +18,8 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Release.AspNetCompiler.Debug = "False" EndProjectSection ProjectSection(SolutionItems) = preProject - Spring.build = Spring.build + ..\..\Spring.build = ..\..\Spring.build + ..\..\src\Spring\Spring.Data.NHibernate21\Spring.Data.NHibernate21.build = ..\..\src\Spring\Spring.Data.NHibernate21\Spring.Data.NHibernate21.build EndProjectSection EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Spring.Data.2005", "..\..\src\Spring\Spring.Data\Spring.Data.2005.csproj", "{AE00E5AB-C39A-436F-86D2-33BFE33E2E40}" @@ -39,7 +40,7 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Spring.Data.NHibernate21.Te Release.AspNetCompiler.Debug = "False" EndProjectSection EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Spring.Data.NHibernate21.2005", "..\..\src\Spring\Spring.Data.NHibernate21\Spring.Data.NHibernate21.2005.csproj", "{71368632-B8B7-4A6A-8C65-8DA848120C82}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Spring.Data.NHibernate21.2005", "..\..\src\Spring\Spring.Data.NHibernate21\Spring.Data.NHibernate21.2005.csproj", "{E57B4652-0231-49CB-B058-87E10EFE540D}" ProjectSection(WebsiteProperties) = preProject Debug.AspNetCompiler.Debug = "True" Release.AspNetCompiler.Debug = "False" @@ -127,16 +128,16 @@ Global {94E4E1B4-D424-4EB9-BF34-2EE8CC3D7048}.Release|Any CPU.Build.0 = Release|Any CPU {94E4E1B4-D424-4EB9-BF34-2EE8CC3D7048}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU {94E4E1B4-D424-4EB9-BF34-2EE8CC3D7048}.Release|Mixed Platforms.Build.0 = Release|Any CPU - {71368632-B8B7-4A6A-8C65-8DA848120C82}.Debug|.NET.ActiveCfg = Debug|Any CPU - {71368632-B8B7-4A6A-8C65-8DA848120C82}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {71368632-B8B7-4A6A-8C65-8DA848120C82}.Debug|Any CPU.Build.0 = Debug|Any CPU - {71368632-B8B7-4A6A-8C65-8DA848120C82}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU - {71368632-B8B7-4A6A-8C65-8DA848120C82}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU - {71368632-B8B7-4A6A-8C65-8DA848120C82}.Release|.NET.ActiveCfg = Release|Any CPU - {71368632-B8B7-4A6A-8C65-8DA848120C82}.Release|Any CPU.ActiveCfg = Release|Any CPU - {71368632-B8B7-4A6A-8C65-8DA848120C82}.Release|Any CPU.Build.0 = Release|Any CPU - {71368632-B8B7-4A6A-8C65-8DA848120C82}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU - {71368632-B8B7-4A6A-8C65-8DA848120C82}.Release|Mixed Platforms.Build.0 = Release|Any CPU + {E57B4652-0231-49CB-B058-87E10EFE540D}.Debug|.NET.ActiveCfg = Debug|Any CPU + {E57B4652-0231-49CB-B058-87E10EFE540D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {E57B4652-0231-49CB-B058-87E10EFE540D}.Debug|Any CPU.Build.0 = Debug|Any CPU + {E57B4652-0231-49CB-B058-87E10EFE540D}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU + {E57B4652-0231-49CB-B058-87E10EFE540D}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU + {E57B4652-0231-49CB-B058-87E10EFE540D}.Release|.NET.ActiveCfg = Release|Any CPU + {E57B4652-0231-49CB-B058-87E10EFE540D}.Release|Any CPU.ActiveCfg = Release|Any CPU + {E57B4652-0231-49CB-B058-87E10EFE540D}.Release|Any CPU.Build.0 = Release|Any CPU + {E57B4652-0231-49CB-B058-87E10EFE540D}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU + {E57B4652-0231-49CB-B058-87E10EFE540D}.Release|Mixed Platforms.Build.0 = Release|Any CPU {ACD39D47-1811-40FA-9E7E-5DEA5B9CE6C0}.Debug|.NET.ActiveCfg = Debug|Any CPU {ACD39D47-1811-40FA-9E7E-5DEA5B9CE6C0}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {ACD39D47-1811-40FA-9E7E-5DEA5B9CE6C0}.Debug|Any CPU.Build.0 = Debug|Any CPU diff --git a/build-support/solutions/Spring.Net.NHibernate21.2008.sln b/build-support/solutions/Spring.Net.NHibernate21.2008.sln index deed3a99..cce99c40 100644 --- a/build-support/solutions/Spring.Net.NHibernate21.2008.sln +++ b/build-support/solutions/Spring.Net.NHibernate21.2008.sln @@ -2,7 +2,8 @@ Microsoft Visual Studio Solution File, Format Version 10.00 # Visual Studio 2008 Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{F04753EF-7A1B-4837-AB63-8C0821E8155D}" ProjectSection(SolutionItems) = preProject - Spring.build = Spring.build + ..\..\Spring.build = ..\..\Spring.build + ..\..\src\Spring\Spring.Data.NHibernate21\Spring.Data.NHibernate21.build = ..\..\src\Spring\Spring.Data.NHibernate21\Spring.Data.NHibernate21.build EndProjectSection EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Spring.Core.2008", "..\..\src\Spring\Spring.Core\Spring.Core.2008.csproj", "{710961A3-0DF4-49E4-A26E-F5B9C044AC84}" @@ -13,9 +14,9 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Spring.Data.2008", "..\..\s EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Spring.Data.NHibernate21.Integration.Tests.2008", "..\..\test\Spring\Spring.Data.NHibernate21.Integration.Tests\Spring.Data.NHibernate21.Integration.Tests.2008.csproj", "{4A07E150-ED90-407C-8CAD-4760444DDFD9}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Spring.Data.NHibernate21.Tests.2008", "..\..\test\Spring\Spring.Data.NHibernate21.Tests\Spring.Data.NHibernate21.Tests.2008.csproj", "{94E4E1B4-D424-4EB9-BF34-2EE8CC3D7048}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Spring.Data.NHibernate21.Tests.2008", "..\..\test\Spring\Spring.Data.NHibernate21.Tests\Spring.Data.NHibernate21.Tests.2008.csproj", "{90FEE979-7367-4542-BCCB-BF634E04A9D3}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Spring.Data.NHibernate21.2008", "..\..\src\Spring\Spring.Data.NHibernate21\Spring.Data.NHibernate21.2008.csproj", "{71368632-B8B7-4A6A-8C65-8DA848120C82}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Spring.Data.NHibernate21.2008", "..\..\src\Spring\Spring.Data.NHibernate21\Spring.Data.NHibernate21.2008.csproj", "{E57B4652-0231-49CB-B058-87E10EFE540D}" EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Spring.Data.Tests.2008", "..\..\test\Spring\Spring.Data.Tests\Spring.Data.Tests.2008.csproj", "{ACD39D47-1811-40FA-9E7E-5DEA5B9CE6C0}" EndProject @@ -79,28 +80,28 @@ Global {4A07E150-ED90-407C-8CAD-4760444DDFD9}.Release|Any CPU.Build.0 = Release|Any CPU {4A07E150-ED90-407C-8CAD-4760444DDFD9}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU {4A07E150-ED90-407C-8CAD-4760444DDFD9}.Release|Mixed Platforms.Build.0 = Release|Any CPU - {94E4E1B4-D424-4EB9-BF34-2EE8CC3D7048}.Debug|.NET.ActiveCfg = Debug|Any CPU - {94E4E1B4-D424-4EB9-BF34-2EE8CC3D7048}.Debug|.NET.Build.0 = Debug|Any CPU - {94E4E1B4-D424-4EB9-BF34-2EE8CC3D7048}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {94E4E1B4-D424-4EB9-BF34-2EE8CC3D7048}.Debug|Any CPU.Build.0 = Debug|Any CPU - {94E4E1B4-D424-4EB9-BF34-2EE8CC3D7048}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU - {94E4E1B4-D424-4EB9-BF34-2EE8CC3D7048}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU - {94E4E1B4-D424-4EB9-BF34-2EE8CC3D7048}.Release|.NET.ActiveCfg = Release|Any CPU - {94E4E1B4-D424-4EB9-BF34-2EE8CC3D7048}.Release|.NET.Build.0 = Release|Any CPU - {94E4E1B4-D424-4EB9-BF34-2EE8CC3D7048}.Release|Any CPU.ActiveCfg = Release|Any CPU - {94E4E1B4-D424-4EB9-BF34-2EE8CC3D7048}.Release|Any CPU.Build.0 = Release|Any CPU - {94E4E1B4-D424-4EB9-BF34-2EE8CC3D7048}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU - {94E4E1B4-D424-4EB9-BF34-2EE8CC3D7048}.Release|Mixed Platforms.Build.0 = Release|Any CPU - {71368632-B8B7-4A6A-8C65-8DA848120C82}.Debug|.NET.ActiveCfg = Debug|Any CPU - {71368632-B8B7-4A6A-8C65-8DA848120C82}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {71368632-B8B7-4A6A-8C65-8DA848120C82}.Debug|Any CPU.Build.0 = Debug|Any CPU - {71368632-B8B7-4A6A-8C65-8DA848120C82}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU - {71368632-B8B7-4A6A-8C65-8DA848120C82}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU - {71368632-B8B7-4A6A-8C65-8DA848120C82}.Release|.NET.ActiveCfg = Release|Any CPU - {71368632-B8B7-4A6A-8C65-8DA848120C82}.Release|Any CPU.ActiveCfg = Release|Any CPU - {71368632-B8B7-4A6A-8C65-8DA848120C82}.Release|Any CPU.Build.0 = Release|Any CPU - {71368632-B8B7-4A6A-8C65-8DA848120C82}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU - {71368632-B8B7-4A6A-8C65-8DA848120C82}.Release|Mixed Platforms.Build.0 = Release|Any CPU + {90FEE979-7367-4542-BCCB-BF634E04A9D3}.Debug|.NET.ActiveCfg = Debug|Any CPU + {90FEE979-7367-4542-BCCB-BF634E04A9D3}.Debug|.NET.Build.0 = Debug|Any CPU + {90FEE979-7367-4542-BCCB-BF634E04A9D3}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {90FEE979-7367-4542-BCCB-BF634E04A9D3}.Debug|Any CPU.Build.0 = Debug|Any CPU + {90FEE979-7367-4542-BCCB-BF634E04A9D3}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU + {90FEE979-7367-4542-BCCB-BF634E04A9D3}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU + {90FEE979-7367-4542-BCCB-BF634E04A9D3}.Release|.NET.ActiveCfg = Release|Any CPU + {90FEE979-7367-4542-BCCB-BF634E04A9D3}.Release|.NET.Build.0 = Release|Any CPU + {90FEE979-7367-4542-BCCB-BF634E04A9D3}.Release|Any CPU.ActiveCfg = Release|Any CPU + {90FEE979-7367-4542-BCCB-BF634E04A9D3}.Release|Any CPU.Build.0 = Release|Any CPU + {90FEE979-7367-4542-BCCB-BF634E04A9D3}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU + {90FEE979-7367-4542-BCCB-BF634E04A9D3}.Release|Mixed Platforms.Build.0 = Release|Any CPU + {E57B4652-0231-49CB-B058-87E10EFE540D}.Debug|.NET.ActiveCfg = Debug|Any CPU + {E57B4652-0231-49CB-B058-87E10EFE540D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {E57B4652-0231-49CB-B058-87E10EFE540D}.Debug|Any CPU.Build.0 = Debug|Any CPU + {E57B4652-0231-49CB-B058-87E10EFE540D}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU + {E57B4652-0231-49CB-B058-87E10EFE540D}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU + {E57B4652-0231-49CB-B058-87E10EFE540D}.Release|.NET.ActiveCfg = Release|Any CPU + {E57B4652-0231-49CB-B058-87E10EFE540D}.Release|Any CPU.ActiveCfg = Release|Any CPU + {E57B4652-0231-49CB-B058-87E10EFE540D}.Release|Any CPU.Build.0 = Release|Any CPU + {E57B4652-0231-49CB-B058-87E10EFE540D}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU + {E57B4652-0231-49CB-B058-87E10EFE540D}.Release|Mixed Platforms.Build.0 = Release|Any CPU {ACD39D47-1811-40FA-9E7E-5DEA5B9CE6C0}.Debug|.NET.ActiveCfg = Debug|Any CPU {ACD39D47-1811-40FA-9E7E-5DEA5B9CE6C0}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {ACD39D47-1811-40FA-9E7E-5DEA5B9CE6C0}.Debug|Any CPU.Build.0 = Debug|Any CPU diff --git a/lib/NHibernate21/net/2.0/Antlr3.Runtime.dll b/lib/NHibernate21/net/2.0/Antlr3.Runtime.dll new file mode 100644 index 00000000..637fc3e3 Binary files /dev/null and b/lib/NHibernate21/net/2.0/Antlr3.Runtime.dll differ diff --git a/lib/NHibernate21/net/2.0/Castle.Core.dll b/lib/NHibernate21/net/2.0/Castle.Core.dll deleted file mode 100644 index 2464e661..00000000 Binary files a/lib/NHibernate21/net/2.0/Castle.Core.dll and /dev/null differ diff --git a/lib/NHibernate21/net/2.0/Castle.DynamicProxy.license.txt b/lib/NHibernate21/net/2.0/Castle.DynamicProxy.license.txt deleted file mode 100644 index b7530910..00000000 --- a/lib/NHibernate21/net/2.0/Castle.DynamicProxy.license.txt +++ /dev/null @@ -1,13 +0,0 @@ -Copyright 2004-2005 Castle Project - http://www.castleproject.org/ - -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. diff --git a/lib/NHibernate21/net/2.0/Castle.DynamicProxy2.dll b/lib/NHibernate21/net/2.0/Castle.DynamicProxy2.dll deleted file mode 100644 index 83e192e9..00000000 Binary files a/lib/NHibernate21/net/2.0/Castle.DynamicProxy2.dll and /dev/null differ diff --git a/lib/NHibernate21/net/2.0/Iesi.Collections.dll b/lib/NHibernate21/net/2.0/Iesi.Collections.dll index 0a745d44..b8def765 100644 Binary files a/lib/NHibernate21/net/2.0/Iesi.Collections.dll and b/lib/NHibernate21/net/2.0/Iesi.Collections.dll differ diff --git a/lib/NHibernate21/net/2.0/LinFu.DynamicProxy.dll b/lib/NHibernate21/net/2.0/LinFu.DynamicProxy.dll index cbd6c78f..22225220 100644 Binary files a/lib/NHibernate21/net/2.0/LinFu.DynamicProxy.dll and b/lib/NHibernate21/net/2.0/LinFu.DynamicProxy.dll differ diff --git a/lib/NHibernate21/net/2.0/NHibernate.ByteCode.Castle.dll b/lib/NHibernate21/net/2.0/NHibernate.ByteCode.Castle.dll deleted file mode 100644 index 139f2aff..00000000 Binary files a/lib/NHibernate21/net/2.0/NHibernate.ByteCode.Castle.dll and /dev/null differ diff --git a/lib/NHibernate21/net/2.0/NHibernate.ByteCode.LinFu.dll b/lib/NHibernate21/net/2.0/NHibernate.ByteCode.LinFu.dll new file mode 100644 index 00000000..015189d9 Binary files /dev/null and b/lib/NHibernate21/net/2.0/NHibernate.ByteCode.LinFu.dll differ diff --git a/lib/NHibernate21/net/2.0/NHibernate.dll b/lib/NHibernate21/net/2.0/NHibernate.dll index 2ec1ad27..306a4593 100644 Binary files a/lib/NHibernate21/net/2.0/NHibernate.dll and b/lib/NHibernate21/net/2.0/NHibernate.dll differ diff --git a/src/Spring/Spring.Data.NHibernate20/Data/NHibernate/LocalSessionFactoryObject.cs b/src/Spring/Spring.Data.NHibernate20/Data/NHibernate/LocalSessionFactoryObject.cs index c579b478..6bb75d27 100644 --- a/src/Spring/Spring.Data.NHibernate20/Data/NHibernate/LocalSessionFactoryObject.cs +++ b/src/Spring/Spring.Data.NHibernate20/Data/NHibernate/LocalSessionFactoryObject.cs @@ -42,8 +42,11 @@ using Spring.Dao.Support; using Spring.Data.Common; using Spring.Data.Support; using Spring.Objects.Factory; +using Spring.Objects.Factory.Config; +using Spring.Util; using Environment = NHibernate.Cfg.Environment; +using Configuration = NHibernate.Cfg.Configuration; #endregion @@ -71,7 +74,7 @@ namespace Spring.Data.NHibernate /// /// Mark Pollack (.NET) /// $Id: LocalSessionFactoryObject.cs,v 1.2 2008/05/01 12:50:34 lahma Exp $ - public class LocalSessionFactoryObject : IFactoryObject, IInitializingObject, IPersistenceExceptionTranslator, System.IDisposable + public class LocalSessionFactoryObject : IFactoryObject, IInitializingObject, IPersistenceExceptionTranslator, IDisposable { #region Fields @@ -95,14 +98,28 @@ namespace Spring.Data.NHibernate private bool exposeTransactionAwareSessionFactory = false; + private IInterceptor entityInterceptor; + + private INamingStrategy namingStrategy; + + private IObjectDefinition[] typeDefinitions; + private FilterDefinition[] filterDefinitions; + private Properties entityCacheStrategies; + + private Properties collectionCacheStrategies; + private IDictionary eventListeners; private bool schemaUpdate = false; private IAdoExceptionTranslator adoExceptionTranslator; + // Configuration time DB provider. + // This will not be available after configuration has been done. + private static IDbProvider configTimeDbProvider; + #endregion #region Constants @@ -113,8 +130,6 @@ namespace Spring.Data.NHibernate protected static readonly ILog log = LogManager.GetLogger(typeof (LocalSessionFactoryObject)); - - #endregion #region Constructor (s) @@ -224,8 +239,52 @@ namespace Spring.Data.NHibernate set { exposeTransactionAwareSessionFactory = value; } get { return exposeTransactionAwareSessionFactory; } } - + + /// + /// Set a NHibernate entity interceptor that allows to inspect and change + /// property values before writing to and reading from the database. + /// Will get applied to any new Session created by this factory. + ///

Such an interceptor can either be set at the SessionFactory level, i.e. on + /// LocalSessionFactoryObject, or at the Session level, i.e. on HibernateTemplate, + /// HibernateInterceptor, and HibernateTransactionManager. It's preferable to set + /// it on LocalSessionFactoryObject or HibernateTransactionManager to avoid repeated + /// configuration and guarantee consistent behavior in transactions.

+ ///
+ /// + /// + /// + public IInterceptor EntityInterceptor + { + set { this.entityInterceptor = value; } + } + + /// + /// Set a Hibernate NamingStrategy for the SessionFactory, determining the + /// physical column and table names given the info in the mapping document. + /// + /// + public INamingStrategy NamingStrategy + { + set { this.namingStrategy = value; } + } + + /// + /// Specify the Hibernate type definitions to register with the SessionFactory, + /// as Spring IObjectDefinition instances. This is an alternative to specifying + /// <typedef> elements in Hibernate mapping files. + ///

Unfortunately, Hibernate itself does not define a complete object that + /// represents a type definition, hence the need for Spring's TypeDefinitionBean.

+ /// @see TypeDefinitionBean + /// @see org.hibernate.cfg.Mappings#addTypeDef(String, String, java.util.Properties) + ///
+ public IObjectDefinition[] TypeDefinitions + { + set { this.typeDefinitions = value; } + } + + + /// /// Specify the NHibernate FilterDefinitions to register with the SessionFactory. /// This is an alternative to specifying <filter-def> elements in /// Hibernate mapping files. @@ -241,6 +300,51 @@ namespace Spring.Data.NHibernate set { this.filterDefinitions = value; } } + /// + /// Specify the cache strategies for entities (persistent classes or named entities). + /// This configuration setting corresponds to the <class-cache> entry + /// in the "hibernate.cfg.xml" configuration format. + ///

For example: + ///

+        /// <property name="entityCacheStrategies">
+        ///   <props>
+        ///     <prop key="MyCompany.Customer">read-write</prop>
+        ///     <prop key="MyCompany.Product">read-only,myRegion</prop>
+        ///   </props>
+        /// </property>
+ ///

+ /// Note that appending a cache region name (with a comma separator) is only + /// supported on Hibernate 3.1, where this functionality is publically available. + ///
+ /// + public Properties EntityCacheStrategies + { + set { this.entityCacheStrategies = value; } + } + + /// + /// Specify the cache strategies for persistent collections (with specific roles). + /// This configuration setting corresponds to the <collection-cache> entry + /// in the "hibernate.cfg.xml" configuration format. + ///

For example: + ///

+        /// <property name="CollectionCacheStrategies">
+        ///   <props>
+        ///     <prop key="MyCompany.Order.Items">read-write</prop>
+        ///     <prop key="MyCompany.Product.Categories">read-only,myRegion</prop>
+        ///   </props>
+        /// </property>
+ ///

+ /// Note that appending a cache region name (with a comma separator) is only + /// supported on Hibernate 3.1, where this functionality is publically available. + /// + ///
+ public Properties CollectionCacheStrategies + { + set { this.collectionCacheStrategies = value; } + } + + /// /// Specify the NHibernate event listeners to register, with listener types /// as keys and listener objects as values. @@ -314,7 +418,7 @@ namespace Spring.Data.NHibernate /// Return the type or subclass. /// /// The type created by this factory - public System.Type ObjectType + public Type ObjectType { get { @@ -328,10 +432,7 @@ namespace Spring.Data.NHibernate /// true public bool IsSingleton { - get - { - return true; - } + get { return true; } } /// @@ -343,13 +444,11 @@ namespace Spring.Data.NHibernate // Create Configuration instance. Configuration config = NewConfiguration(); - if (this.dbProvider != null) { - config.SetProperty(Environment.ConnectionString, - dbProvider.ConnectionString); + config.SetProperty(Environment.ConnectionString, dbProvider.ConnectionString); config.SetProperty(Environment.ConnectionProvider, typeof(DbProviderWrapper).AssemblyQualifiedName); - + configTimeDbProvider = this.dbProvider; } if (ExposeTransactionAwareSessionFactory) @@ -357,13 +456,46 @@ namespace Spring.Data.NHibernate // Set ICurrentSessionContext implementation, // providing the Spring-managed ISession s current Session. // Can be overridden by a custom value for the corresponding Hibernate property -#if NH_2_1 - config.SetProperty(Environment.CurrentSessionContextClass, "Spring.Data.NHibernate.SpringSessionContext, Spring.Data.NHibernate21"); -#else - config.SetProperty(Environment.CurrentSessionContextClass, "Spring.Data.NHibernate.SpringSessionContext, Spring.Data.NHibernate20"); -#endif + config.SetProperty(Environment.CurrentSessionContextClass, typeof(SpringSessionContext).AssemblyQualifiedName); } + if (this.entityInterceptor != null) + { + // Set given entity interceptor at SessionFactory level. + config.SetInterceptor(this.entityInterceptor); + } + + if (this.namingStrategy != null) + { + // Pass given naming strategy to Hibernate Configuration. + config.SetNamingStrategy(this.namingStrategy); + } + +#if NH_2_1 + if (this.typeDefinitions != null) + { + // Register specified Hibernate type definitions. + IDictionary typedProperties = new Dictionary(); + foreach (DictionaryEntry entry in hibernateProperties) + { + typedProperties.Add((string) entry.Key, (string) entry.Value); + } + + Dialect dialect = Dialect.GetDialect(typedProperties); + Mappings mappings = config.CreateMappings(dialect); + for (int i = 0; i < this.typeDefinitions.Length; i++) + { + IObjectDefinition typeDef = this.typeDefinitions[i]; + Dictionary typedParamMap = new Dictionary(); + foreach (DictionaryEntry entry in typeDef.PropertyValues) + { + typedParamMap.Add((string) entry.Key, (string) entry.Value); + } + mappings.AddTypeDef(typeDef.ObjectTypeName, typeDef.ObjectTypeName, typedParamMap); + } + } +#endif + if (this.filterDefinitions != null) { // Register specified NHibernate FilterDefinitions. @@ -426,9 +558,43 @@ namespace Spring.Data.NHibernate // for availability of the mapping information in further processing. PostProcessMappings(config); config.BuildMappings(); -#endif - // TODO: entityCacheStrategies and collectionCacheStrategies + if (this.entityCacheStrategies != null) + { + // Register cache strategies for mapped entities. + foreach (string className in this.entityCacheStrategies.Keys) + { + String[] strategyAndRegion = StringUtils.CommaDelimitedListToStringArray(this.entityCacheStrategies.GetProperty(className)); + if (strategyAndRegion.Length > 1) + { + config.SetCacheConcurrencyStrategy(className, strategyAndRegion[0], strategyAndRegion[1]); + } + else if (strategyAndRegion.Length > 0) + { + config.SetCacheConcurrencyStrategy(className, strategyAndRegion[0]); + } + } + } + + if (this.collectionCacheStrategies != null) + { + // Register cache strategies for mapped collections. + foreach (string collRole in collectionCacheStrategies.Keys) + { + string[] strategyAndRegion = StringUtils.CommaDelimitedListToStringArray(this.collectionCacheStrategies.GetProperty(collRole)); + if (strategyAndRegion.Length > 1) + { + throw new Exception("Collection cache concurrency strategy region definition not supported yet"); + //config.SetCollectionCacheConcurrencyStrategy(collRole, strategyAndRegion[0], strategyAndRegion[1]); + } + else if (strategyAndRegion.Length > 0) + { + config.SetCollectionCacheConcurrencyStrategy(collRole, strategyAndRegion[0]); + } + } + } + +#endif if (this.eventListeners != null) { @@ -463,7 +629,8 @@ namespace Spring.Data.NHibernate } } - +#if NH_2_1 +#endif // Perform custom post-processing in subclasses. PostProcessConfiguration(config); @@ -473,6 +640,9 @@ namespace Spring.Data.NHibernate this.sessionFactory = NewSessionFactory(config); AfterSessionFactoryCreation(); + + // set config time DB provider back to null + configTimeDbProvider = null; } /// @@ -714,7 +884,7 @@ namespace Spring.Data.NHibernate protected virtual ISessionFactory NewSessionFactory(Configuration config) { ISessionFactory sf = config.BuildSessionFactory(); - ISessionFactoryImplementor sfImplementor = sf as ISessionFactoryImplementor; + ISessionFactoryImplementor sfImplementor = sf as ISessionFactoryImplementor; if (sfImplementor != null) { @@ -752,7 +922,20 @@ namespace Spring.Data.NHibernate public override IDbConnection GetConnection() { - IDbConnection dbCon = _dbProvider.CreateConnection(); + IDbProvider provider = _dbProvider; + if (provider == null && configTimeDbProvider != null) + { + // NH 2.1 has a need to access db provider before + // it has been set "the natural way" (it gets the DB's reserved words) + // allow it via configuration time db provider reference + provider = configTimeDbProvider; + } + + if (provider == null) + { + throw new Exception("There was no DB provider available, unable to create connection"); + } + IDbConnection dbCon = provider.CreateConnection(); dbCon.Open(); return dbCon; } @@ -814,9 +997,7 @@ namespace Spring.Data.NHibernate protected virtual DataAccessException ConvertAdoAccessException(ADOException ex) { - string sqlString = (ex.SqlString != null) - ? ex.SqlString.ToString() - : string.Empty; + string sqlString = (ex.SqlString != null) ? ex.SqlString : string.Empty; return AdoExceptionTranslator.Translate( "Hibernate operation: " + ex.Message, sqlString, ex.InnerException); diff --git a/src/Spring/Spring.Data.NHibernate21/Spring.Data.NHibernate21.2008.csproj b/src/Spring/Spring.Data.NHibernate21/Spring.Data.NHibernate21.2008.csproj index 1dabcf85..bf01e713 100644 --- a/src/Spring/Spring.Data.NHibernate21/Spring.Data.NHibernate21.2008.csproj +++ b/src/Spring/Spring.Data.NHibernate21/Spring.Data.NHibernate21.2008.csproj @@ -2,7 +2,7 @@ Debug AnyCPU - 9.0.30729 + 9.0.21022 2.0 {E57B4652-0231-49CB-B058-87E10EFE540D} Library @@ -20,7 +20,9 @@ prompt 4 Spring.Data.NHibernate21.xml - true + false + + pdbonly diff --git a/test/Spring/Spring.Aop.Tests/Aspects/Cache/CacheAspectIntegrationTests.cs b/test/Spring/Spring.Aop.Tests/Aspects/Cache/CacheAspectIntegrationTests.cs index 77add864..c976079c 100644 --- a/test/Spring/Spring.Aop.Tests/Aspects/Cache/CacheAspectIntegrationTests.cs +++ b/test/Spring/Spring.Aop.Tests/Aspects/Cache/CacheAspectIntegrationTests.cs @@ -80,6 +80,8 @@ namespace Spring.Aspects.Cache store.DeleteAll(); Assert.AreEqual(0, cache.Count); + + store.GetAllNoCacheKey(); } #if NET_2_0 @@ -111,6 +113,7 @@ namespace Spring.Aspects.Cache public interface IInventorStore { IList GetAll(); + IList GetAllNoCacheKey(); Inventor Load(string name); void Save(Inventor inventor); void Delete(Inventor inventor); @@ -135,6 +138,13 @@ namespace Spring.Aspects.Cache return new ArrayList(inventors.Values); } + + [CacheResultItems(CacheName = "inventors")] + public IList GetAllNoCacheKey() + { + return new ArrayList(inventors.Values); + } + [CacheResult("inventors", "#name")] public Inventor Load(string name) { diff --git a/test/Spring/Spring.Data.NHibernate.Integration.Tests/Data/NHibernate/MultipleDbTests.cs b/test/Spring/Spring.Data.NHibernate.Integration.Tests/Data/NHibernate/MultipleDbTests.cs index c792f32a..3df4d555 100644 --- a/test/Spring/Spring.Data.NHibernate.Integration.Tests/Data/NHibernate/MultipleDbTests.cs +++ b/test/Spring/Spring.Data.NHibernate.Integration.Tests/Data/NHibernate/MultipleDbTests.cs @@ -91,7 +91,7 @@ namespace Spring.Data.NHibernate Assert.IsNotNull(ctx, "Application Context is null"); mgr = ctx["accountManager"] as IAccountManager; - Assert.IsNotNull(mgr, "accountManager not of expected type. Type = " + ctx["accountManager"].GetType().ToString()); + Assert.IsNotNull(mgr, "accountManager not of expected type. Type = " + ctx["accountManager"].GetType()); mgr.DoTransfer(transferAmount, transferAmount); } diff --git a/test/Spring/Spring.Data.NHibernate.Integration.Tests/Data/NHibernate/NHTestObjectDao.cs b/test/Spring/Spring.Data.NHibernate.Integration.Tests/Data/NHibernate/NHTestObjectDao.cs index 9f549b97..3490c7b7 100644 --- a/test/Spring/Spring.Data.NHibernate.Integration.Tests/Data/NHibernate/NHTestObjectDao.cs +++ b/test/Spring/Spring.Data.NHibernate.Integration.Tests/Data/NHibernate/NHTestObjectDao.cs @@ -67,7 +67,7 @@ namespace Spring.Data.NHibernate public TestObject FindByName(string name) { IList result = HibernateTemplate.Find( - "select from TestObject as to where to.Name=?", + "from TestObject to where to.Name=?", name, TypeFactory.GetStringType(50) ); diff --git a/test/Spring/Spring.Data.NHibernate.Tests/Data/NHibernate/LocalSessionFactoryObjectTests.cs b/test/Spring/Spring.Data.NHibernate.Tests/Data/NHibernate/LocalSessionFactoryObjectTests.cs index e470a3ac..43fa6730 100644 --- a/test/Spring/Spring.Data.NHibernate.Tests/Data/NHibernate/LocalSessionFactoryObjectTests.cs +++ b/test/Spring/Spring.Data.NHibernate.Tests/Data/NHibernate/LocalSessionFactoryObjectTests.cs @@ -23,7 +23,12 @@ using System.Collections; using System.IO; using NHibernate; +using NHibernate.ByteCode.LinFu; using NHibernate.Cfg; +using NHibernate.Connection; +using NHibernate.Dialect; +using NHibernate.Driver; + using NUnit.Framework; using Spring.Data.Common; @@ -43,27 +48,26 @@ namespace Spring.Data.NHibernate public void LocalSessionFactoryObjectWithDbProviderAndProperties() { IDbProvider dbProvider = DbProviderFactory.GetDbProvider("System.Data.SqlClient"); - dbProvider.ConnectionString = "badConnectionString"; + dbProvider.ConnectionString = "Data Source=(local);Database=Spring;Trusted_Connection=false"; LocalSessionFactoryObject sfo = new LocalSessionFactoryObject(); sfo.DbProvider = dbProvider; IDictionary properties = new Hashtable(); - properties.Add(Environment.Dialect, "NHibernate.Dialect.MsSql2000Dialect"); - properties.Add(Environment.ConnectionDriver, "NHibernate.Driver.SqlClientDriver"); - properties.Add(Environment.ConnectionProvider, "NHibernate.Connection.DriverConnectionProvider"); + properties.Add(Environment.Dialect, typeof(MsSql2000Dialect).AssemblyQualifiedName); + properties.Add(Environment.ConnectionDriver, typeof(SqlClientDriver).AssemblyQualifiedName); + properties.Add(Environment.ConnectionProvider, typeof(DriverConnectionProvider).AssemblyQualifiedName); #if NH_2_1 - properties.Add(Environment.ProxyFactoryFactoryClass, "NHibernate.ByteCode.Castle.ProxyFactoryFactory, NHibernate.ByteCode.Castle"); + properties.Add(Environment.ProxyFactoryFactoryClass, typeof(ProxyFactoryFactory).AssemblyQualifiedName); #endif sfo.HibernateProperties = properties; sfo.AfterPropertiesSet(); Assert.IsNotNull(sfo.Configuration); - Assert.AreEqual(sfo.Configuration.Properties[Environment.ConnectionProvider], - "NHibernate.Connection.DriverConnectionProvider"); - Assert.AreEqual(sfo.Configuration.Properties[Environment.Dialect], - "NHibernate.Dialect.MsSql2000Dialect"); + Assert.AreEqual(sfo.Configuration.Properties[Environment.ConnectionProvider], typeof(DriverConnectionProvider).AssemblyQualifiedName); + Assert.AreEqual(sfo.Configuration.Properties[Environment.ConnectionDriver], typeof(SqlClientDriver).AssemblyQualifiedName); + Assert.AreEqual(sfo.Configuration.Properties[Environment.Dialect], typeof(MsSql2000Dialect).AssemblyQualifiedName); #if NH_2_1 - Assert.AreEqual(sfo.Configuration.Properties[Environment.ProxyFactoryFactoryClass], "NHibernate.ByteCode.Castle.ProxyFactoryFactory, NHibernate.ByteCode.Castle"); + Assert.AreEqual(sfo.Configuration.Properties[Environment.ProxyFactoryFactoryClass], typeof(ProxyFactoryFactory).AssemblyQualifiedName); #endif } @@ -83,7 +87,7 @@ namespace Spring.Data.NHibernate { LocalSessionFactoryObject sfo = new LocalSessionFactoryObject(); IDictionary properties = new Hashtable(); - properties.Add(Environment.Dialect, "NHibernate.Dialect.MsSql2000Dialect"); + properties.Add(Environment.Dialect, typeof(MsSql2000Dialect).AssemblyQualifiedName); properties.Add(Environment.ConnectionProvider, "myClass"); sfo.HibernateProperties = properties; sfo.AfterPropertiesSet(); diff --git a/test/Spring/Spring.Data.NHibernate21.Integration.Tests/Data/NHibernate/MultipleDbTests.xml b/test/Spring/Spring.Data.NHibernate21.Integration.Tests/Data/NHibernate/MultipleDbTests.xml index 108b6758..a7a84679 100644 --- a/test/Spring/Spring.Data.NHibernate21.Integration.Tests/Data/NHibernate/MultipleDbTests.xml +++ b/test/Spring/Spring.Data.NHibernate21.Integration.Tests/Data/NHibernate/MultipleDbTests.xml @@ -4,11 +4,11 @@ + connectionString="Data Source=(local);Database=Spring;User ID=springqa;Password=springqa;Trusted_Connection=False"/> + connectionString="Data Source=(local);Database=Spring;User ID=springqa;Password=springqa;Trusted_Connection=False"/> @@ -31,7 +31,7 @@ value="NHibernate.Driver.SqlClientDriver"/> + value="NHibernate.ByteCode.LinFu.ProxyFactoryFactory, NHibernate.ByteCode.LinFu"/> @@ -58,7 +58,7 @@ value="NHibernate.Driver.SqlClientDriver"/> + value="NHibernate.ByteCode.LinFu.ProxyFactoryFactory, NHibernate.ByteCode.LinFu"/> diff --git a/test/Spring/Spring.Data.NHibernate21.Integration.Tests/Data/NHibernate/NHDAOTests.xml b/test/Spring/Spring.Data.NHibernate21.Integration.Tests/Data/NHibernate/NHDAOTests.xml index 815c75c9..65820aa1 100644 --- a/test/Spring/Spring.Data.NHibernate21.Integration.Tests/Data/NHibernate/NHDAOTests.xml +++ b/test/Spring/Spring.Data.NHibernate21.Integration.Tests/Data/NHibernate/NHDAOTests.xml @@ -4,7 +4,7 @@ + connectionString="Data Source=(local);Database=Spring;User ID=springqa;Password=springqa;Trusted_Connection=False"/> + value="NHibernate.ByteCode.LinFu.ProxyFactoryFactory, NHibernate.ByteCode.LinFu"/> diff --git a/test/Spring/Spring.Data.NHibernate21.Integration.Tests/Data/NHibernate/templateTests.xml b/test/Spring/Spring.Data.NHibernate21.Integration.Tests/Data/NHibernate/templateTests.xml index b6cc70a6..d14de685 100644 --- a/test/Spring/Spring.Data.NHibernate21.Integration.Tests/Data/NHibernate/templateTests.xml +++ b/test/Spring/Spring.Data.NHibernate21.Integration.Tests/Data/NHibernate/templateTests.xml @@ -5,7 +5,7 @@ + connectionString="Data Source=(local);Database=Spring;User ID=springqa;Password=springqa;Trusted_Connection=False"/> @@ -54,7 +54,7 @@ value="NHibernate.Driver.SqlClientDriver"/> + value="NHibernate.ByteCode.LinFu.ProxyFactoryFactory, NHibernate.ByteCode.LinFu"/> diff --git a/test/Spring/Spring.Data.NHibernate21.Integration.Tests/Spring.Data.NHibernate21.Integration.Tests.2005.csproj b/test/Spring/Spring.Data.NHibernate21.Integration.Tests/Spring.Data.NHibernate21.Integration.Tests.2005.csproj index 2a93ba19..8225b126 100644 --- a/test/Spring/Spring.Data.NHibernate21.Integration.Tests/Spring.Data.NHibernate21.Integration.Tests.2005.csproj +++ b/test/Spring/Spring.Data.NHibernate21.Integration.Tests/Spring.Data.NHibernate21.Integration.Tests.2005.csproj @@ -28,10 +28,6 @@ 4 - - False - ..\..\..\lib\NHibernate21\net\2.0\Castle.DynamicProxy.dll - False ..\..\..\lib\Net\2.0\Common.Logging.dll @@ -40,6 +36,10 @@ False ..\..\..\lib\NHibernate21\net\2.0\Iesi.Collections.dll + + False + ..\..\..\lib\NHibernate21\net\2.0\LinFu.DynamicProxy.dll + False ..\..\..\lib\NHibernate21\net\2.0\log4net.dll @@ -48,9 +48,9 @@ False ..\..\..\lib\NHibernate21\net\2.0\NHibernate.dll - + False - ..\..\..\lib\NHibernate21\net\2.0\NHibernate.ByteCode.Castle.dll + ..\..\..\lib\NHibernate21\net\2.0\NHibernate.ByteCode.LinFu.dll False diff --git a/test/Spring/Spring.Data.NHibernate21.Integration.Tests/Spring.Data.NHibernate21.Integration.Tests.2008.csproj b/test/Spring/Spring.Data.NHibernate21.Integration.Tests/Spring.Data.NHibernate21.Integration.Tests.2008.csproj index 996d2612..c0056cfd 100644 --- a/test/Spring/Spring.Data.NHibernate21.Integration.Tests/Spring.Data.NHibernate21.Integration.Tests.2008.csproj +++ b/test/Spring/Spring.Data.NHibernate21.Integration.Tests/Spring.Data.NHibernate21.Integration.Tests.2008.csproj @@ -2,7 +2,7 @@ Debug AnyCPU - 9.0.30729 + 9.0.21022 2.0 {4A07E150-ED90-407C-8CAD-4760444DDFD9} Library @@ -28,10 +28,6 @@ 4 - - False - ..\..\..\lib\NHibernate21\net\2.0\Castle.DynamicProxy.dll - False ..\..\..\lib\Net\2.0\Common.Logging.dll @@ -40,6 +36,10 @@ False ..\..\..\lib\NHibernate21\net\2.0\Iesi.Collections.dll + + False + ..\..\..\lib\NHibernate21\net\2.0\LinFu.DynamicProxy.dll + False ..\..\..\lib\NHibernate21\net\2.0\log4net.dll @@ -48,9 +48,9 @@ False ..\..\..\lib\NHibernate21\net\2.0\NHibernate.dll - + False - ..\..\..\lib\NHibernate21\net\2.0\NHibernate.ByteCode.Castle.dll + ..\..\..\lib\NHibernate21\net\2.0\NHibernate.ByteCode.LinFu.dll False diff --git a/test/Spring/Spring.Data.NHibernate21.Tests/Data/NHibernate/Config/AopConfiguration.xml b/test/Spring/Spring.Data.NHibernate21.Tests/Data/NHibernate/Config/AopConfiguration.xml index 10b966a6..5ecd9d09 100644 --- a/test/Spring/Spring.Data.NHibernate21.Tests/Data/NHibernate/Config/AopConfiguration.xml +++ b/test/Spring/Spring.Data.NHibernate21.Tests/Data/NHibernate/Config/AopConfiguration.xml @@ -8,7 +8,7 @@ + connectionString="Data Source=(local);Initial Catalog=Spring;Persist Security Info=True;User ID=springqa;Password=springqa;"/> @@ -28,7 +28,7 @@ value="NHibernate.Driver.SqlClientDriver"/> + value="NHibernate.ByteCode.LinFu.ProxyFactoryFactory, NHibernate.ByteCode.LinFu" /> diff --git a/test/Spring/Spring.Data.NHibernate21.Tests/Data/NHibernate/Config/AopConfigurationTxPointcut.xml b/test/Spring/Spring.Data.NHibernate21.Tests/Data/NHibernate/Config/AopConfigurationTxPointcut.xml index 8fcdcb62..cff80ec4 100644 --- a/test/Spring/Spring.Data.NHibernate21.Tests/Data/NHibernate/Config/AopConfigurationTxPointcut.xml +++ b/test/Spring/Spring.Data.NHibernate21.Tests/Data/NHibernate/Config/AopConfigurationTxPointcut.xml @@ -9,7 +9,7 @@ + connectionString="Data Source=(local);Initial Catalog=Spring;Persist Security Info=True;User ID=springqa;Password=springqa;"/> @@ -29,7 +29,7 @@ value="NHibernate.Driver.SqlClientDriver"/> + value="NHibernate.ByteCode.LinFu.ProxyFactoryFactory, NHibernate.ByteCode.LinFu" /> diff --git a/test/Spring/Spring.Data.NHibernate21.Tests/Spring.Data.NHibernate21.Tests.2005.csproj b/test/Spring/Spring.Data.NHibernate21.Tests/Spring.Data.NHibernate21.Tests.2005.csproj index eadd4e3b..b717d3d4 100644 --- a/test/Spring/Spring.Data.NHibernate21.Tests/Spring.Data.NHibernate21.Tests.2005.csproj +++ b/test/Spring/Spring.Data.NHibernate21.Tests/Spring.Data.NHibernate21.Tests.2005.csproj @@ -28,10 +28,6 @@ 4 - - False - ..\..\..\lib\NHibernate21\net\2.0\Castle.DynamicProxy.dll - False ..\..\..\lib\Net\2.0\Common.Logging.dll @@ -40,6 +36,10 @@ False ..\..\..\lib\NHibernate21\net\2.0\Iesi.Collections.dll + + False + ..\..\..\lib\NHibernate21\net\2.0\LinFu.DynamicProxy.dll + False ..\..\..\lib\NHibernate21\net\2.0\log4net.dll @@ -48,9 +48,9 @@ False ..\..\..\lib\NHibernate21\net\2.0\NHibernate.dll - + False - ..\..\..\lib\NHibernate21\net\2.0\NHibernate.ByteCode.Castle.dll + ..\..\..\lib\NHibernate21\net\2.0\NHibernate.ByteCode.LinFu.dll False diff --git a/test/Spring/Spring.Data.NHibernate21.Tests/Spring.Data.NHibernate21.Tests.2008.csproj b/test/Spring/Spring.Data.NHibernate21.Tests/Spring.Data.NHibernate21.Tests.2008.csproj index 8d36d4bb..eb1272b5 100644 --- a/test/Spring/Spring.Data.NHibernate21.Tests/Spring.Data.NHibernate21.Tests.2008.csproj +++ b/test/Spring/Spring.Data.NHibernate21.Tests/Spring.Data.NHibernate21.Tests.2008.csproj @@ -2,7 +2,7 @@ Debug AnyCPU - 9.0.30729 + 9.0.21022 2.0 {90FEE979-7367-4542-BCCB-BF634E04A9D3} Library @@ -28,10 +28,6 @@ 4 - - False - ..\..\..\lib\NHibernate21\net\2.0\Castle.DynamicProxy2.dll - False ..\..\..\lib\Net\2.0\Common.Logging.dll @@ -40,6 +36,10 @@ False ..\..\..\lib\NHibernate21\net\2.0\Iesi.Collections.dll + + False + ..\..\..\lib\NHibernate21\net\2.0\LinFu.DynamicProxy.dll + False ..\..\..\lib\NHibernate21\net\2.0\log4net.dll @@ -48,9 +48,9 @@ False ..\..\..\lib\NHibernate21\net\2.0\NHibernate.dll - + False - ..\..\..\lib\NHibernate21\net\2.0\NHibernate.ByteCode.Castle.dll + ..\..\..\lib\NHibernate21\net\2.0\NHibernate.ByteCode.LinFu.dll False