From: <fab...@us...> - 2009-12-02 05:30:44
|
Revision: 4892 http://nhibernate.svn.sourceforge.net/nhibernate/?rev=4892&view=rev Author: fabiomaulo Date: 2009-12-02 05:30:33 +0000 (Wed, 02 Dec 2009) Log Message: ----------- Encapsulated namespaceManager Modified Paths: -------------- trunk/nhibernate/src/NHibernate/Cfg/XmlHbmBinding/ClassBinder.cs trunk/nhibernate/src/NHibernate/Cfg/XmlHbmBinding/CollectionBinder.cs trunk/nhibernate/src/NHibernate/Cfg/XmlHbmBinding/JoinedSubclassBinder.cs trunk/nhibernate/src/NHibernate/Cfg/XmlHbmBinding/MappingRootBinder.cs trunk/nhibernate/src/NHibernate/Cfg/XmlHbmBinding/PropertiesBinder.cs trunk/nhibernate/src/NHibernate/Cfg/XmlHbmBinding/RootClassBinder.cs trunk/nhibernate/src/NHibernate/Cfg/XmlHbmBinding/SubclassBinder.cs trunk/nhibernate/src/NHibernate/Cfg/XmlHbmBinding/UnionSubclassBinder.cs Modified: trunk/nhibernate/src/NHibernate/Cfg/XmlHbmBinding/ClassBinder.cs =================================================================== --- trunk/nhibernate/src/NHibernate/Cfg/XmlHbmBinding/ClassBinder.cs 2009-12-02 05:10:21 UTC (rev 4891) +++ trunk/nhibernate/src/NHibernate/Cfg/XmlHbmBinding/ClassBinder.cs 2009-12-02 05:30:33 UTC (rev 4892) @@ -13,7 +13,7 @@ public abstract class ClassBinder : Binder { protected readonly Dialect.Dialect dialect; - protected readonly XmlNamespaceManager namespaceManager; + private readonly XmlNamespaceManager namespaceManager; protected ClassBinder(Mappings mappings, XmlNamespaceManager namespaceManager, Dialect.Dialect dialect) : base(mappings) @@ -26,9 +26,14 @@ : base(parent.Mappings) { dialect = parent.dialect; - namespaceManager = parent.namespaceManager; + namespaceManager = parent.NamespaceManager; } + public XmlNamespaceManager NamespaceManager + { + get { return namespaceManager; } + } + protected void BindClass(IEntityMapping classMapping, PersistentClass model, IDictionary<string, MetaAttribute> inheritedMetas) { // handle the lazy attribute @@ -212,7 +217,7 @@ join.CreateForeignKey(); // PROPERTIES - new PropertiesBinder(Mappings, persistentClass, namespaceManager, dialect).Bind(joinMapping.Properties, join.Table, + new PropertiesBinder(Mappings, persistentClass, NamespaceManager, dialect).Bind(joinMapping.Properties, join.Table, inheritedMetas, p => { }, join.AddProperty); @@ -244,14 +249,12 @@ } } - protected PersistentClass GetSuperclass(XmlNode subnode) + protected PersistentClass GetSuperclass(string extendsName) { - XmlAttribute extendsAttr = subnode.Attributes["extends"]; - if (extendsAttr == null) + if (string.IsNullOrEmpty(extendsName)) { - throw new MappingException("'extends' attribute is not found."); + throw new MappingException("'extends' attribute is not found or is empty."); } - string extendsName = extendsAttr.Value; PersistentClass superModel = mappings.GetClass(extendsName); if(superModel == null) { @@ -276,7 +279,7 @@ { //GENERATOR - XmlNode subnode = node.SelectSingleNode(HbmConstants.nsGenerator, namespaceManager); + XmlNode subnode = node.SelectSingleNode(HbmConstants.nsGenerator, NamespaceManager); if (subnode != null) { if (subnode.Attributes["class"] == null) @@ -295,7 +298,7 @@ if (mappings.SchemaName != null) parms.Add(Id.PersistentIdGeneratorParmsNames.Schema, dialect.QuoteForSchemaName(mappings.SchemaName)); - foreach (XmlNode childNode in subnode.SelectNodes(HbmConstants.nsParam, namespaceManager)) + foreach (XmlNode childNode in subnode.SelectNodes(HbmConstants.nsParam, NamespaceManager)) parms.Add( childNode.Attributes["name"].Value, childNode.InnerText @@ -326,7 +329,7 @@ model.RoleName = path; - inheritedMetas = GetMetas(node.SelectNodes(HbmConstants.nsMeta, namespaceManager), inheritedMetas); + inheritedMetas = GetMetas(node.SelectNodes(HbmConstants.nsMeta, NamespaceManager), inheritedMetas); model.MetaAttributes = inheritedMetas; XmlAttribute classNode = node.Attributes["class"]; @@ -371,7 +374,7 @@ IValue value = null; - CollectionBinder binder = new CollectionBinder(Mappings, namespaceManager, dialect); + CollectionBinder binder = new CollectionBinder(Mappings, NamespaceManager, dialect); if (binder.CanCreate(name)) { @@ -510,7 +513,7 @@ "\" for property: " + propName); } - property.MetaAttributes = GetMetas(node.SelectNodes(HbmConstants.nsMeta, namespaceManager), inheritedMetas); + property.MetaAttributes = GetMetas(node.SelectNodes(HbmConstants.nsMeta, NamespaceManager), inheritedMetas); property.LogMapped(log); } @@ -552,7 +555,7 @@ if (typeNode != null) typeName = typeNode.Value; - XmlNode typeChild = node.SelectSingleNode(HbmConstants.nsType, namespaceManager); + XmlNode typeChild = node.SelectSingleNode(HbmConstants.nsType, NamespaceManager); if (typeName == null && typeChild != null) { originalTypeName = typeChild.Attributes["name"].Value; @@ -612,7 +615,7 @@ } else { - var fcn = node.SelectSingleNode(HbmConstants.nsFormula, namespaceManager); + var fcn = node.SelectSingleNode(HbmConstants.nsFormula, NamespaceManager); return fcn != null && !string.IsNullOrEmpty(fcn.InnerText) ? fcn.InnerText : null; } } @@ -661,7 +664,7 @@ if (metaAttribute != null) { model.MetaType = metaAttribute.Value; - XmlNodeList metaValues = node.SelectNodes(HbmConstants.nsMetaValue, namespaceManager); + XmlNodeList metaValues = node.SelectNodes(HbmConstants.nsMetaValue, NamespaceManager); if (metaValues != null && metaValues.Count > 0) { IDictionary<object, string> values = new Dictionary<object, string>(); @@ -811,7 +814,7 @@ { int count = 0; - foreach (XmlNode columnElement in node.SelectNodes(HbmConstants.nsColumn, namespaceManager)) + foreach (XmlNode columnElement in node.SelectNodes(HbmConstants.nsColumn, NamespaceManager)) { Column col = new Column(); col.Value = model; @@ -1011,7 +1014,7 @@ typeName = typeAttribute.Value; else { - XmlNode typeNode = node.SelectSingleNode(HbmConstants.nsType, namespaceManager); + XmlNode typeNode = node.SelectSingleNode(HbmConstants.nsType, NamespaceManager); if (typeNode == null) //we will have to use reflection return null; XmlAttribute nameAttribute = typeNode.Attributes["name"]; //we know it exists because the schema validate it @@ -1039,7 +1042,7 @@ protected XmlNodeList SelectNodes(XmlNode node, string xpath) { - return node.SelectNodes(xpath, namespaceManager); + return node.SelectNodes(xpath, NamespaceManager); } protected static string GetPropertyName(XmlNode node) Modified: trunk/nhibernate/src/NHibernate/Cfg/XmlHbmBinding/CollectionBinder.cs =================================================================== --- trunk/nhibernate/src/NHibernate/Cfg/XmlHbmBinding/CollectionBinder.cs 2009-12-02 05:10:21 UTC (rev 4891) +++ trunk/nhibernate/src/NHibernate/Cfg/XmlHbmBinding/CollectionBinder.cs 2009-12-02 05:30:33 UTC (rev 4892) @@ -233,7 +233,7 @@ model.ExtraLazy = true; } - XmlNode oneToManyNode = node.SelectSingleNode(HbmConstants.nsOneToMany, namespaceManager); + XmlNode oneToManyNode = node.SelectSingleNode(HbmConstants.nsOneToMany, NamespaceManager); if (oneToManyNode != null) { OneToMany oneToMany = new OneToMany(model.Owner); @@ -326,14 +326,14 @@ else AddCollectionSecondPass(node, model, inheritedMetas); - foreach (XmlNode filter in node.SelectNodes(HbmConstants.nsFilter, namespaceManager)) + foreach (XmlNode filter in node.SelectNodes(HbmConstants.nsFilter, NamespaceManager)) ParseFilter(filter, model); - XmlNode loader = node.SelectSingleNode(HbmConstants.nsLoader, namespaceManager); + XmlNode loader = node.SelectSingleNode(HbmConstants.nsLoader, NamespaceManager); if (loader != null) model.LoaderName = XmlHelper.GetAttributeValue(loader, "query-ref"); - XmlNode key = node.SelectSingleNode(HbmConstants.nsKey, namespaceManager); + XmlNode key = node.SelectSingleNode(HbmConstants.nsKey, NamespaceManager); if (key != null) model.ReferencedPropertyName = XmlHelper.GetAttributeValue(key, "property-ref"); @@ -438,7 +438,7 @@ private void HandleCustomSQL(XmlNode node, Mapping.Collection model) { - XmlNode element = node.SelectSingleNode(HbmConstants.nsSqlInsert, namespaceManager); + XmlNode element = node.SelectSingleNode(HbmConstants.nsSqlInsert, NamespaceManager); if (element != null) { @@ -446,21 +446,21 @@ model.SetCustomSQLInsert(element.InnerText.Trim(), callable, GetResultCheckStyle(element, callable)); } - element = node.SelectSingleNode(HbmConstants.nsSqlDelete, namespaceManager); + element = node.SelectSingleNode(HbmConstants.nsSqlDelete, NamespaceManager); if (element != null) { bool callable = IsCallable(element); model.SetCustomSQLDelete(element.InnerText.Trim(), callable, GetResultCheckStyle(element, callable)); } - element = node.SelectSingleNode(HbmConstants.nsSqlUpdate, namespaceManager); + element = node.SelectSingleNode(HbmConstants.nsSqlUpdate, NamespaceManager); if (element != null) { bool callable = IsCallable(element); model.SetCustomSQLUpdate(element.InnerText.Trim(), callable, GetResultCheckStyle(element, callable)); } - element = node.SelectSingleNode(HbmConstants.nsSqlDeleteAll, namespaceManager); + element = node.SelectSingleNode(HbmConstants.nsSqlDeleteAll, NamespaceManager); if (element != null) { bool callable = IsCallable(element); @@ -499,8 +499,8 @@ { BindCollectionSecondPass(node, model, persistentClasses, inheritedMetas); - XmlNode subnode = node.SelectSingleNode(HbmConstants.nsListIndex, namespaceManager); - if (subnode == null) { subnode = node.SelectSingleNode(HbmConstants.nsIndex, namespaceManager); } + XmlNode subnode = node.SelectSingleNode(HbmConstants.nsListIndex, NamespaceManager); + if (subnode == null) { subnode = node.SelectSingleNode(HbmConstants.nsIndex, NamespaceManager); } SimpleValue iv = new SimpleValue(model.CollectionTable); BindIntegerValue(subnode, iv, IndexedCollection.DefaultIndexColumnName, model.IsOneToMany); model.Index = iv; @@ -522,7 +522,7 @@ { BindCollectionSecondPass(node, model, persitentClasses, inheritedMetas); - XmlNode subnode = node.SelectSingleNode(HbmConstants.nsCollectionId, namespaceManager); + XmlNode subnode = node.SelectSingleNode(HbmConstants.nsCollectionId, NamespaceManager); SimpleValue id = new SimpleValue(model.CollectionTable); BindSimpleValue(subnode, id, false, IdentifierCollection.DefaultIdentifierColumnName); model.Identifier = id; @@ -715,7 +715,7 @@ collection.ManyToManyOrdering = orderFragment; // Bind the filters - if ((manyToManyNode.SelectSingleNode(HbmConstants.nsFilter, namespaceManager) != null || + if ((manyToManyNode.SelectSingleNode(HbmConstants.nsFilter, NamespaceManager) != null || whereCondition != null) && collection.FetchMode == FetchMode.Join && collection.Element.FetchMode != FetchMode.Join) @@ -723,7 +723,7 @@ "many-to-many defining filter or where without join fetching " + "not valid within collection using join fetching [" + collection.Role + "]" ); - foreach (XmlNode filterElement in manyToManyNode.SelectNodes(HbmConstants.nsFilter, namespaceManager)) + foreach (XmlNode filterElement in manyToManyNode.SelectNodes(HbmConstants.nsFilter, NamespaceManager)) { string name = XmlHelper.GetAttributeValue(filterElement, "name"); string condition = filterElement.InnerText.Trim(); Modified: trunk/nhibernate/src/NHibernate/Cfg/XmlHbmBinding/JoinedSubclassBinder.cs =================================================================== --- trunk/nhibernate/src/NHibernate/Cfg/XmlHbmBinding/JoinedSubclassBinder.cs 2009-12-02 05:10:21 UTC (rev 4891) +++ trunk/nhibernate/src/NHibernate/Cfg/XmlHbmBinding/JoinedSubclassBinder.cs 2009-12-02 05:30:33 UTC (rev 4892) @@ -18,9 +18,9 @@ { } - public void Bind(XmlNode node, HbmJoinedSubclass joinedSubclassMapping, IDictionary<string, MetaAttribute> inheritedMetas) + public void Bind(HbmJoinedSubclass joinedSubclassMapping, IDictionary<string, MetaAttribute> inheritedMetas) { - PersistentClass superModel = GetSuperclass(node); + PersistentClass superModel = GetSuperclass(joinedSubclassMapping.extends); HandleJoinedSubclass(superModel, joinedSubclassMapping, inheritedMetas); } @@ -64,7 +64,7 @@ mytable.AddCheckConstraint(joinedSubclassMapping.check); // properties - new PropertiesBinder(mappings, subclass, namespaceManager, dialect).Bind(joinedSubclassMapping.Properties, inheritedMetas); + new PropertiesBinder(mappings, subclass, NamespaceManager, dialect).Bind(joinedSubclassMapping.Properties, inheritedMetas); BindJoinedSubclasses(joinedSubclassMapping.JoinedSubclasses, subclass, inheritedMetas); Modified: trunk/nhibernate/src/NHibernate/Cfg/XmlHbmBinding/MappingRootBinder.cs =================================================================== --- trunk/nhibernate/src/NHibernate/Cfg/XmlHbmBinding/MappingRootBinder.cs 2009-12-02 05:10:21 UTC (rev 4891) +++ trunk/nhibernate/src/NHibernate/Cfg/XmlHbmBinding/MappingRootBinder.cs 2009-12-02 05:30:33 UTC (rev 4892) @@ -100,7 +100,7 @@ { var binder = new UnionSubclassBinder(Mappings, GetNamespaceManager(parentNode), dialect); - binder.Bind(parentNode, unionSubclass, inheritedMetas); + binder.Bind(unionSubclass, inheritedMetas); } private void AddJoinedSubclasses(XmlNode parentNode, HbmJoinedSubclass joinedSubclass, @@ -108,14 +108,14 @@ { var binder = new JoinedSubclassBinder(Mappings, GetNamespaceManager(parentNode), dialect); - binder.Bind(parentNode, joinedSubclass, inheritedMetas); + binder.Bind(joinedSubclass, inheritedMetas); } private void AddSubclasses(XmlNode parentNode, HbmSubclass subClass, IDictionary<string, MetaAttribute> inheritedMetas) { var binder = new SubclassBinder(this, GetNamespaceManager(parentNode), dialect); - binder.Bind(parentNode, subClass, inheritedMetas); + binder.Bind(subClass, inheritedMetas); } private void AddQueries(HbmMapping mappingSchema) Modified: trunk/nhibernate/src/NHibernate/Cfg/XmlHbmBinding/PropertiesBinder.cs =================================================================== --- trunk/nhibernate/src/NHibernate/Cfg/XmlHbmBinding/PropertiesBinder.cs 2009-12-02 05:10:21 UTC (rev 4891) +++ trunk/nhibernate/src/NHibernate/Cfg/XmlHbmBinding/PropertiesBinder.cs 2009-12-02 05:30:33 UTC (rev 4892) @@ -67,7 +67,7 @@ } else if ((collectionMapping = entityPropertyMapping as ICollectionPropertyMapping) != null) { - var collectionBinder = new CollectionBinder(Mappings, namespaceManager, dialect); + var collectionBinder = new CollectionBinder(Mappings, NamespaceManager, dialect); Mapping.Collection collection = collectionBinder.Create(collectionMapping, entityName, propertyName, model, model.MappedClass, inheritedMetas); Modified: trunk/nhibernate/src/NHibernate/Cfg/XmlHbmBinding/RootClassBinder.cs =================================================================== --- trunk/nhibernate/src/NHibernate/Cfg/XmlHbmBinding/RootClassBinder.cs 2009-12-02 05:10:21 UTC (rev 4891) +++ trunk/nhibernate/src/NHibernate/Cfg/XmlHbmBinding/RootClassBinder.cs 2009-12-02 05:30:33 UTC (rev 4892) @@ -57,7 +57,7 @@ rootClass.CreatePrimaryKey(dialect); BindNaturalId(classSchema.naturalid, rootClass, inheritedMetas); - new PropertiesBinder(mappings, rootClass, namespaceManager, dialect).Bind(classSchema.Properties, inheritedMetas); + new PropertiesBinder(mappings, rootClass, NamespaceManager, dialect).Bind(classSchema.Properties, inheritedMetas); BindJoins(classSchema.Joins, rootClass, inheritedMetas); BindSubclasses(classSchema.Subclasses, rootClass, inheritedMetas); @@ -76,7 +76,7 @@ return; } //by default, natural-ids are "immutable" (constant) - var propBinder = new PropertiesBinder(mappings, rootClass, namespaceManager, dialect); + var propBinder = new PropertiesBinder(mappings, rootClass, NamespaceManager, dialect); var uk = new UniqueKey { Name = "_UniqueKey", Table = rootClass.Table }; propBinder.Bind(naturalid.Properties, inheritedMetas, property => { Modified: trunk/nhibernate/src/NHibernate/Cfg/XmlHbmBinding/SubclassBinder.cs =================================================================== --- trunk/nhibernate/src/NHibernate/Cfg/XmlHbmBinding/SubclassBinder.cs 2009-12-02 05:10:21 UTC (rev 4891) +++ trunk/nhibernate/src/NHibernate/Cfg/XmlHbmBinding/SubclassBinder.cs 2009-12-02 05:30:33 UTC (rev 4892) @@ -18,9 +18,9 @@ { } - public void Bind(XmlNode node, HbmSubclass subClassMapping, IDictionary<string, MetaAttribute> inheritedMetas) + public void Bind(HbmSubclass subClassMapping, IDictionary<string, MetaAttribute> inheritedMetas) { - PersistentClass superModel = GetSuperclass(node); + PersistentClass superModel = GetSuperclass(subClassMapping.extends); HandleSubclass(superModel, subClassMapping, inheritedMetas); } @@ -37,7 +37,7 @@ log.InfoFormat("Mapping subclass: {0} -> {1}", subclass.EntityName, subclass.Table.Name); // properties - new PropertiesBinder(mappings, subclass, namespaceManager, dialect).Bind(subClassMapping.Properties, inheritedMetas); + new PropertiesBinder(mappings, subclass, NamespaceManager, dialect).Bind(subClassMapping.Properties, inheritedMetas); BindJoins(subClassMapping.Joins, subclass, inheritedMetas); BindSubclasses(subClassMapping.Subclasses, subclass, inheritedMetas); Modified: trunk/nhibernate/src/NHibernate/Cfg/XmlHbmBinding/UnionSubclassBinder.cs =================================================================== --- trunk/nhibernate/src/NHibernate/Cfg/XmlHbmBinding/UnionSubclassBinder.cs 2009-12-02 05:10:21 UTC (rev 4891) +++ trunk/nhibernate/src/NHibernate/Cfg/XmlHbmBinding/UnionSubclassBinder.cs 2009-12-02 05:30:33 UTC (rev 4892) @@ -18,9 +18,9 @@ { } - public void Bind(XmlNode node, HbmUnionSubclass unionSubclassMapping, IDictionary<string, MetaAttribute> inheritedMetas) + public void Bind(HbmUnionSubclass unionSubclassMapping, IDictionary<string, MetaAttribute> inheritedMetas) { - PersistentClass superModel = GetSuperclass(node); + PersistentClass superModel = GetSuperclass(unionSubclassMapping.extends); HandleUnionSubclass(superModel, unionSubclassMapping, inheritedMetas); } @@ -48,7 +48,7 @@ log.InfoFormat("Mapping union-subclass: {0} -> {1}", unionSubclass.EntityName, unionSubclass.Table.Name); // properties - new PropertiesBinder(mappings, unionSubclass, namespaceManager, dialect).Bind(unionSubclassMapping.Properties, inheritedMetas); + new PropertiesBinder(mappings, unionSubclass, NamespaceManager, dialect).Bind(unionSubclassMapping.Properties, inheritedMetas); BindUnionSubclasses(unionSubclassMapping.UnionSubclasses, unionSubclass, inheritedMetas); model.AddSubclass(unionSubclass); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |