Package liquibase.changelog
Class ChangeSet
- java.lang.Object
-
- liquibase.changelog.ChangeSet
-
- All Implemented Interfaces:
ChangeLogChild
,Conditional
,LiquibaseSerializable
public class ChangeSet extends Object implements Conditional, ChangeLogChild
Encapsulates a changeSet and all its associated changes.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
ChangeSet.ExecType
static class
ChangeSet.RunStatus
static class
ChangeSet.ValidationFailOption
-
Nested classes/interfaces inherited from interface liquibase.serializer.LiquibaseSerializable
LiquibaseSerializable.SerializationType
-
-
Field Summary
Fields Modifier and Type Field Description protected CheckSum
checkSum
protected String
key
-
Fields inherited from interface liquibase.serializer.LiquibaseSerializable
GENERIC_CHANGELOG_EXTENSION_NAMESPACE, GENERIC_SNAPSHOT_EXTENSION_NAMESPACE, STANDARD_CHANGELOG_NAMESPACE, STANDARD_SNAPSHOT_NAMESPACE
-
-
Constructor Summary
Constructors Constructor Description ChangeSet(String id, String author, boolean alwaysRun, boolean runOnChange, String filePath, String contextFilter, String dbmsList, boolean runInTransaction, DatabaseChangeLog databaseChangeLog)
ChangeSet(String id, String author, boolean alwaysRun, boolean runOnChange, String filePath, String contextFilter, String dbmsList, boolean runInTransaction, ObjectQuotingStrategy quotingStrategy, DatabaseChangeLog databaseChangeLog)
ChangeSet(String id, String author, boolean alwaysRun, boolean runOnChange, String filePath, String contextFilter, String dbmsList, String runWith, String runWithSpoolFile, boolean runInTransaction, ObjectQuotingStrategy quotingStrategy, DatabaseChangeLog databaseChangeLog)
ChangeSet(String id, String author, boolean alwaysRun, boolean runOnChange, String filePath, String contextFilter, String dbmsList, DatabaseChangeLog databaseChangeLog)
ChangeSet(String id, String author, boolean alwaysRun, boolean runOnChange, String filePath, String contextFilter, String dbmsList, ObjectQuotingStrategy quotingStrategy, DatabaseChangeLog databaseChangeLog)
ChangeSet(DatabaseChangeLog databaseChangeLog)
-
Method Summary
-
-
-
Constructor Detail
-
ChangeSet
public ChangeSet(DatabaseChangeLog databaseChangeLog)
-
ChangeSet
public ChangeSet(String id, String author, boolean alwaysRun, boolean runOnChange, String filePath, String contextFilter, String dbmsList, DatabaseChangeLog databaseChangeLog)
-
ChangeSet
public ChangeSet(String id, String author, boolean alwaysRun, boolean runOnChange, String filePath, String contextFilter, String dbmsList, boolean runInTransaction, DatabaseChangeLog databaseChangeLog)
-
ChangeSet
public ChangeSet(String id, String author, boolean alwaysRun, boolean runOnChange, String filePath, String contextFilter, String dbmsList, ObjectQuotingStrategy quotingStrategy, DatabaseChangeLog databaseChangeLog)
-
ChangeSet
public ChangeSet(String id, String author, boolean alwaysRun, boolean runOnChange, String filePath, String contextFilter, String dbmsList, boolean runInTransaction, ObjectQuotingStrategy quotingStrategy, DatabaseChangeLog databaseChangeLog)
-
ChangeSet
public ChangeSet(String id, String author, boolean alwaysRun, boolean runOnChange, String filePath, String contextFilter, String dbmsList, String runWith, String runWithSpoolFile, boolean runInTransaction, ObjectQuotingStrategy quotingStrategy, DatabaseChangeLog databaseChangeLog)
-
-
Method Detail
-
shouldAlwaysRun
public boolean shouldAlwaysRun()
-
shouldRunOnChange
public boolean shouldRunOnChange()
-
setDbms
protected void setDbms(String dbmsList)
-
getFilePath
public String getFilePath()
- Returns:
- either this object's logicalFilePath or the changelog's filepath (logical or physical) if not.
-
getLogicalFilePath
public String getLogicalFilePath()
Returns the logical file path defined directly on this node. Returnsnull
if not set.- Returns:
- the logical file path defined on this node, or
null
if not set
-
setLogicalFilePath
public void setLogicalFilePath(String logicalFilePath)
-
getStoredFilePath
public String getStoredFilePath()
-
setStoredFilePath
public void setStoredFilePath(String storedFilePath)
-
getRunWith
public String getRunWith()
- Returns:
- the runWith value. If the runWith value is empty or not set this method will return null.
-
setRunWith
public void setRunWith(String runWith)
-
getRunWithSpoolFile
public String getRunWithSpoolFile()
-
setRunWithSpoolFile
public void setRunWithSpoolFile(String runWithSpoolFile)
-
clearCheckSum
public void clearCheckSum()
-
generateCheckSum
public CheckSum generateCheckSum(ChecksumVersion version)
-
load
public void load(ParsedNode node, ResourceAccessor resourceAccessor) throws ParsedNodeException
- Specified by:
load
in interfaceLiquibaseSerializable
- Throws:
ParsedNodeException
-
handleChildNode
protected void handleChildNode(ParsedNode child, ResourceAccessor resourceAccessor) throws ParsedNodeException
- Throws:
ParsedNodeException
-
handleRollbackNode
protected void handleRollbackNode(ParsedNode rollbackNode, ResourceAccessor resourceAccessor) throws ParsedNodeException
- Throws:
ParsedNodeException
-
toChange
protected Change toChange(ParsedNode value, ResourceAccessor resourceAccessor) throws ParsedNodeException
- Throws:
ParsedNodeException
-
serialize
public ParsedNode serialize()
- Specified by:
serialize
in interfaceLiquibaseSerializable
-
execute
public ChangeSet.ExecType execute(DatabaseChangeLog databaseChangeLog, Database database) throws MigrationFailedException
- Throws:
MigrationFailedException
-
execute
public ChangeSet.ExecType execute(DatabaseChangeLog databaseChangeLog, ChangeExecListener listener, Database database) throws MigrationFailedException
This method will actually execute each of the changes in the list against the specified database.- Returns:
- should changeset be marked as ran
- Throws:
MigrationFailedException
-
lookupExecutor
public static String lookupExecutor(String executorName)
Look for a configuration property that matches liquibase..executor and if found, return its value as the executor name - Parameters:
executorName
- The value from the input changeset runWith attribute- Returns:
- String The mapped value
-
rollback
public void rollback(Database database) throws RollbackFailedException
- Throws:
RollbackFailedException
-
rollback
public void rollback(Database database, ChangeExecListener listener) throws RollbackFailedException
- Throws:
RollbackFailedException
-
hasCustomRollbackChanges
public boolean hasCustomRollbackChanges()
Returns whether custom rollback steps are specified for this changeSet, or whether auto-generated ones should be used
-
getChanges
public List<Change> getChanges()
Returns an unmodifiable list of changes. To add one, use the addRefactoring method.
-
removeAllChanges
public void removeAllChanges(Collection<?> collection)
Method created to remove changes from a changeset- Parameters:
collection
-
-
addChange
public void addChange(Change change)
-
getId
public String getId()
-
getAuthor
public String getAuthor()
-
getContexts
public ContextExpression getContexts()
Deprecated.
-
setContexts
public ChangeSet setContexts(ContextExpression contexts)
Deprecated.
-
getContextFilter
public ContextExpression getContextFilter()
-
setContextFilter
public ChangeSet setContextFilter(ContextExpression contextFilter)
-
getLabels
public Labels getLabels()
-
setLabels
public void setLabels(Labels labels)
-
isIgnore
public boolean isIgnore()
-
setIgnore
public void setIgnore(boolean ignore)
-
isInheritableIgnore
public boolean isInheritableIgnore()
-
getInheritableContextFilter
public Collection<ContextExpression> getInheritableContextFilter()
-
getInheritableLabels
public Collection<Labels> getInheritableLabels()
-
buildFullContext
public String buildFullContext()
Build and return a string which contains both the changeset and inherited context- Returns:
- String
-
buildFullLabels
public String buildFullLabels()
Build and return a string which contains both the changeset and inherited labels- Returns:
- String
-
getChangeLog
public DatabaseChangeLog getChangeLog()
-
toString
public String toString(boolean includeMD5Sum)
-
toNormalizedString
public String toNormalizedString()
-
getComments
public String getComments()
-
setComments
public void setComments(String comments)
-
isAlwaysRun
public boolean isAlwaysRun()
-
isRunOnChange
public boolean isRunOnChange()
-
isRunInTransaction
public boolean isRunInTransaction()
-
getRollback
public RollbackContainer getRollback()
-
addRollBackSQL
public void addRollBackSQL(String sql)
-
addRollbackChange
public void addRollbackChange(Change change)
-
supportsRollback
public boolean supportsRollback(Database database)
-
getDescription
public String getDescription()
-
getFailOnError
public Boolean getFailOnError()
-
setFailOnError
public void setFailOnError(Boolean failOnError)
-
getOnValidationFail
public ChangeSet.ValidationFailOption getOnValidationFail()
-
setOnValidationFail
public void setOnValidationFail(ChangeSet.ValidationFailOption onValidationFail)
-
setValidationFailed
public void setValidationFailed(boolean validationFailed)
-
addValidCheckSum
public void addValidCheckSum(String text)
-
isCheckSumValid
public boolean isCheckSumValid(CheckSum storedCheckSum)
-
getPreconditions
public PreconditionContainer getPreconditions()
- Specified by:
getPreconditions
in interfaceConditional
-
setPreconditions
public void setPreconditions(PreconditionContainer preconditionContainer)
- Specified by:
setPreconditions
in interfaceConditional
-
addSqlVisitor
public void addSqlVisitor(SqlVisitor sqlVisitor)
-
getSqlVisitors
public List<SqlVisitor> getSqlVisitors()
-
getChangeLogParameters
public ChangeLogParameters getChangeLogParameters()
-
setChangeLogParameters
public void setChangeLogParameters(ChangeLogParameters changeLogParameters)
Called by the changelog parsing process to pass theChangeLogParameters
.
-
setFilePath
public void setFilePath(String filePath)
Called to update file path from database entry when rolling back and ignoreClasspathPrefix is true.
-
getObjectQuotingStrategy
public ObjectQuotingStrategy getObjectQuotingStrategy()
-
getCreated
public String getCreated()
-
setCreated
public void setCreated(String created)
-
getRunOrder
public String getRunOrder()
-
setRunOrder
public void setRunOrder(String runOrder)
-
getSerializedObjectName
public String getSerializedObjectName()
- Specified by:
getSerializedObjectName
in interfaceLiquibaseSerializable
-
getSerializableFields
public Set<String> getSerializableFields()
- Specified by:
getSerializableFields
in interfaceLiquibaseSerializable
-
getSerializableFieldValue
public Object getSerializableFieldValue(String field)
- Specified by:
getSerializableFieldValue
in interfaceLiquibaseSerializable
-
getSerializableFieldType
public LiquibaseSerializable.SerializationType getSerializableFieldType(String field)
- Specified by:
getSerializableFieldType
in interfaceLiquibaseSerializable
-
getSerializedObjectNamespace
public String getSerializedObjectNamespace()
- Specified by:
getSerializedObjectNamespace
in interfaceLiquibaseSerializable
-
getSerializableFieldNamespace
public String getSerializableFieldNamespace(String field)
- Specified by:
getSerializableFieldNamespace
in interfaceLiquibaseSerializable
-
getStoredCheckSum
public CheckSum getStoredCheckSum()
Gets storedCheckSum- Returns:
- storedCheckSum if it was executed otherwise null
-
setStoredCheckSum
public void setStoredCheckSum(CheckSum storedCheckSum)
Sets the stored checksum in the ValidatingVisitor in case the changeset was executed.- Parameters:
storedCheckSum
- the checksum to set
-
getDeploymentId
public String getDeploymentId()
- Returns:
- Deployment ID stored in the databasechangelog table.
-
setDeploymentId
public void setDeploymentId(String deploymentId)
- Parameters:
deploymentId
- Deployment ID stored in the databasechangelog table.
-
addChangeSetMdcProperties
public void addChangeSetMdcProperties()
-
-