private void DoPopulate(IEnumerable<string> databases, bool overwriteExisting) { var context = Settings.CurrentContext; foreach (var name in databases) { var contextHasDatabase = context.Databases.Any(d => d.Name.Equals(name)); var shallAdd = overwriteExisting || !contextHasDatabase; if (shallAdd) { var database = new DbToolDatabase { Database = name }; if (contextHasDatabase) { Logger.WriteLine("Overwriting {0}", name); context.RemoveDatabase(name); context.AddDatabase(database); } else { Logger.WriteLine("Adding {0}", name); context.AddDatabase(database); } } else { Logger.WriteLine("Skipping {0}", name); } } }
private void DoPopulate(IEnumerable <string> databases, bool overwriteExisting) { var context = Settings.CurrentContext; foreach (var name in databases) { var contextHasDatabase = context.Databases.Any(d => d.Name.Equals(name)); var shallAdd = overwriteExisting || !contextHasDatabase; if (shallAdd) { var database = new DbToolDatabase { Database = name }; if (contextHasDatabase) { Logger.WriteLine("Overwriting {0}", name); context.RemoveDatabase(name); context.AddDatabase(database); } else { Logger.WriteLine("Adding {0}", name); context.AddDatabase(database); } } else { Logger.WriteLine("Skipping {0}", name); } } }
public DefaultExecutorProvider(IDbToolConfig config, DbToolDatabase database, DbConnection dbConnection) { _config = config; Settings = _config.Settings; Database = database; DbConnection = dbConnection; _cSharpExecutor = new CSharpExecutor(); }
public DefaultExecutorProvider(IDbToolConfig config, DbToolDatabase database, DbConnection dbConnection, ICSharpExecutor cSharpExecutor) { _config = config; Settings = _config.Settings; Database = database; DbConnection = dbConnection; _cSharpExecutor = cSharpExecutor; }
public DbContext CreateDbContext(DbToolDatabase database) { var handler = _assemblyLoader.GetAssemblyFor(database.DatabaseType); var connection = handler.CreateInstance<IDbConnectionFactory>().CreateConnection(database.GetConnectionData()); var executorProvider = CreateExecutorProvider(database, connection, handler); return new DbContext(connection, executorProvider); }
public void ConnectTo(DbToolDatabase connectionData) { if (IsConnected) { throw new UserException(ExceptionType.AlreadyConnected); } _database = connectionData; _dbContext = _dbConnectionFactory.CreateDbContext(connectionData); }
public void AddDatabase(DbToolDatabase database) { if (Databases.Any(d => d.Name.EqualsIgnoreCase(database.Name))) { throw new UserException(ExceptionType.DatabaseAlreadyExists, database.Name); } Databases.Add(database); database.Parent = this; }
private IExecutorProvider CreateExecutorProvider(DbToolDatabase database, DbConnection connection, AssemblyHandler handler) { if (handler.HasType <IExecutorProvider>()) { return(handler.CreateInstance <IExecutorProvider>(_config, database, connection, _cSharpExecutor)); } return(new DefaultExecutorProvider(_config, database, connection, _cSharpExecutor)); }
public DbContext CreateDbContext(DbToolDatabase database) { var handler = _assemblyLoader.GetAssemblyFor(database.DatabaseType); var connection = handler.CreateInstance <IDbConnectionFactory>().CreateConnection(database.GetConnectionData()); var executorProvider = CreateExecutorProvider(database, connection, handler); return(new DbContext(connection, executorProvider)); }
private IExecutorProvider CreateExecutorProvider(DbToolDatabase database, DbConnection connection, AssemblyHandler handler) { if (handler.HasType<IExecutorProvider>()) { return handler.CreateInstance<IExecutorProvider>(_config, database, connection); } return new DefaultExecutorProvider(_config, database, connection); }
public void Disconnect() { if (IsConnected) { _dbContext.DbConnection.Close(); _dbContext.DbConnection.Dispose(); _dbContext = null; _database = null; } }
public SqlServerExecutorProvider(IDbToolConfig config, DbToolDatabase database, DbConnection dbConnection) : base(config, database, dbConnection) { }
public static void SetDb(DbToolDatabase db) { DynamicQuery.ConnectionData = db.GetConnectionData(); }
public MigratorDotNetRunner(DbToolDatabase database, IDbToolLogger logger) { _database = database; _logger = logger; }
public static void SetDb(DbToolDatabase db) { Db.ConnectionData = db.GetConnectionData(); }
public MigSharpRunner(DbToolDatabase database) { _database = database; }
public DbToolContext WithDatabase(DbToolDatabase database) { AddDatabase(database); return this; }
public MySqlExecutorProvider(IDbToolConfig config, DbToolDatabase database, DbConnection dbConnection, ICSharpExecutor cSharpExecutor) : base(config, database, dbConnection, cSharpExecutor) { }
public MigrationExecutor(DbToolDatabase database) { _database = database; }