/// <summary> /// Retrieves an <see cref="ObjectProvider"/> based on the provider binder. /// </summary> /// <param name="binder">The <see cref="ObjectProviderBinder"/> to retrieve the provider for.</param> /// <returns>An <see cref="ObjectProvider"/> base on the binder supplied.</returns> public override ObjectProvider GetObjectProvider(ObjectProviderBinder binder) { if (binder == null) { throw new AdapterException(string.Format(CultureInfo.CurrentCulture, Resources.ArgumentNullExceptionMessage), new ArgumentNullException("binder")) { ExceptionId = AdapterException.SystemExceptionGuid }; } if (binder.ObjectProviderProxy.ObjectDefinition != null && !IsStaticObjectProvider(binder.ObjectProviderProxy.ObjectDefinition)) { return this.GetObjectProviders().SingleOrDefault(p => p.Id == GetDynamicProviderId(binder.ObjectProviderProxy.ObjectDefinition)); } return base.GetObjectProvider(binder); }
/// <summary> /// Retrieves an <see cref="ObjectProvider"/> based on the provider binder. /// </summary> /// <param name="binder">The <see cref="ObjectProviderBinder"/> to retrieve the provider for.</param> /// <returns>An <see cref="ObjectProvider"/> base on the binder supplied.</returns> public override ObjectProvider GetObjectProvider(ObjectProviderBinder binder) { if (binder == null) { throw new AdapterException(string.Format(CultureInfo.CurrentCulture, Resources.ArgumentNullExceptionMessage), new ArgumentNullException("binder")) { ExceptionId = AdapterException.SystemExceptionGuid }; } if (binder.ObjectProviderProxy.ObjectDefinition != null && !IsStaticObjectProvider(binder.ObjectProviderProxy.ObjectDefinition)) { return(this.GetObjectProviders().SingleOrDefault(p => p.Id == GetDynamicProviderId(binder.ObjectProviderProxy.ObjectDefinition))); } return(base.GetObjectProvider(binder)); }
public TargetBindingParent(IObjectProvider objectProvider) { objectProviderBinder = new ObjectProviderBinder <ITargetBinding>(objectProvider); }
public EventInvokersBinding(IObjectProvider objectProvider, EventInvokers eventInvokers) { this.eventInvokers = eventInvokers; objectProviderBinder = new ObjectProviderBinder <ITypeBinding <EventInvokers> >(objectProvider); }