view Implab.ServiceHost/Unity/SerializedElement.cs @ 279:8714471e8d78 v3

Container configuration cleanup, RC2
author cin
date Fri, 04 May 2018 18:12:42 +0300
parents 963b17c275be
children
line wrap: on
line source

using System;
using System.Collections.Generic;
using System.Xml;
using System.Xml.Serialization;

namespace Implab.ServiceHost.Unity {
    public class SerializedElement : AbstractRegistration, IInstanceRegistration {
        [XmlAttribute("href")]
        public string Location { get; set; }

        [XmlAttribute("serializedType")]
        public string SerializedType { get; set; }


        [XmlAnyElement]
        public XmlElement[] Content { get; set; }

        public IEnumerable<IInjectionParameter> MemberInjections {
            get {
                yield return new SerializedParameterElement {
                    TypeName = SerializedType,
                    Location = Location,
                    Content = Content
                };
            }
        }

        public override void Visit(ContainerBuilder builder) {
            builder.Visit(this);
        }
    }
}