package liquibase.change.core; import liquibase.change.AbstractChange; import liquibase.change.ChangeMetaData; import liquibase.change.DatabaseChange; import liquibase.database.Database; import liquibase.exception.ValidationErrors; import liquibase.statement.SqlStatement; import liquibase.statement.core.SetColumnRemarksStatement; import liquibase.statement.core.SetTableRemarksStatement; @DatabaseChange(name="setColumnRemarks", description = "Set remarks on a column", priority = ChangeMetaData.PRIORITY_DEFAULT) public class SetColumnRemarksChange extends AbstractChange { private String catalogName; private String schemaName; private String tableName; private String columnName; private String remarks; @Override public ValidationErrors validate(Database database) { ValidationErrors validationErrors = new ValidationErrors(); validationErrors.addAll(super.validate(database)); return validationErrors; } @Override public SqlStatement[] generateStatements(Database database) { return new SqlStatement[] { new SetColumnRemarksStatement(catalogName, schemaName, tableName, columnName, remarks) }; } public String getCatalogName() { return catalogName; } public void setCatalogName(String catalogName) { this.catalogName = catalogName; } public String getSchemaName() { return schemaName; } public void setSchemaName(String schemaName) { this.schemaName = schemaName; } public String getTableName() { return tableName; } public void setTableName(String tableName) { this.tableName = tableName; } public String getColumnName() { return columnName; } public void setColumnName(String columnName) { this.columnName = columnName; } public String getRemarks() { return remarks; } public void setRemarks(String remarks) { this.remarks = remarks; } @Override public String getConfirmationMessage() { return "Remarks set on " + tableName+"."+columnName; } @Override public String getSerializedObjectNamespace() { return STANDARD_CHANGELOG_NAMESPACE; } }