Skip to content

Commit

Permalink
Make factory methods static
Browse files Browse the repository at this point in the history
  • Loading branch information
DoodleBobBuffPants committed Dec 9, 2020
1 parent f0b8b03 commit f53f4d4
Show file tree
Hide file tree
Showing 8 changed files with 29 additions and 50 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@
import java.util.Set;

public class CommandResultFactory {
public InfoResult createInfoResult(Configuration configuration, Database database, MigrationInfo[] migrationInfos, MigrationInfo current, boolean allSchemasEmpty) {
public static InfoResult createInfoResult(Configuration configuration, Database database, MigrationInfo[] migrationInfos, MigrationInfo current, boolean allSchemasEmpty) {
String flywayVersion = VersionPrinter.getVersion();
String databaseName = getDatabaseName(configuration, database);
Set<MigrationVersion> undoableVersions = getUndoableVersions(migrationInfos);
Expand All @@ -56,7 +56,7 @@ public InfoResult createInfoResult(Configuration configuration, Database databas
allSchemasEmpty);
}

public MigrateResult createMigrateResult(String databaseName, Configuration configuration) {
public static MigrateResult createMigrateResult(String databaseName, Configuration configuration) {
String flywayVersion = VersionPrinter.getVersion();

return new MigrateResult(
Expand All @@ -65,25 +65,25 @@ public MigrateResult createMigrateResult(String databaseName, Configuration conf
String.join(", ", configuration.getSchemas()));
}

public CleanResult createCleanResult(String databaseName) {
public static CleanResult createCleanResult(String databaseName) {
String flywayVersion = VersionPrinter.getVersion();

return new CleanResult(flywayVersion, databaseName);
}

public UndoResult createUndoResult(String databaseName, Configuration configuration) {
public static UndoResult createUndoResult(String databaseName, Configuration configuration) {
String flywayVersion = VersionPrinter.getVersion();

return new UndoResult(flywayVersion, databaseName, String.join(", ", configuration.getSchemas()));
}

public BaselineResult createBaselineResult(String databaseName) {
public static BaselineResult createBaselineResult(String databaseName) {
String flywayVersion = VersionPrinter.getVersion();

return new BaselineResult(flywayVersion, databaseName);
}

public ValidateResult createValidateResult(String databaseName, ErrorDetails validationError, int validationCount, List<ValidateOutput> invalidMigrations, List<String> warnings) {
public static ValidateResult createValidateResult(String databaseName, ErrorDetails validationError, int validationCount, List<ValidateOutput> invalidMigrations, List<String> warnings) {
String flywayVersion = VersionPrinter.getVersion();
boolean validationSuccessful = validationError == null;
String errorMessage = validationError == null ? null : validationError.errorMessage;
Expand All @@ -92,13 +92,13 @@ public ValidateResult createValidateResult(String databaseName, ErrorDetails val
return new ValidateResult(flywayVersion, databaseName, validationError, validationSuccessful, validationCount, invalidMigrationsList, warnings, errorMessage);
}

public RepairResult createRepairResult(String databaseName) {
public static RepairResult createRepairResult(String databaseName) {
String flywayVersion = VersionPrinter.getVersion();

return new RepairResult(flywayVersion, databaseName);
}

private String getDatabaseName(Configuration configuration, Database database) {
private static String getDatabaseName(Configuration configuration, Database database) {
try {
Connection connection = configuration.getDataSource().getConnection();
String catalog = connection.getCatalog();
Expand All @@ -109,7 +109,7 @@ private String getDatabaseName(Configuration configuration, Database database) {
}
}

public InfoOutput createInfoOutput(Set<MigrationVersion> undoableVersions, MigrationInfo migrationInfo) {
public static InfoOutput createInfoOutput(Set<MigrationVersion> undoableVersions, MigrationInfo migrationInfo) {
return new InfoOutput(getCategory(migrationInfo),
migrationInfo.getVersion() != null ? migrationInfo.getVersion().getVersion() : "",
migrationInfo.getDescription(),
Expand All @@ -122,7 +122,7 @@ public InfoOutput createInfoOutput(Set<MigrationVersion> undoableVersions, Migra
migrationInfo.getExecutionTime() != null ? migrationInfo.getExecutionTime() : 0);
}

public MigrateOutput createMigrateOutput(MigrationInfo migrationInfo, int executionTime) {
public static MigrateOutput createMigrateOutput(MigrationInfo migrationInfo, int executionTime) {
return new MigrateOutput(getCategory(migrationInfo),
migrationInfo.getVersion() != null ? migrationInfo.getVersion().getVersion() : "",
migrationInfo.getDescription(),
Expand All @@ -131,29 +131,29 @@ public MigrateOutput createMigrateOutput(MigrationInfo migrationInfo, int execut
executionTime);
}

public UndoOutput createUndoOutput(ResolvedMigration migrationInfo) {
public static UndoOutput createUndoOutput(ResolvedMigration migrationInfo) {
return new UndoOutput(
migrationInfo.getVersion().getVersion(),
migrationInfo.getDescription(),
migrationInfo.getPhysicalLocation() != null ? migrationInfo.getPhysicalLocation() : "");
}

public ValidateOutput createValidateOutput(MigrationInfo migrationInfo, ErrorDetails validateError) {
public static ValidateOutput createValidateOutput(MigrationInfo migrationInfo, ErrorDetails validateError) {
return new ValidateOutput(
migrationInfo.getVersion() != null ? migrationInfo.getVersion().getVersion() : "",
migrationInfo.getDescription(),
migrationInfo.getPhysicalLocation() != null ? migrationInfo.getPhysicalLocation() : "",
validateError);
}

public RepairOutput createRepairOutput(MigrationInfo migrationInfo) {
public static RepairOutput createRepairOutput(MigrationInfo migrationInfo) {
return new RepairOutput(
migrationInfo.getVersion() != null ? migrationInfo.getVersion().getVersion() : "",
migrationInfo.getDescription(),
migrationInfo.getPhysicalLocation() != null ? migrationInfo.getPhysicalLocation() : "");
}

public RepairOutput createRepairOutput(AppliedMigration am) {
public static RepairOutput createRepairOutput(AppliedMigration am) {
return new RepairOutput(am.getVersion() != null ? am.getVersion().getVersion(): "", am.getDescription(), "");
}

Expand Down Expand Up @@ -195,7 +195,7 @@ private static MigrationInfo[] removeAvailableUndos(MigrationInfo[] migrationInf
return result.toArray(new MigrationInfo[0]);
}

private String getCategory(MigrationInfo migrationInfo) {
private static String getCategory(MigrationInfo migrationInfo) {
if (migrationInfo.getType().isSynthetic()) return "";
if (migrationInfo.getVersion() == null) return "Repeatable";

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -74,8 +74,7 @@ public DbBaseline(SchemaHistory schemaHistory, MigrationVersion baselineVersion,
this.baselineDescription = baselineDescription;
this.callbackExecutor = callbackExecutor;

CommandResultFactory commandResultFactory = new CommandResultFactory();
baselineResult = commandResultFactory.createBaselineResult(database.getCatalog());
baselineResult = CommandResultFactory.createBaselineResult(database.getCatalog());
}

/**
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -100,8 +100,7 @@ public CleanResult clean() throws FlywayException {
}
callbackExecutor.onEvent(Event.BEFORE_CLEAN);

CommandResultFactory commandResultFactory = new CommandResultFactory();
CleanResult cleanResult = commandResultFactory.createCleanResult(database.getCatalog());
CleanResult cleanResult = CommandResultFactory.createCleanResult(database.getCatalog());

try {
connection.changeCurrentSchemaTo(schemas[0]);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -96,11 +96,6 @@ public class DbMigrate {
*/
private MigrateResult migrateResult;

/**
* The factory object which constructs a migration result
*/
private final CommandResultFactory commandResultFactory;

/**
* This is used to remember the type of migration between calls to migrateGroup().
*/
Expand All @@ -126,8 +121,6 @@ public DbMigrate(Database database,
this.migrationResolver = migrationResolver;
this.configuration = configuration;
this.callbackExecutor = callbackExecutor;

this.commandResultFactory = new CommandResultFactory();
}

/**
Expand All @@ -139,7 +132,7 @@ public DbMigrate(Database database,
public MigrateResult migrate() throws FlywayException {
callbackExecutor.onMigrateOrUndoEvent(Event.BEFORE_MIGRATE);

migrateResult = commandResultFactory.createMigrateResult(database.getCatalog(), configuration);
migrateResult = CommandResultFactory.createMigrateResult(database.getCatalog(), configuration);

int count;
try {
Expand Down Expand Up @@ -444,7 +437,7 @@ public java.sql.Connection getConnection() {
stopWatch.stop();
int executionTime = (int) stopWatch.getTotalTimeMillis();

migrateResult.migrations.add(commandResultFactory.createMigrateOutput(migration, executionTime));
migrateResult.migrations.add(CommandResultFactory.createMigrateOutput(migration, executionTime));

schemaHistory.addAppliedMigration(migration.getVersion(), migration.getDescription(), migration.getType(),
migration.getScript(), migration.getResolvedMigration().getChecksum(), executionTime, true);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -77,11 +77,6 @@ public class DbRepair {
*/
private RepairResult repairResult;

/**
* The factory object which constructs a repair result.
*/
private final CommandResultFactory commandResultFactory;

/**
* The Flyway configuration.
*/
Expand All @@ -106,8 +101,7 @@ public DbRepair(Database database, MigrationResolver migrationResolver, SchemaHi
this.migrationInfoService = new MigrationInfoServiceImpl(migrationResolver, schemaHistory, database, configuration,
MigrationVersion.LATEST, true, configuration.getCherryPick(), true, true, true, true);

this.commandResultFactory = new CommandResultFactory();
this.repairResult = commandResultFactory.createRepairResult(database.getCatalog());
this.repairResult = CommandResultFactory.createRepairResult(database.getCatalog());
}

/**
Expand Down Expand Up @@ -176,7 +170,7 @@ private boolean deleteMissingMigrations() {
|| state == MigrationState.FUTURE_SUCCESS || state == MigrationState.FUTURE_FAILED) {
schemaHistory.delete(applied);
removed = true;
repairResult.migrationsDeleted.add(commandResultFactory.createRepairOutput(migrationInfo));
repairResult.migrationsDeleted.add(CommandResultFactory.createRepairOutput(migrationInfo));
}
}

Expand All @@ -203,7 +197,7 @@ private boolean alignAppliedMigrationsWithResolvedMigrations() {
&& updateNeeded(resolved, applied)) {
schemaHistory.update(applied, resolved);
repaired = true;
repairResult.migrationsAligned.add(commandResultFactory.createRepairOutput(migrationInfo));
repairResult.migrationsAligned.add(CommandResultFactory.createRepairOutput(migrationInfo));
}

// Repair repeatable
Expand All @@ -218,7 +212,7 @@ && updateNeeded(resolved, applied)) {
&& resolved.checksumMatchesWithoutBeingIdentical(applied.getChecksum())) {
schemaHistory.update(applied, resolved);
repaired = true;
repairResult.migrationsAligned.add(commandResultFactory.createRepairOutput(migrationInfo));
repairResult.migrationsAligned.add(CommandResultFactory.createRepairOutput(migrationInfo));
}
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -118,9 +118,6 @@ public DbValidate(Database database, SchemaHistory schemaHistory, Schema schema,
* @return The validation error, if any.
*/
public ValidateResult validate() {

CommandResultFactory commandResultFactory = new CommandResultFactory();

if (!schema.exists()) {
if (!migrationResolver.resolveMigrations(new Context() {
@Override
Expand All @@ -130,9 +127,9 @@ public Configuration getConfiguration() {
}).isEmpty() && !pending) {
String validationErrorMessage = "Schema " + schema + " doesn't exist yet";
ErrorDetails validationError = new ErrorDetails(ErrorCode.SCHEMA_DOES_NOT_EXIST, validationErrorMessage);
return commandResultFactory.createValidateResult(database.getCatalog(), validationError, 0, null, new ArrayList<>());
return CommandResultFactory.createValidateResult(database.getCatalog(), validationError, 0, null, new ArrayList<>());
}
return commandResultFactory.createValidateResult(database.getCatalog(), null, 0, null, new ArrayList<>());
return CommandResultFactory.createValidateResult(database.getCatalog(), null, 0, null, new ArrayList<>());
}

callbackExecutor.onEvent(Event.BEFORE_VALIDATE);
Expand Down Expand Up @@ -190,7 +187,6 @@ public Pair<Integer, List<ValidateOutput>> call() {
callbackExecutor.onEvent(Event.AFTER_VALIDATE_ERROR);
}

ValidateResult validateResult = commandResultFactory.createValidateResult(database.getCatalog(), validationError, count, invalidMigrations, warnings);
return validateResult;
return CommandResultFactory.createValidateResult(database.getCatalog(), validationError, count, invalidMigrations, warnings);
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -596,12 +596,11 @@ public MigrationInfo[] outOfOrder() {
*/
public List<ValidateOutput> validate() {
List<ValidateOutput> invalidMigrations = new ArrayList<>();
CommandResultFactory commandResultFactory = new CommandResultFactory();

for (MigrationInfoImpl migrationInfo : migrationInfos) {
ErrorDetails validateError = migrationInfo.validate();
if (validateError != null) {
invalidMigrations.add(commandResultFactory.createValidateOutput(migrationInfo, validateError));
invalidMigrations.add(CommandResultFactory.createValidateOutput(migrationInfo, validateError));
}
}
return invalidMigrations;
Expand All @@ -617,8 +616,7 @@ public InfoResult getInfoResult() {
}

public InfoResult getInfoResult(MigrationInfo[] infos) {
CommandResultFactory commandResultFactory = new CommandResultFactory();
return commandResultFactory.createInfoResult(this.context.getConfiguration(), this.database, infos, this.current(), this.allSchemasEmpty);
return CommandResultFactory.createInfoResult(this.context.getConfiguration(), this.database, infos, this.current(), this.allSchemasEmpty);
}


Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -249,7 +249,7 @@ public boolean removeFailedMigrations(RepairResult repairResult, MigrationPatter
try {
appliedMigrations.stream()
.filter(am -> !am.isSuccess())
.forEach(am -> repairResult.migrationsRemoved.add(new CommandResultFactory().createRepairOutput(am)));
.forEach(am -> repairResult.migrationsRemoved.add(CommandResultFactory.createRepairOutput(am)));

for (AppliedMigration appliedMigration : appliedMigrations) {
jdbcTemplate.execute("DELETE FROM " + table +
Expand Down

0 comments on commit f53f4d4

Please sign in to comment.