Class EmbeddedCrowdSchemaUpgradeTask
- java.lang.Object
-
- com.atlassian.confluence.upgrade.AbstractUpgradeTask
-
- com.atlassian.confluence.upgrade.upgradetask.AbstractConstraintCreationUpgradeTask
-
- com.atlassian.confluence.upgrade.upgradetask.EmbeddedCrowdSchemaUpgradeTask
-
- All Implemented Interfaces:
BackupSupport
,DatabaseUpgradeTask
,UpgradeTask
,UpgradeTaskInfo
,org.springframework.beans.factory.Aware
,org.springframework.beans.factory.BeanNameAware
public class EmbeddedCrowdSchemaUpgradeTask extends AbstractConstraintCreationUpgradeTask
Adds required multi-column unique constraints to the Crowd database tablesThis upgrade task is only retained due to its usage in DefaultHibernateConfigurator.
-
-
Field Summary
-
Fields inherited from class com.atlassian.confluence.upgrade.upgradetask.AbstractConstraintCreationUpgradeTask
log, sessionFactory
-
-
Constructor Summary
Constructors Constructor Description EmbeddedCrowdSchemaUpgradeTask(org.hibernate.SessionFactory sessionFactory)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
breaksBackwardCompatibility()
Returns true if a new export can't be imported in an older instance.protected void
doBeforeUpgrade(org.hibernate.Session session, org.springframework.jdbc.core.JdbcTemplate template)
String
getBuildNumber()
Collection<UpgradeError>
getErrors()
Return any errors that occur.String
getShortDescription()
A short (<50 chars) description of the upgrade actionprotected List<String>
getSqlStatementsFromPropertiesFile()
static List<String>
getUniqueConstraintSqlStatements()
boolean
runOnSpaceImport()
Returns true if an older Space can't be imported in a new instance without running this task.-
Methods inherited from class com.atlassian.confluence.upgrade.upgradetask.AbstractConstraintCreationUpgradeTask
doUpgrade, getSqlStatementsFromPropertiesFile, uniqueAllowsMultipleNullValues
-
Methods inherited from class com.atlassian.confluence.upgrade.AbstractUpgradeTask
addAllErrors, addError, addError, getConstraint, getName, isDatabaseUpgrade, setBeanName, setBuildNumber, validate
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface com.atlassian.confluence.upgrade.UpgradeTask
getConstraint, validate
-
Methods inherited from interface com.atlassian.confluence.upgrade.UpgradeTaskInfo
getName, isDatabaseUpgrade
-
-
-
-
Method Detail
-
getBuildNumber
public String getBuildNumber()
- Specified by:
getBuildNumber
in interfaceUpgradeTaskInfo
- Overrides:
getBuildNumber
in classAbstractUpgradeTask
- Returns:
- The build number that this upgrade is applicable to
-
getShortDescription
public String getShortDescription()
Description copied from interface:UpgradeTaskInfo
A short (<50 chars) description of the upgrade action- Specified by:
getShortDescription
in interfaceUpgradeTaskInfo
- Overrides:
getShortDescription
in classAbstractUpgradeTask
-
getSqlStatementsFromPropertiesFile
protected List<String> getSqlStatementsFromPropertiesFile()
- Specified by:
getSqlStatementsFromPropertiesFile
in classAbstractConstraintCreationUpgradeTask
-
getErrors
public Collection<UpgradeError> getErrors()
Description copied from interface:UpgradeTask
Return any errors that occur. Each entry is anUpgradeError
.- Specified by:
getErrors
in interfaceUpgradeTask
- Overrides:
getErrors
in classAbstractUpgradeTask
- Returns:
- a collection of
UpgradeError
objects, sometimes null.
-
doBeforeUpgrade
protected void doBeforeUpgrade(org.hibernate.Session session, org.springframework.jdbc.core.JdbcTemplate template)
- Specified by:
doBeforeUpgrade
in classAbstractConstraintCreationUpgradeTask
-
runOnSpaceImport
public boolean runOnSpaceImport()
Description copied from interface:BackupSupport
Returns true if an older Space can't be imported in a new instance without running this task. For example:- A task updating macro names in the BodyContent table would be blocking.
- Tasks which updates data related to the space would be blocking.
- A task upgrading the user table wouldn't be blocking.
- Adding a mandatory column on space-related content breaks space import
Note that tasks don't run on space import yet, so we just reject the import in this case.
-
breaksBackwardCompatibility
public boolean breaksBackwardCompatibility()
Description copied from interface:BackupSupport
Returns true if a new export can't be imported in an older instance.Breaking compatibility means a snapshot of the new version will not work at all with the previous version. For example:
- A destructive operation (Some data is replaced by another) breaks backwards compatibility
- Adding a optional column does NOT break backwards compatibility
- Data is copied to another column doesn't breaks backwards compatibility
- A build number incrementation doesn't breaks backwards compatibility
-
-