public void Start(string prefix, MappedPropertyInfo item) { HbmSet set = item.HbmObject<HbmSet>(); MappedPropertyInfo childItem = new MappedPropertyInfo(set.Item, item.FileName); PropertyMappingType subType = childItem.Type; if (subType == PropertyMappingType.ManyToMany) { _builder.StartMethod(prefix, string.Format("{0}<{1}>(x => x.{2})", FluentNHibernateNames.HasManyToMany, item.ReturnType, item.Name)); _builder.AddLine(string.Format(".{0}(\"{1}\")", KeyColumn.FluentNHibernateNames.ChildKeyColumn, childItem.ColumnName)); } else if (subType == PropertyMappingType.OneToMany) { _builder.StartMethod(prefix, string.Format("{0}<{1}>(x => x.{2})", FluentNHibernateNames.HasMany, item.ReturnType, item.Name)); } else { _builder.StartMethod(prefix, "set?(x => x" + item.Name + ")"); } _builder.AddLine(string.Format(".{0}()", FluentNHibernateNames.AsSet)); _keyColumn.Add(set.inverse, item.ColumnName, subType); _lazyLoad.Add(set.lazySpecified, set.lazy); _table.Add(set.table); _inverse.Add(set.inverse); _cascade.Add(set.cascade); _orderBy.Add(set.orderby); _where.Add(set.where); }
public void Start(string prefix, MappedPropertyInfo item) { CodeFileBuilder componentBuilder = new CodeFileBuilder(); componentBuilder.Indent(5); const string subPrefix = "y."; HbmCompositeElement component = item.HbmObject<HbmCompositeElement>(); componentBuilder.AddLine(""); var componentBodyBuilder = new ClassMapBody(componentBuilder); foreach (var componentPart in component.Items) { componentBodyBuilder.Add(subPrefix, new MappedPropertyInfo(componentPart, item.FileName)); } _builder.StartMethod(prefix, string.Format("{0}<{1}>(x => x.{2}, y=>", FluentNHibernateNames.CompositeElement, item.ReturnType, item.Name)); _builder.AddLine("{"); _builder.AddLine(componentBuilder.ToString()); _builder.AddLine("})"); /*if (component. ) { _builder.AddLine(string.Format(".{0}()", FluentNHibernateNames.Insert)); } if (component.update) { _builder.AddLine(string.Format(".{0}()", FluentNHibernateNames.Update)); }*/ }
public void Start(string prefix, MappedPropertyInfo item) { CodeFileBuilder componentBuilder = new CodeFileBuilder(); componentBuilder.Indent(5); const string subPrefix = "y."; HbmComponent component = item.HbmObject <HbmComponent>(); componentBuilder.AddLine(""); var componentBodyBuilder = new ClassMapBody(componentBuilder); foreach (var componentPart in component.Items) { componentBodyBuilder.Add(subPrefix, new MappedPropertyInfo(componentPart, item.FileName)); } _builder.StartMethod(prefix, string.Format("{0}<{1}>(x => x.{2}, y=>", FluentNHibernateNames.Component, item.ReturnType, item.Name)); _builder.AddLine("{"); _builder.AddLine(componentBuilder.ToString()); _builder.AddLine("})"); if (component.insert) { _builder.AddLine(string.Format(".{0}()", FluentNHibernateNames.Insert)); } if (component.update) { _builder.AddLine(string.Format(".{0}()", FluentNHibernateNames.Update)); } }
public void Start(string prefix, MappedPropertyInfo item) { HbmBag bag = item.HbmObject<HbmBag>(); PropertyMappingType subType = new MappedPropertyInfo(bag.Item, item.FileName).Type; if (subType == PropertyMappingType.ManyToMany) { _builder.StartMethod(prefix, string.Format("{0}<{1}>(x => x.{2})", FluentNHibernateNames.HasManyToMany, item.ReturnType, item.Name)); } else if (subType == PropertyMappingType.OneToMany) { _builder.StartMethod(prefix, string.Format("{0}<{1}>(x => x.{2})", FluentNHibernateNames.HasMany, item.ReturnType, item.Name)); } else { _builder.StartMethod(prefix, "bag?(x => x" + item.Name + ")"); } _builder.AddLine(string.Format(".{0}()", FluentNHibernateNames.AsBag)); _keyColumn.Add(bag.inverse, item.ColumnName, subType); _lazyLoad.Add(bag.lazySpecified, bag.lazy); _table.Add(bag.table); _inverse.Add(bag.inverse); _cascade.Add(bag.cascade); _orderBy.Add(bag.orderby); _cacheBuilder.Add(bag.cache); }
public void Add(MappedPropertyInfo info) { if (info.Type != PropertyMappingType.Id) { return; } HbmId id = info.HbmObject<HbmId>(); HbmGenerator generator = id.generator; if (generator != null) { switch (generator.@class) { case "sequence": { HbmParam[] parameters = generator.param; string[] text = parameters[0].Text; _builder.AddLine(string.Format(".{0}.{1}(\"{2}\")", FluentNHibernateNames.GeneratedBy, FluentNHibernateNames.Sequence, text[0])); break; } case "assigned": _builder.AddLine(string.Format(".{0}.{1}()", FluentNHibernateNames.GeneratedBy, FluentNHibernateNames.Assigned)); break; case "native": _builder.AddLine(string.Format(".{0}.{1}()", FluentNHibernateNames.GeneratedBy, FluentNHibernateNames.Native)); break; default: _builder.AddLine(string.Format(".{0}. ?", FluentNHibernateNames.GeneratedBy)); break; } } }
public void Start(string prefix, MappedPropertyInfo item) { HbmBag bag = item.HbmObject <HbmBag>(); PropertyMappingType subType = new MappedPropertyInfo(bag.Item, item.FileName).Type; if (subType == PropertyMappingType.ManyToMany) { _builder.StartMethod(prefix, string.Format("{0}<{1}>(x => x.{2})", FluentNHibernateNames.HasManyToMany, item.ReturnType, item.Name)); } else if (subType == PropertyMappingType.OneToMany) { _builder.StartMethod(prefix, string.Format("{0}<{1}>(x => x.{2})", FluentNHibernateNames.HasMany, item.ReturnType, item.Name)); } else { _builder.StartMethod(prefix, "bag?(x => x" + item.Name + ")"); } _builder.AddLine(string.Format(".{0}()", FluentNHibernateNames.AsBag)); _keyColumn.Add(bag.inverse, item.ColumnName, subType); _lazyLoad.Add(bag.lazySpecified, bag.lazy); _table.Add(bag.table); _inverse.Add(bag.inverse); _cascade.Add(bag.cascade); _fetch.Add(bag.fetch); _orderBy.Add(bag.orderby); _where.Add(bag.where); _cacheBuilder.Add(bag.cache); }
public void Start(string prefix, MappedPropertyInfo item) { HbmSet set = item.HbmObject <HbmSet>(); MappedPropertyInfo childItem = new MappedPropertyInfo(set.Item, item.FileName); PropertyMappingType subType = childItem.Type; if (subType == PropertyMappingType.ManyToMany) { _builder.StartMethod(prefix, string.Format("{0}<{1}>(x => x.{2})", FluentNHibernateNames.HasManyToMany, item.ReturnType, item.Name)); _builder.AddLine(string.Format(".{0}(\"{1}\")", KeyColumn.FluentNHibernateNames.ChildKeyColumn, childItem.ColumnName)); } else if (subType == PropertyMappingType.OneToMany) { _builder.StartMethod(prefix, string.Format("{0}<{1}>(x => x.{2})", FluentNHibernateNames.HasMany, item.ReturnType, item.Name)); } else { _builder.StartMethod(prefix, "set?(x => x" + item.Name + ")"); } _builder.AddLine(string.Format(".{0}()", FluentNHibernateNames.AsSet)); _keyColumn.Add(set.inverse, item.ColumnName, subType); _lazyLoad.Add(set.lazySpecified, set.lazy); _table.Add(set.table); _inverse.Add(set.inverse); _cascade.Add(set.cascade); _fetch.Add(set.fetch); _orderBy.Add(set.orderby); _where.Add(set.where); _cacheBuilder.Add(set.cache); }
public void Add(MappedPropertyInfo info) { if (info.Type != PropertyMappingType.Id) { return; } HbmId id = info.HbmObject<HbmId>(); if (id.unsavedvalue != null) { var unsavedValue = id.unsavedvalue == "null" ? "String.Empty" : id.unsavedvalue; _builder.AddLine(string.Format(".{0}({1})", FluentNHibernateNames.UnsavedValue, unsavedValue)); } }
public void Add(MappedPropertyInfo info) { if (info.Type != PropertyMappingType.Id) { return; } HbmId id = info.HbmObject <HbmId>(); if (id.unsavedvalue != null) { var unsavedValue = id.unsavedvalue == "null" ? "String.Empty" : id.unsavedvalue; _builder.AddLine(string.Format(".{0}({1})", FluentNHibernateNames.UnsavedValue, unsavedValue)); } }
public void Add(MappedPropertyInfo info) { if (info.Type != PropertyMappingType.Id) { return; } HbmId id = info.HbmObject <HbmId>(); HbmGenerator generator = id.generator; if (generator != null) { switch (generator.@class) { case "sequence": { HbmParam[] parameters = generator.param; string[] text = parameters[0].Text; _builder.AddLine(string.Format(".{0}.{1}(\"{2}\")", FluentNHibernateNames.GeneratedBy, FluentNHibernateNames.Sequence, text[0])); break; } case "assigned": _builder.AddLine(string.Format(".{0}.{1}()", FluentNHibernateNames.GeneratedBy, FluentNHibernateNames.Assigned)); break; case "guid.comb": _builder.AddLine(string.Format(".{0}.{1}()", FluentNHibernateNames.GeneratedBy, FluentNHibernateNames.GuidComb)); break; case "guid": _builder.AddLine(string.Format(".{0}.{1}()", FluentNHibernateNames.GeneratedBy, FluentNHibernateNames.Guid)); break; case "native": _builder.AddLine(string.Format(".{0}.{1}()", FluentNHibernateNames.GeneratedBy, FluentNHibernateNames.Native)); break; case "identity": _builder.AddLine(string.Format(".{0}.{1}()", FluentNHibernateNames.GeneratedBy, FluentNHibernateNames.Identity)); break; default: _builder.AddLine(string.Format(".{0}.{1} ?", FluentNHibernateNames.GeneratedBy, generator.@class)); break; } } }