public override void Visit(JoinMapping joinMapping)
        {
            var writer  = serviceLocator.GetWriter <JoinMapping>();
            var joinXml = writer.Write(joinMapping);

            document.ImportAndAppendChild(joinXml);
        }
Example #2
0
        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);
        }
Example #3
0
        public override void ProcessJoin(JoinMapping joinMapping)
        {
            var conventions = finder.Find <IJoinConvention>();

            Apply <IJoinInspector, IJoinInstance>(conventions,
                                                  new JoinInstance(joinMapping));
        }
Example #4
0
        public void ShouldWriteProperties()
        {
            var mapping = new JoinMapping();

            mapping.AddProperty(new PropertyMapping());

            writer.VerifyXml(mapping)
            .Element("property").Exists();
        }
Example #5
0
        public void ShouldWriteManyToOnes()
        {
            var mapping = new JoinMapping();

            mapping.AddReference(new ManyToOneMapping());

            writer.VerifyXml(mapping)
            .Element("many-to-one").Exists();
        }
Example #6
0
        public void ShouldWriteKey()
        {
            var mapping = new JoinMapping();

            mapping.Set(x => x.Key, Layer.Defaults, new KeyMapping());

            writer.VerifyXml(mapping)
            .Element("key").Exists();
        }
Example #7
0
        public void ShouldWriteCollection()
        {
            var mapping = new JoinMapping();

            mapping.AddCollection(CollectionMapping.Bag());

            writer.VerifyXml(mapping)
            .Element("bag").Exists();
        }
Example #8
0
        public void ShouldWriteDynamicComponents()
        {
            var mapping = new JoinMapping();

            mapping.AddComponent(new DynamicComponentMapping());

            writer.VerifyXml(mapping)
            .Element("dynamic-component").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();
        }
Example #11
0
        public void ShouldWriteAny()
        {
            var mapping = new JoinMapping();

            mapping.AddAny(new AnyMapping());

            writer.VerifyXml(mapping)
            .Element("any").Exists();
        }
Example #12
0
        public void ShouldWriteKey()
        {
            var mapping = new JoinMapping();

            mapping.Key = new KeyMapping();

            writer.VerifyXml(mapping)
            .Element("key").Exists();
        }
Example #13
0
        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");
        }
Example #15
0
        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();
        }
Example #17
0
        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 void ShouldWriteComponents()
        {
            var mapping = new JoinMapping();

            mapping.AddComponent(new ComponentMapping(ComponentType.Component));

            writer.VerifyXml(mapping)
                .Element("component").Exists();
        }
Example #21
0
 public JoinInstance(JoinMapping mapping)
     : base(mapping)
 {
     this.mapping = mapping;
 }
Example #22
0
 public void AddJoin(JoinMapping mapping)
 {
     mappedMembers.AddJoin(mapping);
 }
Example #23
0
 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 ShouldWriteProperties()
        {
            var mapping = new JoinMapping();

            mapping.AddProperty(new PropertyMapping());

            writer.VerifyXml(mapping)
                .Element("property").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 virtual void ProcessJoin(JoinMapping joinMapping)
 {
 }
 public void CreateDsl()
 {
     mapping = new JoinMapping();
     inspector = new JoinInspector(mapping);
 }
Example #31
0
 public JoinInstance(JoinMapping mapping)
     : base(mapping)
 {
     this.mapping = mapping;
 }
 public JoinInspector(JoinMapping mapping)
 {
     this.mapping = mapping;
 }
        public void ShouldWriteKey()
        {
            var mapping = new JoinMapping();

            mapping.Key = new KeyMapping();

            writer.VerifyXml(mapping)
                .Element("key").Exists();
        }
 public override void Visit(JoinMapping joinMapping)
 {
     joinMapping.AcceptVisitor(this);
 }
Example #35
0
 public virtual void VisitJoin(JoinMapping @join)
 {
 }
 public void AddJoin(JoinMapping mapping)
 {
     mappedMembers.AddJoin(mapping);
 }
 public override void Visit(JoinMapping joinMapping)
 {
     joinMapping.AcceptVisitor(this);
 }
 public JoinInspector(JoinMapping mapping)
 {
     this.mapping = mapping;
     propertyMappings.AutoMap();
 }
 public void AddJoin(JoinMapping join)
 {
     joins.Add(join);
 }
        public void ShouldWriteManyToOnes()
        {
            var mapping = new JoinMapping();

            mapping.AddReference(new ManyToOneMapping());

            writer.VerifyXml(mapping)
                .Element("many-to-one").Exists();
        }
 public virtual void Visit(JoinMapping joinMapping)
 {
 }
 public void CreateDsl()
 {
     mapping   = new JoinMapping();
     inspector = new JoinInspector(mapping);
 }