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

DefaultNamingSubSystem

protected struct HandlerWithPriority

protected readonly Lock lock

protected readonly Dictionary<string, IHandler> name2Handler

Map(String, IHandler) to map component names to IHandler Items in this dictionary are sorted in insertion order.

Map(Type, IHandler) to map a service to IHandler . If there is more than a single service of the type, only the first registered services is stored in this dictionary. It serve as a fast lookup for the common case of having a single handler for a type.

public virtual int ComponentCount { get; }

protected IDictionary<string, IHandler> HandlerByNameCache { get; }

public void AddHandlerSelector(IHandlerSelector selector)

public void AddHandlersFilter(IHandlersFilter filter)

public virtual bool Contains(string name)

public virtual bool Contains(Type service)

public virtual IHandler[] GetAllHandlers()

public virtual IHandler[] GetAssignableHandlers(Type service)

protected virtual IHandler[] GetFiltersOpinion(Type service)

public virtual IHandler GetHandler(string name)

public virtual IHandler GetHandler(Type service)

public virtual IHandler[] GetHandlers(Type service)

protected virtual IHandler GetSelectorsOpinion(string name, Type type)

protected void InvalidateCache()

public virtual void Register(IHandler handler)