/// <summary> /// Given a provider name locate the necessary /// <see cref="AdoTrackingResourceAccessor" /> in the configuration file. /// </summary> /// <returns> /// An <see cref="AdoTrackingResourceAccessor" />. /// </returns> public static AdoTrackingResourceAccessor Create( IAdoResourceProvider resourceProvider, ITrackingNameResolver nameResolver, IAdoValueReader valueReader, Transaction transaction, IStateProvider stateProvider) { // locate any mappings for the specified provider ProviderNameTypeMapping mapping = TrackingAdoProviderSettings.Get() .ResourceAccessors.FindByProviderName(resourceProvider.ProviderName); AdoTrackingResourceAccessor resourceAccessor; if (mapping != null) { resourceAccessor = TypeUtilities.CreateInstance <AdoTrackingResourceAccessor>( mapping.Type, new object[] { resourceProvider, nameResolver, valueReader, transaction, stateProvider }); } else { return(new AdoTrackingResourceAccessor( resourceProvider, nameResolver, valueReader, transaction, stateProvider)); } return(resourceAccessor); }
/// <summary> /// Given a provider name locate the necessary <see cref="ITrackingNameResolver" /> /// in the configuration file. /// </summary> /// <param name="providerName"> /// The name that uniquely identifies an ADO.NET provider. /// </param> /// <returns> /// An <see cref="ITrackingNameResolver" />. /// </returns> public static ITrackingNameResolver Create(string providerName) { // locate any mappings for the specified provider ProviderNameTypeMapping mapping = TrackingAdoProviderSettings.Get() .NameResolvers.FindByProviderName(providerName); ITrackingNameResolver nameResolver = null; if (mapping != null) { nameResolver = TypeUtilities.CreateInstance <ITrackingNameResolver>(mapping.Type); } return(nameResolver); }
/// <summary> /// Given a provider name locate the necessary <see cref="IAdoNameResolver" /> /// in the configuration file. /// </summary> /// <param name="providerName"> /// The name that uniquely identifies an ADO.NET provider. /// </param> /// <returns> /// An <see cref="IAdoNameResolver" />. /// </returns> public static IAdoNameResolver Create(string providerName) { // locate any mappings for the specified provider ProviderNameTypeMapping mapping = DbProviderSettings.Get(AdoWorkflowPersistenceService.ConfigurationSectionName) .NameResolvers.FindByProviderName(providerName); IAdoNameResolver nameResolver = null; if (mapping != null) { nameResolver = TypeUtilities.CreateInstance <IAdoNameResolver>(mapping.Type); } return(nameResolver); }
/// <summary> /// Given a section name and provider name locate the necessary /// <see cref="IAdoValueReader" /> in the configuration file. /// </summary> /// <param name="providerName"> /// The name that uniquely identifies an ADO.NET provider. /// </param> /// <returns> /// An <see cref="IAdoValueReader" />. /// </returns> public static IAdoValueReader Create(String providerName) { // locate any mappings for the specified provider ProviderNameTypeMapping mapping = CommonAdoProviderSettings.Get() .ValueReaders.FindByProviderName(providerName); IAdoValueReader valueReader; if (mapping != null) { valueReader = TypeUtilities.CreateInstance <IAdoValueReader>(mapping.Type); } else { // no value reader mapping found in config // return the default value reader valueReader = new DefaultAdoValueReader(); } return(valueReader); }
/// <summary> /// Given a provider name either locate the necessary <see cref="IAdoResourceProvider" /> /// in the configuration file or return the default (<see cref="DefaultAdoResourceProvider" />). /// </summary> /// <param name="sectionName"> /// Configuration section to retrieve data from. /// </param> /// <param name="providerName"> /// The name that uniquely identifies an ADO.NET provider. /// </param> /// <returns> /// An <see cref="IAdoResourceProvider" />. /// </returns> public static IAdoResourceProvider Create(string sectionName, string providerName) { // locate any mappings for the specified provider ProviderNameTypeMapping mapping = DbProviderSettings.Get(sectionName).ResourceProviders.FindByProviderName( providerName); IAdoResourceProvider resourceProvider; if (mapping != null) { resourceProvider = TypeUtilities.CreateInstance <IAdoResourceProvider>(mapping.Type); } else { // no resource provider mapping found in config // return the default resource provider resourceProvider = new DefaultAdoResourceProvider(); } return(resourceProvider); }
/// <summary> /// Given a provider name either locate the necessary <see cref="IAdoResourceProvider" /> /// in the configuration file or return the default (<see cref="DefaultAdoResourceProvider" />). /// </summary> /// <param name="connectionStringSettings"> /// The name that uniquely identifies an ADO.NET provider. /// </param> /// <returns> /// An <see cref="IAdoResourceProvider" />. /// </returns> public static IAdoResourceProvider Create(ConnectionStringSettings connectionStringSettings) { // locate any mappings for the specified provider ProviderNameTypeMapping mapping = CommonAdoProviderSettings.Get() .ResourceProviders.FindByProviderName(connectionStringSettings.ProviderName); IAdoResourceProvider resourceProvider = null; if (mapping != null) { resourceProvider = TypeUtilities.CreateInstance <IAdoResourceProvider>(mapping.Type); } if (resourceProvider == null) { // no resource provider mapping found in config // return the default resource provider resourceProvider = new DefaultAdoResourceProvider(); } resourceProvider.Initialise(connectionStringSettings); return(resourceProvider); }