| Classes in this File | Line Coverage | Branch Coverage | Complexity | ||||
| CustomSqlRollback |
|
| 1.0;1 |
| 1 | package liquibase.change.custom; | |
| 2 | ||
| 3 | import liquibase.database.Database; | |
| 4 | import liquibase.exception.CustomChangeException; | |
| 5 | import liquibase.exception.RollbackImpossibleException; | |
| 6 | import liquibase.exception.UnsupportedChangeException; | |
| 7 | import liquibase.statement.SqlStatement; | |
| 8 | ||
| 9 | /** | |
| 10 | * Interface to implement that allows rollback of a custom sql change. | |
| 11 | * | |
| 12 | * @see liquibase.change.custom.CustomSqlChange | |
| 13 | */ | |
| 14 | public interface CustomSqlRollback { | |
| 15 | ||
| 16 | /** | |
| 17 | * Generates the SQL statements required to roll back the change | |
| 18 | * | |
| 19 | * @param database | |
| 20 | * the target {@link liquibase.database.Database} associated to this change's rollback statements | |
| 21 | * @return an array of {@link SqlStatement}s with the rollback statements | |
| 22 | * @throws liquibase.exception.CustomChangeException | |
| 23 | * if an exception occurs while processing this rollback | |
| 24 | * @throws liquibase.exception.UnsupportedChangeException | |
| 25 | * if this change is not supported by the {@link liquibase.database.Database} passed as argument | |
| 26 | * @throws liquibase.exception.RollbackImpossibleException | |
| 27 | * if rollback is not supported for this change | |
| 28 | */ | |
| 29 | public SqlStatement[] generateRollbackStatements(Database database) throws CustomChangeException, | |
| 30 | UnsupportedChangeException, RollbackImpossibleException; | |
| 31 | ||
| 32 | } |