public void UpdateOrAddConfig(SqlMapConfig updated) { if (_sqlMapConfigs.TryGetValue(updated.Name, out var existing)) { _sqlMapConfigs.Update(updated.Name, updated); } else { _sqlMapConfigs.Add(updated.Name, updated); } }
public ConfigProcessingResult Store() { var defaultConfig = new SqlMapConfig(); _storage.SqlMapConfigProvider.AddMultiple(new List <SqlMapConfig> { defaultConfig }); return(new ConfigProcessingResult { FallbackDefaultConfigUsed = true, }); }
public SmartSqlMapper(ILoggerFactory loggerFactory, String sqlMapConfigFilePath, IConfigLoader configLoader) { _loggerFactory = loggerFactory; _logger = loggerFactory.CreateLogger <SmartSqlMapper>(); ConfigLoader = configLoader; SqlMapConfig = ConfigLoader.Load(); DbProviderFactory = SqlMapConfig.Database.DbProvider.DbProviderFactory; SessionStore = new DbConnectionSessionStore(loggerFactory, this.GetHashCode().ToString()); SqlBuilder = new SqlBuilder(loggerFactory, this); DataSourceManager = new DataSourceManager(loggerFactory, this); CacheManager = new CacheManager(loggerFactory, this); _sqlRuner = new SqlRuner(loggerFactory, SqlBuilder, this); ConfigLoader.OnChanged = SqlConfigOnChanged; SqlMapConfig.SetLogger(_loggerFactory.CreateLogger <SmartSqlMapConfig>()); }
public void ShouldCallOneTime() { var defaultSetting = new SqlMapConfig(); var storageMock = new Mock <IPackageStorage>(); storageMock.Setup(e => e.SqlMapConfigProvider.AddMultiple(It.IsAny <IEnumerable <SqlMapConfig> >())); var instance = new FallbackConfigStrategy(Enumerable.Empty <SqlMapConfig>(), storageMock.Object); instance.Store(); storageMock.Verify(e => e.SqlMapConfigProvider.AddMultiple(new List <SqlMapConfig> { defaultSetting })); }
public void ShouldCallMultipleTimes() { var map1 = new SqlMapConfig(); var map2 = new SqlMapConfig(); List <SqlMapConfig> maps = new List <SqlMapConfig> { map1, map2 }; var storageMock = new Mock <IPackageStorage>(); storageMock.Setup(e => e.SqlMapConfigProvider.AddMultiple(It.IsAny <IEnumerable <SqlMapConfig> >())); var instance = new MultipleConfigsStorageStrategy(maps, storageMock.Object); instance.Store(); storageMock.Verify(e => e.SqlMapConfigProvider.AddMultiple(maps)); }
public SmartSqlMapper( ILoggerFactory loggerFactory, String sqlMapConfigFilePath , IDbConnectionSessionStore sessionStore , IDataSourceManager dataSourceManager , ICacheManager cacheManager , ISqlBuilder sqlBuilder , IConfigLoader configLoader ) { _loggerFactory = loggerFactory; _logger = loggerFactory.CreateLogger <SmartSqlMapper>(); SqlMapConfig = ConfigLoader.Load(); DbProviderFactory = SqlMapConfig.Database.DbProvider.DbProviderFactory; SessionStore = sessionStore; SqlBuilder = sqlBuilder; DataSourceManager = dataSourceManager; CacheManager = cacheManager; CacheManager.SmartSqlMapper = this; _sqlRuner = new SqlRuner(loggerFactory, SqlBuilder, this); ConfigLoader.OnChanged = SqlConfigOnChanged; SqlMapConfig.SetLogger(_loggerFactory.CreateLogger <SmartSqlMapConfig>()); }