Package org.flywaydb.core.api.executor
Interface MigrationExecutor
-
public interface MigrationExecutor
Executes a migration.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description boolean
canExecuteInTransaction()
Whether the execution can take place inside a transaction.void
execute(Context context)
Executes the migration this executor is associated with.boolean
shouldExecute()
Whether the migration associated with this executor should be executed or not.
-
-
-
Method Detail
-
execute
void execute(Context context) throws java.sql.SQLException
Executes the migration this executor is associated with.- Parameters:
context
- The context to use to execute the migration against the DB.- Throws:
java.sql.SQLException
- when the execution of a statement failed.
-
canExecuteInTransaction
boolean canExecuteInTransaction()
Whether the execution can take place inside a transaction. Almost all implementation should returntrue
. This however makes it possible to execute certain migrations outside a transaction. This is useful for databases like PostgreSQL and SQL Server where certain statement can only execute outside a transaction.- Returns:
true
if a transaction should be used (highly recommended), orfalse
if not.
-
shouldExecute
boolean shouldExecute()
Whether the migration associated with this executor should be executed or not.- Returns:
true
if the migration should be executed, orfalse
if not.
-
-