protected T DoBuildInstance(ISharingLifetimeScope scope, InjectionOperator <T> injectionOperator, ParameterSet parameters) { T instance; injectionOperator.DoBuildInstance(scope, parameters, out instance); return(instance); }
protected T DoBuildInstance(InjectionContext context, InjectionOperator <T> injectionOperator, ParameterSet parameters) { T instance; injectionOperator.DoBuildInstance(context, parameters, out instance); return(instance); }
public override T BuildInstance(ISharingLifetimeScope scope, InjectionOperator <T> injectionOperator, ParameterSet parameters) { if (injectionOperator.Resolved) { return(_instance); } _instance = BuildSingletonInstance(scope, injectionOperator, parameters); return(_instance); }
public override T BuildInstance(InjectionContext context, InjectionOperator <T> injectionOperator, ParameterSet parameters) { if (injectionOperator.Resolved) { return(_instance); } _instance = BuildSingletonInstance(context, injectionOperator, parameters); return(_instance); }
protected override T BuildSingletonInstance(InjectionContext context, InjectionOperator <T> injectionOperator, ParameterSet parameters) { var instance = DoBuildInstance(context, injectionOperator, parameters); var disposable = instance as IDisposable; var matchingScope = context.LifetimeScope.ContainerScope; lock (matchingScope.SyncRoot) matchingScope.RegisterForDisposal(disposable); return(instance); }
public override T BuildInstance(InjectionContext context, InjectionOperator <T> injectionOperator, ParameterSet parameters) { var matchingScope = context.LifetimeScope.SharingScope; Lifetime.ThrowWhenMatchingScopeIsNull(matchingScope, _error); var instance = DoBuildInstance(context, injectionOperator, parameters); var disposable = instance as IDisposable; lock (matchingScope.SyncRoot) matchingScope.RegisterForDisposal(disposable); return(instance); }
public override T BuildInstance(InjectionContext context, InjectionOperator <T> injectionOperator, ParameterSet parameters) { var matchingScope = context.LifetimeScope.SharingScope; Lifetime.ThrowWhenMatchingScopeIsNull(matchingScope, _error); lock (matchingScope.SyncRoot) { var cachedInstance = matchingScope.GetInstance(injectionOperator.ObjectDescription); if (cachedInstance != null) { return((T)cachedInstance); } var instance = DoBuildInstance(context, injectionOperator, parameters); matchingScope.SetInstance(injectionOperator.ObjectDescription, instance); return(instance); } }
public override T BuildInstance(ISharingLifetimeScope scope, InjectionOperator <T> injectionOperator, ParameterSet parameters) { var matchingScope = scope.SharingScope; Lifetime.ThrowWhenMatchingScopeIsNull(matchingScope, _error); lock (matchingScope.SyncRoot) { var cachedInstance = matchingScope.GetInstance(injectionOperator.ObjectDescription); if (cachedInstance != null) { return((T)cachedInstance); } var instance = DoBuildInstance(scope, injectionOperator, parameters); matchingScope.SetInstance(injectionOperator.ObjectDescription, instance); var disposable = instance as IDisposable; matchingScope.RegisterForDisposal(disposable); return(instance); } }
public abstract T BuildInstance(InjectionContext context, InjectionOperator <T> injectionOperator, ParameterSet parameters);
public abstract T BuildInstance(ISharingLifetimeScope scope, InjectionOperator <T> injectionOperator, ParameterSet parameters);
protected abstract T BuildSingletonInstance(InjectionContext context, InjectionOperator <T> injectionOperator, ParameterSet parameters);
protected abstract T BuildSingletonInstance(ISharingLifetimeScope scope, InjectionOperator <T> injectionOperator, ParameterSet parameters);
public override T BuildInstance(ISharingLifetimeScope scope, InjectionOperator <T> injectionOperator, ParameterSet parameters) { return(DoBuildInstance(scope, injectionOperator, parameters)); }
public override T BuildInstance(InjectionContext context, InjectionOperator <T> injectionOperator, ParameterSet parameters) { return(DoBuildInstance(context, injectionOperator, parameters)); }
protected override T BuildSingletonInstance(InjectionContext context, InjectionOperator <T> injectionOperator, ParameterSet parameters) { return(DoBuildInstance(context, injectionOperator, parameters)); }