Class AbstractChange

All Implemented Interfaces:
Cloneable, Change, ExtensibleObject, Plugin, LiquibaseSerializable
Direct Known Subclasses:
AbstractModifyDataChange, AbstractSQLChange, AbstractTableChange, AddAutoIncrementChange, AddColumnChange, AddDefaultValueChange, AddForeignKeyConstraintChange, AddLookupTableChange, AddNotNullConstraintChange, AddPrimaryKeyChange, AddUniqueConstraintChange, AlterSequenceChange, CreateIndexChange, CreateProcedureChange, CreateSequenceChange, CreateTableChange, CreateViewChange, CustomChangeWrapper, DropAllForeignKeyConstraintsChange, DropColumnChange, DropDefaultValueChange, DropForeignKeyConstraintChange, DropIndexChange, DropNotNullConstraintChange, DropPrimaryKeyChange, DropProcedureChange, DropSequenceChange, DropTableChange, DropUniqueConstraintChange, DropViewChange, EmptyChange, ExecuteShellCommandChange, InsertDataChange, MergeColumnChange, ModifyDataTypeChange, OutputChange, RenameColumnChange, RenameSequenceChange, RenameTableChange, RenameViewChange, SetColumnRemarksChange, SetTableRemarksChange, StopChange, TagDatabaseChange

public abstract class AbstractChange extends AbstractPlugin implements Change
Standard superclass to simplify Change implementations. You can implement Change directly, this class is purely for convenience but recommended.

By default, this base class relies on annotations such as DatabaseChange and DatabaseChangeProperty and delegating logic to the SqlGenerator objects created to do the actual change work. Place the @DatabaseChangeProperty annotations on the read "get" methods to control property metadata.