Ejemplo n.º 1
0
        private object GetComponentInstance([NotNull] ComponentInfo component)
        {
            if (_singletonInstanceContainer.TryGetInstance(component.ComponentType, out var instance))
            {
                return(instance);
            }

            instance = _instanceCreators[component.ComponentType]?.CreateInstance(this);
            ThrowIf.Variable.IsNull(instance, nameof(instance));

            _singletonInstanceContainer.AddSingletonInstance(component.ComponentType, instance);
            return(instance);
        }
Ejemplo n.º 2
0
 public InstanceCreator([NotNull] ComponentInfo component)
 {
     _component = component;
 }