/// <summary> /// InjectionThenAssociationResolver constructor /// </summary> /// <param name="srcInj">Injection container</param> /// <param name="locator">Owner</param> public InjectionThenAssociationResolver(TypeStrictInjectionContainer srcInj, CommonObjectLocator locator) { Contract.Requires(srcInj != null); Contract.Requires(locator != null); _sourceInj = srcInj; _curLocator = locator; }
/// <summary> /// InjectionThenAssociationResolver constructor /// </summary> /// <param name="srcInj">Injection container</param> /// <param name="locator">Owner</param> public InjectionThenAssociationResolver(TypeStrictInjectionContainer srcInj, CommonObjectLocator locator) { TurboContract.Requires(srcInj != null, conditionString: "srcInj != null"); TurboContract.Requires(locator != null, conditionString: "locator != null"); _sourceInj = srcInj; _curLocator = locator; }
/// <summary> /// CommonObjectLocator constructor /// </summary> /// <param name="useAssocAsDISource">Allows object injection from the IoC container itself (not only from InjectionContainer)</param> /// <param name="disposeInjectionWithBuilder">Indicates whether the all injected objects should be disposed with the container</param> public CommonObjectLocator(bool useAssocAsDISource, bool disposeInjectionWithBuilder) { _disposeInjectionWithBuilder = disposeInjectionWithBuilder; _useAssocAsDISource = useAssocAsDISource; _injection = new TypeStrictInjectionContainer(_disposeInjectionWithBuilder); if (_useAssocAsDISource) { _resolver = new InjectionThenAssociationResolver(_injection, this); } else { _resolver = _injection.GetDirectInjectionResolver(); } _association = new AssociationContainer(_resolver); }