liquibase.change.core.TagDatabaseChange Maven / Gradle / Ivy
package liquibase.change.core;
import liquibase.change.*;
import liquibase.database.Database;
import liquibase.statement.SqlStatement;
import liquibase.statement.core.TagDatabaseStatement;
@DatabaseChange(name="tagDatabase", description = "Applies a tag to the database for future rollback", priority = ChangeMetaData.PRIORITY_DEFAULT, since = "1.6")
public class TagDatabaseChange extends AbstractChange {
private String tag;
@DatabaseChangeProperty(description = "Tag to apply", exampleValue = "version_1.3")
public String getTag() {
return tag;
}
public void setTag(String tag) {
this.tag = tag;
}
@Override
public SqlStatement[] generateStatements(Database database) {
return new SqlStatement[] {
new TagDatabaseStatement(tag)
};
}
@Override
public String getConfirmationMessage() {
return "Tag '"+tag+"' applied to database";
}
@Override
protected Change[] createInverses() {
return new Change[0];
}
}