From: <fab...@us...> - 2011-04-13 17:02:49
|
Revision: 5685 http://nhibernate.svn.sourceforge.net/nhibernate/?rev=5685&view=rev Author: fabiomaulo Date: 2011-04-13 17:02:42 +0000 (Wed, 13 Apr 2011) Log Message: ----------- Reverted naming conventions (perhaps we should be far away to do it) Modified Paths: -------------- trunk/nhibernate/src/NHibernate/Mapping/ByCode/ConventionModelMapper.cs trunk/nhibernate/src/NHibernate.Test/NHibernate.Test.csproj Removed Paths: ------------- trunk/nhibernate/src/NHibernate.Test/MappingByCode/ConventionModelMapperTests/JoinedSubclassKeyAsRootIdColumnTest.cs trunk/nhibernate/src/NHibernate.Test/MappingByCode/ConventionModelMapperTests/ManyToManyInCollectionTableTests.cs trunk/nhibernate/src/NHibernate.Test/MappingByCode/ConventionModelMapperTests/ManyToManyKeyIdColumnTests.cs trunk/nhibernate/src/NHibernate.Test/MappingByCode/ConventionModelMapperTests/PropertyColumnNameTests.cs Modified: trunk/nhibernate/src/NHibernate/Mapping/ByCode/ConventionModelMapper.cs =================================================================== --- trunk/nhibernate/src/NHibernate/Mapping/ByCode/ConventionModelMapper.cs 2011-04-13 11:48:08 UTC (rev 5684) +++ trunk/nhibernate/src/NHibernate/Mapping/ByCode/ConventionModelMapper.cs 2011-04-13 17:02:42 UTC (rev 5685) @@ -15,78 +15,8 @@ protected virtual void AppendDefaultEvents() { - BeforeMapJoinedSubclass += JoinedSubclassKeyAsRootIdColumn; - BeforeMapProperty += PropertyColumnName; - BeforeMapList += ManyToManyInCollectionTable; - BeforeMapBag += ManyToManyInCollectionTable; - BeforeMapIdBag += ManyToManyInCollectionTable; - BeforeMapSet += ManyToManyInCollectionTable; - BeforeMapMap += ManyToManyInCollectionTable; - - BeforeMapList += ManyToManyKeyIdColumn; - BeforeMapBag += ManyToManyKeyIdColumn; - BeforeMapIdBag += ManyToManyKeyIdColumn; - BeforeMapSet += ManyToManyKeyIdColumn; - BeforeMapMap += ManyToManyKeyIdColumn; } - protected void ManyToManyKeyIdColumn(IModelInspector modelInspector, PropertyPath member, ICollectionPropertiesMapper collectionCustomizer) - { - System.Type propertyType = member.LocalMember.GetPropertyOrFieldType(); - - System.Type fromMany = member.GetContainerEntity(modelInspector); - System.Type toMany = propertyType.DetermineCollectionElementOrDictionaryValueType(); - if (!modelInspector.IsEntity(toMany)) - { - // does not apply when the relation is on the key of the dictionary - return; - } - - collectionCustomizer.Key(km => km.Column(fromMany.Name + "Id")); - } - - protected void ManyToManyInCollectionTable(IModelInspector modelInspector, PropertyPath member, ICollectionPropertiesMapper collectionCustomizer) - { - System.Type propertyType = member.LocalMember.GetPropertyOrFieldType(); - - System.Type fromMany = member.GetContainerEntity(modelInspector); - System.Type toMany = propertyType.DetermineCollectionElementOrDictionaryValueType(); - if(!modelInspector.IsEntity(toMany)) - { - // does not apply when the relation is on the key of the dictionary - // Note: a dictionary may have relation with 3 entities; in this handler we are covering only relations on values - return; - } - var relation = new[] { fromMany, toMany }; - var twoEntitiesNames = (from relationOn in relation orderby relationOn.Name select relationOn.Name).ToArray(); - - collectionCustomizer.Table(string.Format("{0}To{1}", twoEntitiesNames[0], twoEntitiesNames[1])); - } - - protected void PropertyColumnName(IModelInspector modelInspector, PropertyPath member, IPropertyMapper propertyCustomizer) - { - if (member.PreviousPath == null || member.LocalMember == null) - { - return; - } - if (member.PreviousPath.LocalMember.GetPropertyOrFieldType().IsGenericCollection()) - { - return; - } - - var pathToMap = member.DepureFirstLevelIfCollection(); - propertyCustomizer.Column(pathToMap.ToColumnName()); - } - - protected void JoinedSubclassKeyAsRootIdColumn(IModelInspector modelInspector, System.Type type, IJoinedSubclassAttributesMapper joinedSubclassCustomizer) - { - var idMember = type.GetProperties().Cast<MemberInfo>().Concat(type.GetFields()).FirstOrDefault(mi => modelInspector.IsPersistentId(mi.GetMemberFromDeclaringType())); - if (idMember != null) - { - joinedSubclassCustomizer.Key(km => km.Column(idMember.Name)); - } - } - protected SimpleModelInspector SimpleModelInspector { get { return (SimpleModelInspector) base.ModelInspector; } Deleted: trunk/nhibernate/src/NHibernate.Test/MappingByCode/ConventionModelMapperTests/JoinedSubclassKeyAsRootIdColumnTest.cs =================================================================== --- trunk/nhibernate/src/NHibernate.Test/MappingByCode/ConventionModelMapperTests/JoinedSubclassKeyAsRootIdColumnTest.cs 2011-04-13 11:48:08 UTC (rev 5684) +++ trunk/nhibernate/src/NHibernate.Test/MappingByCode/ConventionModelMapperTests/JoinedSubclassKeyAsRootIdColumnTest.cs 2011-04-13 17:02:42 UTC (rev 5685) @@ -1,53 +0,0 @@ -using System.Linq; -using NHibernate.Mapping.ByCode; -using NUnit.Framework; -using SharpTestsEx; - -namespace NHibernate.Test.MappingByCode.ConventionModelMapperTests -{ - public class JoinedSubclassKeyAsRootIdColumnTest - { - private class MyClass - { - public int MyId { get; set; } - public int HisId { get; set; } - } - - private class Inherited : MyClass - { - } - - [Test] - public void WhenBaseIsIdThenUseId() - { - var mapper = new ConventionModelMapper(); - mapper.Class<MyClass>(map=> map.Id(x=> x.MyId)); - var mapping = mapper.CompileMappingFor(new[] { typeof(Inherited), typeof(MyClass) }); - var hbmJoinedClass = mapping.JoinedSubclasses[0]; - - hbmJoinedClass.key.Columns.Single().name.Should().Be("MyId"); - } - - [Test] - public void WhenBaseIsPoIdThenUsePoId() - { - var mapper = new ConventionModelMapper(); - mapper.Class<MyClass>(map => map.Id(x => x.HisId)); - var mapping = mapper.CompileMappingFor(new[] { typeof(Inherited), typeof(MyClass) }); - var hbmJoinedClass = mapping.JoinedSubclasses[0]; - - hbmJoinedClass.key.Columns.Single().name.Should().Be("HisId"); - } - - [Test] - public void WhenNoPoidMemberThenDoesNotSet() - { - var mapper = new ConventionModelMapper(); - mapper.Class<MyClass>(map => { }); - var mapping = mapper.CompileMappingFor(new[] { typeof(Inherited), typeof(MyClass) }); - var hbmJoinedClass = mapping.JoinedSubclasses[0]; - - hbmJoinedClass.key.Columns.Single().name.Should().Not.Be("MyId").And.Not.Be("HisId"); - } - } -} \ No newline at end of file Deleted: trunk/nhibernate/src/NHibernate.Test/MappingByCode/ConventionModelMapperTests/ManyToManyInCollectionTableTests.cs =================================================================== --- trunk/nhibernate/src/NHibernate.Test/MappingByCode/ConventionModelMapperTests/ManyToManyInCollectionTableTests.cs 2011-04-13 11:48:08 UTC (rev 5684) +++ trunk/nhibernate/src/NHibernate.Test/MappingByCode/ConventionModelMapperTests/ManyToManyInCollectionTableTests.cs 2011-04-13 17:02:42 UTC (rev 5685) @@ -1,101 +0,0 @@ -using System.Collections.Generic; -using System.Linq; -using NHibernate.Cfg.MappingSchema; -using NHibernate.Mapping.ByCode; -using NUnit.Framework; -using SharpTestsEx; - -namespace NHibernate.Test.MappingByCode.ConventionModelMapperTests -{ - public class ManyToManyInCollectionTableTests - { - private class MyClass - { - public int Id { get; set; } - public ICollection<MyBidirect> MyBidirects { get; set; } - public IDictionary<MyBidirect, string> MapKey { get; set; } - public IDictionary<string, MyBidirect> MapValue { get; set; } - public MyComponent MyComponent { get; set; } - } - - private class MyComponent - { - public ICollection<MyBidirect> MyBidirects { get; set; } - } - - private class MyBidirect - { - public int Id { get; set; } - public ICollection<MyClass> MyClasses { get; set; } - } - - private HbmMapping GetModelMapping() - { - var mapper = new ConventionModelMapper(); - mapper.Class<MyClass>(map => - { - map.Bag(mc => mc.MyBidirects, c => { }, rel => rel.ManyToMany()); - map.Map(mc => mc.MapKey, c => { }, mk => mk.ManyToMany(), mv => { }); - map.Map(mc => mc.MapValue, c => { }, mk => { }, mv => mv.ManyToMany()); - }); - mapper.Class<MyBidirect>(map => - { - map.Bag(mc => mc.MyClasses, c => { }, rel => rel.ManyToMany()); - }); - mapper.Component<MyComponent>(map => - { - map.Bag(mc => mc.MyBidirects, c => { }, rel => rel.ManyToMany()); - }); - return mapper.CompileMappingFor(new[] {typeof (MyClass), typeof (MyBidirect)}); - } - - [Test] - public void WhenManyToManyCollectionThenApplyTableAlphabetical() - { - HbmMapping mapping = GetModelMapping(); - - var hbmMyClass = mapping.RootClasses.Where(x => x.Name.Contains("MyClass")).Single(); - var hbmMyBidirect = mapping.RootClasses.Where(x => x.Name.Contains("MyBidirect")).Single(); - - var hbmBagMyClass = hbmMyClass.Properties.Where(p => p.Name == "MyBidirects").OfType<HbmBag>().Single(); - var hbmBagMyBidirect = hbmMyBidirect.Properties.Where(p => p.Name == "MyClasses").OfType<HbmBag>().Single(); - - hbmBagMyClass.Table.Should().Be("MyBidirectToMyClass"); - hbmBagMyBidirect.Table.Should().Be(hbmBagMyClass.Table); - } - - [Test] - public void WhenRelationDeclaredAsManyToManyForDictionaryKeyThenNoMatch() - { - HbmMapping mapping = GetModelMapping(); - - var hbmMyClass = mapping.RootClasses.Where(x => x.Name.Contains("MyClass")).Single(); - var hbmMapKey = hbmMyClass.Properties.Where(p => p.Name == "MapKey").OfType<HbmMap>().Single(); - - hbmMapKey.Table.Should().Be.Null(); - } - - [Test] - public void WhenRelationDeclaredAsManyToManyForDictionaryValueThenMatch() - { - HbmMapping mapping = GetModelMapping(); - - var hbmMyClass = mapping.RootClasses.Where(x => x.Name.Contains("MyClass")).Single(); - var hbmMapValue = hbmMyClass.Properties.Where(p => p.Name == "MapValue").OfType<HbmMap>().Single(); - - hbmMapValue.Table.Should().Be("MyBidirectToMyClass"); - } - - [Test] - public void WhenManyToManyCollectionInsideComponentThenApplyFromEntityToEntity() - { - HbmMapping mapping = GetModelMapping(); - - var hbmMyClass = mapping.RootClasses.Where(x => x.Name.Contains("MyClass")).Single(); - var hbmMyComponent = hbmMyClass.Properties.Where(p => p.Name == "MyComponent").OfType<HbmComponent>().Single(); - var hbmBagMyClass = hbmMyComponent.Properties.Where(p => p.Name == "MyBidirects").OfType<HbmBag>().Single(); - - hbmBagMyClass.Table.Should().Be("MyBidirectToMyClass"); - } - } -} \ No newline at end of file Deleted: trunk/nhibernate/src/NHibernate.Test/MappingByCode/ConventionModelMapperTests/ManyToManyKeyIdColumnTests.cs =================================================================== --- trunk/nhibernate/src/NHibernate.Test/MappingByCode/ConventionModelMapperTests/ManyToManyKeyIdColumnTests.cs 2011-04-13 11:48:08 UTC (rev 5684) +++ trunk/nhibernate/src/NHibernate.Test/MappingByCode/ConventionModelMapperTests/ManyToManyKeyIdColumnTests.cs 2011-04-13 17:02:42 UTC (rev 5685) @@ -1,101 +0,0 @@ -using System.Collections.Generic; -using System.Linq; -using NHibernate.Cfg.MappingSchema; -using NHibernate.Mapping.ByCode; -using NUnit.Framework; -using SharpTestsEx; - -namespace NHibernate.Test.MappingByCode.ConventionModelMapperTests -{ - public class ManyToManyKeyIdColumnTests - { - private class MyClass - { - public int Id { get; set; } - public ICollection<MyBidirect> MyBidirects { get; set; } - public IDictionary<MyBidirect, string> MapKey { get; set; } - public IDictionary<string, MyBidirect> MapValue { get; set; } - public MyComponent MyComponent { get; set; } - } - - private class MyComponent - { - public ICollection<MyBidirect> MyBidirects { get; set; } - } - - private class MyBidirect - { - public int Id { get; set; } - public ICollection<MyClass> MyClasses { get; set; } - } - - private HbmMapping GetModelMapping() - { - var mapper = new ConventionModelMapper(); - mapper.Class<MyClass>(map => - { - map.Bag(mc => mc.MyBidirects, c => { }, rel => rel.ManyToMany()); - map.Map(mc => mc.MapKey, c => { }, mk => mk.ManyToMany(), mv => { }); - map.Map(mc => mc.MapValue, c => { }, mk => { }, mv => mv.ManyToMany()); - }); - mapper.Class<MyBidirect>(map => - { - map.Bag(mc => mc.MyClasses, c => { }, rel => rel.ManyToMany()); - }); - mapper.Component<MyComponent>(map => - { - map.Bag(mc => mc.MyBidirects, c => { }, rel => rel.ManyToMany()); - }); - return mapper.CompileMappingFor(new[] { typeof(MyClass), typeof(MyBidirect) }); - } - - [Test] - public void WhenManyToManyCollectionThenApplyTableAlphabetical() - { - HbmMapping mapping = GetModelMapping(); - - var hbmMyClass = mapping.RootClasses.Where(x => x.Name.Contains("MyClass")).Single(); - var hbmMyBidirect = mapping.RootClasses.Where(x => x.Name.Contains("MyBidirect")).Single(); - - var hbmBagMyClass = hbmMyClass.Properties.Where(p => p.Name == "MyBidirects").OfType<HbmBag>().Single(); - var hbmBagMyBidirect = hbmMyBidirect.Properties.Where(p => p.Name == "MyClasses").OfType<HbmBag>().Single(); - - hbmBagMyClass.Key.column1.Should().Be("MyClassId"); - hbmBagMyBidirect.Key.column1.Should().Be("MyBidirectId"); - } - - [Test] - public void WhenRelationDeclaredAsManyToManyForDictionaryKeyThenNoMatch() - { - HbmMapping mapping = GetModelMapping(); - - var hbmMyClass = mapping.RootClasses.Where(x => x.Name.Contains("MyClass")).Single(); - var hbmMapKey = hbmMyClass.Properties.Where(p => p.Name == "MapKey").OfType<HbmMap>().Single(); - - hbmMapKey.Key.Columns.Single().name.Should().Not.Be("MyClassId"); - } - - [Test] - public void WhenRelationDeclaredAsManyToManyForDictionaryValueThenMatch() - { - HbmMapping mapping = GetModelMapping(); - - var hbmMyClass = mapping.RootClasses.Where(x => x.Name.Contains("MyClass")).Single(); - var hbmMapValue = hbmMyClass.Properties.Where(p => p.Name == "MapValue").OfType<HbmMap>().Single(); - - hbmMapValue.Key.column1.Should().Be("MyClassId"); - } - - [Test] - public void WhenManyToManyCollectionInsideComponentThenApplyFromEntityToEntity() - { - HbmMapping mapping = GetModelMapping(); - - var hbmMyClass = mapping.RootClasses.Where(x => x.Name.Contains("MyClass")).Single(); - var hbmMyComponent = hbmMyClass.Properties.Where(p => p.Name == "MyComponent").OfType<HbmComponent>().Single(); - var hbmBagMyClass = hbmMyComponent.Properties.Where(p => p.Name == "MyBidirects").OfType<HbmBag>().Single(); - - hbmBagMyClass.Key.column1.Should().Be("MyClassId"); - } - } -} \ No newline at end of file Deleted: trunk/nhibernate/src/NHibernate.Test/MappingByCode/ConventionModelMapperTests/PropertyColumnNameTests.cs =================================================================== --- trunk/nhibernate/src/NHibernate.Test/MappingByCode/ConventionModelMapperTests/PropertyColumnNameTests.cs 2011-04-13 11:48:08 UTC (rev 5684) +++ trunk/nhibernate/src/NHibernate.Test/MappingByCode/ConventionModelMapperTests/PropertyColumnNameTests.cs 2011-04-13 17:02:42 UTC (rev 5685) @@ -1,63 +0,0 @@ -using System.Collections.Generic; -using System.Linq; -using NHibernate.Cfg.MappingSchema; -using NHibernate.Mapping.ByCode; -using NUnit.Framework; -using SharpTestsEx; - -namespace NHibernate.Test.MappingByCode.ConventionModelMapperTests -{ - public class PropertyColumnNameTests - { - private class MyClass - { - public int Id { get; set; } - public string Fake1 { get; set; } - } - - private class MyClassWithComponent - { - public int Id { get; set; } - public MyComponent Component1 { get; set; } - public IEnumerable<MyComponent> Components { get; set; } - } - - private class MyComponent - { - public string Fake0 { get; set; } - } - - [Test] - public void WhenAtClassLevelThenNoMatch() - { - var mapper = new ConventionModelMapper(); - var mapping = mapper.CompileMappingFor(new[] { typeof(MyClass) }); - var hbmClass = mapping.RootClasses[0]; - var hbmProperty = hbmClass.Properties.OfType<HbmProperty>().Single(x => x.Name == "Fake1"); - hbmProperty.Columns.Should().Be.Empty(); - } - - [Test] - public void WhenFirstLevelIsCollectionThenNoMatch() - { - var mapper = new ConventionModelMapper(); - var mapping = mapper.CompileMappingFor(new[] { typeof(MyClassWithComponent) }); - var hbmClass = mapping.RootClasses[0]; - var hbmBag = hbmClass.Properties.OfType<HbmBag>().Single(x => x.Name == "Components"); - var hbmCompositeElement = (HbmCompositeElement) hbmBag.ElementRelationship; - var hbmProperty = hbmCompositeElement.Properties.OfType<HbmProperty>().Single(x => x.Name == "Fake0"); - hbmProperty.Columns.Should().Be.Empty(); - } - - [Test] - public void WhenAtComponentLevelThenMatch() - { - var mapper = new ConventionModelMapper(); - var mapping = mapper.CompileMappingFor(new[] { typeof(MyClassWithComponent) }); - var hbmClass = mapping.RootClasses[0]; - var hbmComponent = hbmClass.Properties.OfType<HbmComponent>().Single(); - var hbmProperty = hbmComponent.Properties.OfType<HbmProperty>().Single(x => x.Name == "Fake0"); - hbmProperty.Columns.Single().name.Should().Be("Component1Fake0"); - } - } -} \ No newline at end of file Modified: trunk/nhibernate/src/NHibernate.Test/NHibernate.Test.csproj =================================================================== --- trunk/nhibernate/src/NHibernate.Test/NHibernate.Test.csproj 2011-04-13 11:48:08 UTC (rev 5684) +++ trunk/nhibernate/src/NHibernate.Test/NHibernate.Test.csproj 2011-04-13 17:02:42 UTC (rev 5685) @@ -511,10 +511,6 @@ <Compile Include="Linq\ByMethod\SumTests.cs" /> <Compile Include="Logging\Log4NetLoggerTest.cs" /> <Compile Include="Logging\LoggerProviderTest.cs" /> - <Compile Include="MappingByCode\ConventionModelMapperTests\JoinedSubclassKeyAsRootIdColumnTest.cs" /> - <Compile Include="MappingByCode\ConventionModelMapperTests\ManyToManyInCollectionTableTests.cs" /> - <Compile Include="MappingByCode\ConventionModelMapperTests\ManyToManyKeyIdColumnTests.cs" /> - <Compile Include="MappingByCode\ConventionModelMapperTests\PropertyColumnNameTests.cs" /> <Compile Include="MappingByCode\ExpliticMappingTests\BagOfNestedComponentsWithParentTest.cs" /> <Compile Include="MappingByCode\ExpliticMappingTests\ClassWithComponentsTest.cs" /> <Compile Include="MappingByCode\ExpliticMappingTests\ConformistMappingRegistrationTests\ClassMappingRegistrationTest.cs" /> @@ -2976,6 +2972,7 @@ <EmbeddedResource Include="DynamicEntity\Tuplizer\Customer.hbm.xml" /> </ItemGroup> <ItemGroup> + <Folder Include="MappingByCode\ConventionModelMapperTests\" /> <Folder Include="Properties\" /> </ItemGroup> <ItemGroup> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |