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