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

Castle.MicroKernel.Handlers.AbstractHandler

Implements the basis of IHandler
namespace Castle.MicroKernel.Handlers { public abstract class AbstractHandler : IHandler, ISubDependencyResolver, IExposeDependencyInfo, IDisposable { public ComponentModel ComponentModel { get; } public HandlerState CurrentState { get; } protected IKernelInternal Kernel { get; } protected AbstractHandler(ComponentModel model); public abstract bool ReleaseCore(Burden burden); protected abstract object Resolve(CreationContext context, bool instanceRequired); public virtual void Dispose(); public void ObtainDependencyDetails(IDependencyInspector inspector); public virtual void Init(IKernelInternal kernel); protected virtual void InitDependencies(); public bool IsBeingResolvedInContext(CreationContext context); public virtual bool Release(Burden burden); public object Resolve(CreationContext context); public virtual bool Supports(Type service); public virtual bool SupportsAssignable(Type service); public object TryResolve(CreationContext context); public virtual bool CanResolve(CreationContext context, ISubDependencyResolver contextHandlerResolver, ComponentModel model, DependencyModel dependency); public virtual object Resolve(CreationContext context, ISubDependencyResolver contextHandlerResolver, ComponentModel model, DependencyModel dependency); protected void AddDependency(DependencyModel dependency); protected void AddMissingDependency(DependencyModel dependency); protected bool CanResolvePendingDependencies(CreationContext context); protected void DependencySatisfied(ref bool stateChanged); protected void OnAddedAsChildKernel(object sender, EventArgs e); protected void SetNewState(HandlerState newState); } }