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 | } |