ContainerContext
using Stashbox.Configuration;
using Stashbox.Registration;
using Stashbox.Resolution;
namespace Stashbox
{
internal class ContainerContext : IContainerContext
{
public IRegistrationRepository RegistrationRepository { get; }
public IDecoratorRepository DecoratorRepository { get; }
public IContainerContext ParentContext { get; }
public IResolutionScope RootScope { get; }
public IResolutionStrategy ResolutionStrategy { get; }
public ContainerConfiguration ContainerConfiguration { get; }
public ContainerContext(IContainerContext parentContext, IResolutionStrategy resolutionStrategy, ContainerConfiguration containerConfiguration)
{
ContainerConfiguration = containerConfiguration;
ParentContext = parentContext;
RootScope = new ResolutionScope(this);
RegistrationRepository = new RegistrationRepository(containerConfiguration);
DecoratorRepository = new DecoratorRepository();
ResolutionStrategy = resolutionStrategy;
}
}
}