public override T Resolve(DictionaryContainer container) { lock (this) { if (this.SingletonHasNotBeenCreated) { var instance = this.resolveFunction(container); this.resolver.state = new ResolvedState(instance); this.SignalThatSingletonHasBeenCreated(); } return(this.resolver.Resolve(container)); } }
public abstract T Resolve(DictionaryContainer container);
public override T Resolve(DictionaryContainer container) { return(this.instance); }
public T Resolve(DictionaryContainer container) { return(this.state.Resolve(container)); }