<PackageReference Include="Castle.Windsor" Version="2.5.4" />

AbstractLifestyleManager

Summary description for AbstractLifestyleManager.
using Castle.Core; using Castle.MicroKernel.Context; using System; namespace Castle.MicroKernel.Lifestyle { [Serializable] public abstract class AbstractLifestyleManager : ILifestyleManager, IDisposable { private IKernel kernel; private IComponentActivator componentActivator; private ComponentModel model; protected IKernel Kernel => kernel; protected IComponentActivator ComponentActivator => componentActivator; protected ComponentModel Model => model; public virtual void Init(IComponentActivator componentActivator, IKernel kernel, ComponentModel model) { this.componentActivator = componentActivator; this.kernel = kernel; this.model = model; } public virtual object Resolve(CreationContext context) { return componentActivator.Create(context); } public virtual bool Release(object instance) { componentActivator.Destroy(instance); return true; } public abstract void Dispose(); } }