Mercurial > pub > ImplabNet
diff Implab.ServiceHost/Unity/ContainerElement.cs @ 273:79110a16cab7 v3
Working on Unity xml configuration: Refactoring in progress
author | cin |
---|---|
date | Thu, 26 Apr 2018 19:35:01 +0300 |
parents | d4d437ec4483 |
children | 22629bf26121 |
line wrap: on
line diff
--- a/Implab.ServiceHost/Unity/ContainerElement.cs Thu Apr 26 03:14:54 2018 +0300 +++ b/Implab.ServiceHost/Unity/ContainerElement.cs Thu Apr 26 19:35:01 2018 +0300 @@ -6,26 +6,12 @@ namespace Implab.ServiceHost.Unity { [XmlRoot("container", Namespace = Schema.ContainerConfigurationNamespace)] - public class ContainerElement : IXmlSerializable { - - public List<IConfigurationElement> Items {get; set; } = new List<IConfigurationElement>(); - - public XmlSchema GetSchema() { - return null; - } + public class ContainerElement : ContainerItemElement { - public void ReadXml(XmlReader reader) { - while(reader.Read() && reader.NodeType != XmlNodeType.EndElement) { - var registration = ConfigurationSchema.Default.Deserialize<IConfigurationElement>(reader); - Items.Add(registration); - } - } + public List<ContainerItemElement> Items {get; set; } = new List<ContainerItemElement>(); - public void WriteXml(XmlWriter writer) { - foreach(var item in Items) { - var serializer = new XmlSerializer(item.GetType()); - serializer.Serialize(writer, item); - } + public override void Visit(ContainerContext context) { + context.Visit(this); } } } \ No newline at end of file