public abstract class

AbstractUpgradeManager

extends Object
implements UpgradeManager InitializingBean
java.lang.Object
   ↳ com.atlassian.confluence.upgrade.AbstractUpgradeManager
Known Direct Subclasses

Summary

[Expand]
Inherited Constants
From interface com.atlassian.confluence.upgrade.UpgradeManager
Public Constructors
AbstractUpgradeManager()
Public Methods
void afterPropertiesSet()
boolean configuredBuildNumberNewerThan(String buildNumber)
Returns true if the passed build number is less than the configured build number - that is, the version of the currently running Confluence is newer than the version passed.
void entireUpgradeFinished()
Called when all immediate and deferred upgrade actions have been performed *if* an upgrade was needed.
List<UpgradeError> getErrors()
List<DeferredUpgradeTask> getPluginDependentUpgradeTasks()
List<UpgradeTask> getPreSchemaUpgradeTasks()
List<UpgradeTask> getSchemaUpgradeTasks()
List<UpgradeTask> getUpgradeTasks()
boolean isUpgraded()
boolean needUpgrade()
void setApplicationConfig(ApplicationConfiguration applicationConfig)
void setPluginDependentUpgradeTasks(List<DeferredUpgradeTask> upgradeTasks)
void setPreSchemaUpgradeTasks(List<UpgradeTask> preSchemaUpgradeTasks)
void setSchemaHelper(SchemaHelper schemaHelper)
void setSchemaUpgradeTasks(List<UpgradeTask> upgradeTasks)
void setUpgradeTasks(List<UpgradeTask> upgradeTasks)
boolean taskNewerThan(String buildNumber, UpgradeTask upgradeTask)
Returns true if the build number for the task is greater than the passed build number.
void upgrade(JohnsonEventContainer agentJohnson)
Protected Methods
List<UpgradeTask> getAllUpgradeTasks()
String getConfiguredBuildNumber()
abstract String getDatabaseBuildNumber()
abstract String getRealBuildNumber()
void initialUpgradeFinished()
Once all upgrade tasks have been completed without error, make sure the build number stored in the applications main configuration file and database now matches the build number of this version of the release.
boolean permitDatabaseUpgrades()
This is used to guard against database upgrades being performed multiple times on the same database.
void postUpgrade()
abstract List<UpgradeError> runUpgradePrerequisites()
Runs all upgrade prerequisites.
void setConfiguredBuildNumber(String buildNumber)
abstract void setDatabaseBuildNumber(String databaseBuildNumber)
Once the upgrade is complete, we'll need to set the new database build number in the database.
void upgradeStarted()
void upgradeTaskSucceeded(UpgradeTask upgradeTask)
[Expand]
Inherited Methods
From class java.lang.Object
From interface com.atlassian.confluence.upgrade.UpgradeManager
From interface org.springframework.beans.factory.InitializingBean

Public Constructors

public AbstractUpgradeManager ()

Public Methods

public void afterPropertiesSet ()

public boolean configuredBuildNumberNewerThan (String buildNumber)

Returns true if the passed build number is less than the configured build number - that is, the version of the currently running Confluence is newer than the version passed.

public void entireUpgradeFinished ()

Called when all immediate and deferred upgrade actions have been performed *if* an upgrade was needed.

public List<UpgradeError> getErrors ()

public List<DeferredUpgradeTask> getPluginDependentUpgradeTasks ()

public List<UpgradeTask> getPreSchemaUpgradeTasks ()

public List<UpgradeTask> getSchemaUpgradeTasks ()

public List<UpgradeTask> getUpgradeTasks ()

public boolean isUpgraded ()

public boolean needUpgrade ()

public void setApplicationConfig (ApplicationConfiguration applicationConfig)

public void setPluginDependentUpgradeTasks (List<DeferredUpgradeTask> upgradeTasks)

public void setPreSchemaUpgradeTasks (List<UpgradeTask> preSchemaUpgradeTasks)

public void setSchemaHelper (SchemaHelper schemaHelper)

public void setSchemaUpgradeTasks (List<UpgradeTask> upgradeTasks)

public void setUpgradeTasks (List<UpgradeTask> upgradeTasks)

public boolean taskNewerThan (String buildNumber, UpgradeTask upgradeTask)

Returns true if the build number for the task is greater than the passed build number. Usually indicates that the task should run as part of an upgrade.

public void upgrade (JohnsonEventContainer agentJohnson)

Protected Methods

protected List<UpgradeTask> getAllUpgradeTasks ()

Returns
  • the complete list of upgrade tasks to be run for this upgrade, in the correct order.

protected String getConfiguredBuildNumber ()

Returns
  • The build number of the current version that the user is running under. This version is stored in their confluence home confluence.cfg.xml file

protected abstract String getDatabaseBuildNumber ()

Returns
  • The build number of the data in the database. If the version of the database data can not be determined, this method should return the same value as getConfiguredBuildNumber().

protected abstract String getRealBuildNumber ()

Returns
  • The build number of the new version of Confluence being upgraded to. This number can be found in the default.properties of the new expanded WAR

protected void initialUpgradeFinished ()

Once all upgrade tasks have been completed without error, make sure the build number stored in the applications main configuration file and database now matches the build number of this version of the release. Note that this method is called "initialUpgradeFinished" because any deferred pluginDependentUpgradeTasks may still have to run, so the upgrade process is not yet complete.

Throws
Exception when setting the database or configuration build number fails

protected boolean permitDatabaseUpgrades ()

This is used to guard against database upgrades being performed multiple times on the same database. By default, assume a non-clustered setup and allow database upgrades.

Returns
  • True by default. Is overridden for cluster upgrades.
Throws
UpgradeException If the implementation of this method encounters any errors.

protected void postUpgrade ()

protected abstract List<UpgradeError> runUpgradePrerequisites ()

Runs all upgrade prerequisites.

Returns
  • an empty list if all upgrade prerequisites pass, otherwise, returns a list consisting of one or more failure messages.

protected void setConfiguredBuildNumber (String buildNumber)

Throws
ConfigurationException

protected abstract void setDatabaseBuildNumber (String databaseBuildNumber)

Once the upgrade is complete, we'll need to set the new database build number in the database.

Parameters
databaseBuildNumber The new database build number
Throws
Exception when there is any problem setting the database build number

protected void upgradeStarted ()

protected void upgradeTaskSucceeded (UpgradeTask upgradeTask)

Throws
Exception