Package liquibase.changelog
Interface ChangeLogHistoryService
- All Superinterfaces:
Plugin
- All Known Implementing Classes:
AbstractChangeLogHistoryService
,MockChangeLogHistoryService
,OfflineChangeLogHistoryService
,StandardChangeLogHistoryService
-
Field Summary
Fields inherited from interface liquibase.plugin.Plugin
PRIORITY_DATABASE, PRIORITY_DEFAULT, PRIORITY_NOT_APPLICABLE, PRIORITY_SPECIALIZED
-
Method Summary
Modifier and TypeMethodDescriptionvoid
void
destroy()
void
int
int
getRanChangeSet
(ChangeSet changeSet) default List<RanChangeSet>
getRanChangeSets
(boolean allowChecksumsUpgrade) Deprecated.getRanDate
(ChangeSet changeSet) Returns the date the given changeSet was run.getRunStatus
(ChangeSet changeSet) void
init()
Ensures the change log history container is correctly initialized for use.boolean
This method should return true if all checksums in dbcl table have the same version as {@link liquibase.ChecksumVersion#latest().getVersion()}.void
removeFromHistory
(ChangeSet changeSet) default void
replaceChecksum
(ChangeSet changeSet) By default does nothing to keep compatibility with older versions, but subclasses may like to implement this method to support checksum upgrades.void
reset()
void
void
setDatabase
(Database database) void
setExecType
(ChangeSet changeSet, ChangeSet.ExecType execType) boolean
void
boolean
void
upgradeChecksums
(DatabaseChangeLog databaseChangeLog, Contexts contexts, LabelExpression labels) Updates null checksum values
-
Method Details
-
getPriority
int getPriority() -
supports
-
setDatabase
-
reset
void reset() -
init
Ensures the change log history container is correctly initialized for use. This method may be called multiple times so it should check state as needed.- Throws:
DatabaseException
-
upgradeChecksums
void upgradeChecksums(DatabaseChangeLog databaseChangeLog, Contexts contexts, LabelExpression labels) throws DatabaseException Updates null checksum values- Throws:
DatabaseException
-
getRanChangeSets
- Throws:
DatabaseException
-
getRanChangeSets
@Deprecated default List<RanChangeSet> getRanChangeSets(boolean allowChecksumsUpgrade) throws DatabaseException Deprecated.usegetRanChangeSets()
insteadThis method was created to clear out MD5sum for upgrade purpose but after some refactoring the logic was moved to Update commands and it should have been removed as everywhere it is called only with boolean false, so for core it is the same as getRanChangeSets().- Parameters:
allowChecksumsUpgrade
-- Throws:
DatabaseException
-
getRanChangeSet
RanChangeSet getRanChangeSet(ChangeSet changeSet) throws DatabaseException, DatabaseHistoryException -
getRunStatus
ChangeSet.RunStatus getRunStatus(ChangeSet changeSet) throws DatabaseException, DatabaseHistoryException -
getRanDate
Returns the date the given changeSet was run. Returns null if changeSet was not null. -
setExecType
- Throws:
DatabaseException
-
removeFromHistory
- Throws:
DatabaseException
-
getNextSequenceValue
- Throws:
LiquibaseException
-
tag
- Throws:
DatabaseException
-
tagExists
- Throws:
DatabaseException
-
clearAllCheckSums
- Throws:
LiquibaseException
-
destroy
- Throws:
DatabaseException
-
getDeploymentId
String getDeploymentId() -
resetDeploymentId
void resetDeploymentId() -
generateDeploymentId
void generateDeploymentId() -
isDatabaseChecksumsCompatible
boolean isDatabaseChecksumsCompatible()This method should return true if all checksums in dbcl table have the same version as {@link liquibase.ChecksumVersion#latest().getVersion()}. This method is used by Update command family in order to know if there are old checksum versions in the database that should be updated or if it can proceed with fast checksum update process. IF your implementation does not validate dbcl table then return false.- Returns:
- false if we have checksums different from {@link liquibase.ChecksumVersion#latest().getVersion()} in the dbcl table.
-
replaceChecksum
By default does nothing to keep compatibility with older versions, but subclasses may like to implement this method to support checksum upgrades.- Throws:
DatabaseException
-
getRanChangeSets()
instead