public override void Visit(JoinMapping joinMapping) { var writer = serviceLocator.GetWriter <JoinMapping>(); var joinXml = writer.Write(joinMapping); document.ImportAndAppendChild(joinXml); }
JoinMapping IJoinMappingProvider.GetJoinMapping() { var mapping = new JoinMapping(attributes.CloneInner()); mapping.ContainingEntityType = typeof(T); foreach (var property in properties) { mapping.AddProperty(property.GetPropertyMapping()); } foreach (var component in components) { mapping.AddComponent(component.GetComponentMapping()); } foreach (var reference in references) { mapping.AddReference(reference.GetManyToOneMapping()); } foreach (var any in anys) { mapping.AddAny(any.GetAnyMapping()); } return(mapping); }
public override void ProcessJoin(JoinMapping joinMapping) { var conventions = finder.Find <IJoinConvention>(); Apply <IJoinInspector, IJoinInstance>(conventions, new JoinInstance(joinMapping)); }
public void ShouldWriteProperties() { var mapping = new JoinMapping(); mapping.AddProperty(new PropertyMapping()); writer.VerifyXml(mapping) .Element("property").Exists(); }
public void ShouldWriteManyToOnes() { var mapping = new JoinMapping(); mapping.AddReference(new ManyToOneMapping()); writer.VerifyXml(mapping) .Element("many-to-one").Exists(); }
public void ShouldWriteKey() { var mapping = new JoinMapping(); mapping.Set(x => x.Key, Layer.Defaults, new KeyMapping()); writer.VerifyXml(mapping) .Element("key").Exists(); }
public void ShouldWriteCollection() { var mapping = new JoinMapping(); mapping.AddCollection(CollectionMapping.Bag()); writer.VerifyXml(mapping) .Element("bag").Exists(); }
public void ShouldWriteDynamicComponents() { var mapping = new JoinMapping(); mapping.AddComponent(new DynamicComponentMapping()); writer.VerifyXml(mapping) .Element("dynamic-component").Exists(); }
public void ShouldWriteAny() { var mapping = new JoinMapping(); mapping.AddAny(new AnyMapping()); writer.VerifyXml(mapping) .Element("any").Exists(); }
public void ShouldWriteKey() { var mapping = new JoinMapping(); mapping.Key = new KeyMapping(); writer.VerifyXml(mapping) .Element("key").Exists(); }
public void ShouldWriteComponents() { var mapping = new JoinMapping(); mapping.AddComponent(new ComponentMapping(ComponentType.Component)); writer.VerifyXml(mapping) .Element("component").Exists(); }
public void ShouldWriteTheKey() { var joinMapping = new JoinMapping(); joinMapping.Key = new KeyMapping {Column = "Column1"}; _writer = new XmlJoinWriter(null); _writer.VerifyXml(joinMapping) .Element("key").HasAttribute("column", "Column1"); }
JoinMapping IJoinMappingProvider.GetJoinMapping() { var mapping = new JoinMapping(attributes.Clone()) { ContainingEntityType = typeof(T) }; if (columns.Count == 0) { var columnMapping = new ColumnMapping(); columnMapping.Set(x => x.Name, Layer.Defaults, typeof(T).Name + "_id"); mapping.Key.AddColumn(Layer.Defaults, columnMapping); } else { foreach (var column in columns) { var columnMapping = new ColumnMapping(); columnMapping.Set(x => x.Name, Layer.Defaults, column); mapping.Key.AddColumn(Layer.UserSupplied, columnMapping); } } foreach (var property in providers.Properties) { mapping.AddProperty(property.GetPropertyMapping()); } foreach (var component in providers.Components) { mapping.AddComponent(component.GetComponentMapping()); } foreach (var reference in providers.References) { mapping.AddReference(reference.GetManyToOneMapping()); } foreach (var any in providers.Anys) { mapping.AddAny(any.GetAnyMapping()); } foreach (var collection in providers.Collections) { mapping.AddCollection(collection.GetCollectionMapping()); } foreach (var storedProcedure in providers.StoredProcedures) { mapping.AddStoredProcedure(storedProcedure.GetStoredProcedureMapping()); } return(mapping); }
public void ShouldWriteTheProperties() { var joinMapping = new JoinMapping(); joinMapping.AddProperty(new PropertyMapping()); var propertyDocument = new XmlDocument(); propertyDocument.AppendChild(propertyDocument.CreateElement("property")); var propertyWriter = MockRepository.GenerateMock<IXmlWriter<PropertyMapping>>(); propertyWriter .Expect(x => x.Write(joinMapping.Properties.First())) .Return(propertyDocument); _writer = new XmlJoinWriter(propertyWriter); _writer.VerifyXml(joinMapping) .Element("property").Exists(); }
JoinMapping IJoinMappingProvider.GetJoinMapping() { var mapping = new JoinMapping(attributes.CloneInner()); mapping.ContainingEntityType = typeof(T); if (columns.Count == 0) { mapping.Key.AddDefaultColumn(new ColumnMapping { Name = typeof(T).Name + "_id" }); } else { foreach (var column in columns) { mapping.Key.AddColumn(new ColumnMapping { Name = column }); } } foreach (var property in properties) { mapping.AddProperty(property.GetPropertyMapping()); } foreach (var component in components) { mapping.AddComponent(component.GetComponentMapping()); } foreach (var reference in references) { mapping.AddReference(reference.GetManyToOneMapping()); } foreach (var any in anys) { mapping.AddAny(any.GetAnyMapping()); } return(mapping); }
public virtual void Visit(JoinMapping joinMapping) { }
public void AddOrReplaceJoin(JoinMapping mapping) { mappedMembers.AddOrReplaceJoin(mapping); }
public JoinInstance(JoinMapping mapping) : base(mapping) { this.mapping = mapping; }
public void AddJoin(JoinMapping mapping) { mappedMembers.AddJoin(mapping); }
public JoinInspector(JoinMapping mapping) { this.mapping = mapping; }
public void AddJoin(JoinMapping mapping) { if (joins.Exists(x => x.TableName == mapping.TableName)) throw new InvalidOperationException("Tried to add join to table '" + mapping.TableName + "' when already added."); joins.Add(mapping); }
public virtual void ProcessJoin(JoinMapping joinMapping) { }
public void CreateDsl() { mapping = new JoinMapping(); inspector = new JoinInspector(mapping); }
public override void Visit(JoinMapping joinMapping) { joinMapping.AcceptVisitor(this); }
public virtual void VisitJoin(JoinMapping @join) { }
public JoinInspector(JoinMapping mapping) { this.mapping = mapping; propertyMappings.AutoMap(); }
public void AddJoin(JoinMapping join) { joins.Add(join); }