/// <summary> /// Initializes a new instance of the <see cref="Controller" /> class. /// </summary> /// <param name="availableChangeScriptsProvider">The available change scripts provider.</param> /// <param name="databaseSchemaVersionManager">The applied changes provider.</param> /// <param name="doApplier">The do applier.</param> /// <param name="undoApplier">The undo applier.</param> /// <param name="createChangeLogTable">Whether the change log table should be created or not.</param> /// <param name="infoTextWriter">The info text writer.</param> /// <param name="repositorioScripts"></param> public Controller( IRepositorioScripts repositorioScripts, IDatabaseSchemaVersionManager databaseSchemaVersionManager, IChangeScriptApplier doApplier, IChangeScriptApplier undoApplier, bool createChangeLogTable, TextWriter infoTextWriter) { this.doApplier = doApplier; this.undoApplier = undoApplier; this.createChangeLogTable = createChangeLogTable; this.databaseSchemaVersionManager = databaseSchemaVersionManager; infoWriter = infoTextWriter; this.repositorioScripts = repositorioScripts; }