Mercurial > pub > ImplabNet
diff Implab.ServiceHost/Unity/AbstractRegistration.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 diff
--- a/Implab.ServiceHost/Unity/AbstractRegistration.cs Thu May 03 09:59:44 2018 +0300 +++ b/Implab.ServiceHost/Unity/AbstractRegistration.cs Fri May 04 18:12:42 2018 +0300 @@ -8,7 +8,7 @@ /// <summary> /// Базовая информаци о регистрации в контейнере: тип, имя и время жизни /// </summary> - public abstract class AbstractRegistration : AbstractContainerItem { + public abstract class AbstractRegistration : AbstractContainerItem, IRegistration { /// <summary> /// An optional name for a registration in the container @@ -30,13 +30,19 @@ [XmlAttribute("type")] public string RegistrationType { get; set; } + public virtual LifetimeManager GetLifetime(ContainerBuilder builder) { + return Lifetime?.GetLifetime(builder); + } + public virtual Type GetRegistrationType(Func<string,Type> resolver) { return resolver(RegistrationType); } - public virtual void Visit(RegistrationBuilder builder) { - Lifetime?.Visit(builder); + public virtual Type GetRegistrationType(ContainerBuilder builder) { + return builder.ResolveType(RegistrationType); } + + } } \ No newline at end of file