/// <summary> /// Enables the dynamic registration of a new DBFactory tat can be used for a specific provider /// </summary> /// <param name="imp"></param> public static void RegisterImplementation(DBProviderImplementation imp) { if (null == imp) { throw new ArgumentNullException("imp"); } RegisterImplementation(imp.ProviderName, imp); }
/// <summary> /// Enables the dynamic registration of a new DBFactory that can be used with a specific provider /// </summary> /// <param name="providername">The name of the provider that the DBFactory is registered against</param> /// <param name="imp">The factory to register</param> public static void RegisterImplementation(string providername, DBProviderImplementation imp) { if (null == imp) { throw new ArgumentNullException("factory"); } if (string.IsNullOrEmpty(providername)) { throw new ArgumentNullException("providername"); } lock (_lock) { if (ConfiguredImplementations.Contains(providername)) { ConfiguredImplementations.Remove(providername); } ConfiguredImplementations.Add(providername, imp); } }