com.atlassian.confluence.upgrade.impl
Class DefaultUpgradeManager

java.lang.Object
  extended by com.atlassian.confluence.upgrade.AbstractUpgradeManager
      extended by com.atlassian.confluence.upgrade.impl.DefaultUpgradeManager
All Implemented Interfaces:
UpgradeManager

public class DefaultUpgradeManager
extends AbstractUpgradeManager


Field Summary
static String CLUSTER_UPGRADE_LOCK
           
 
Fields inherited from class com.atlassian.confluence.upgrade.AbstractUpgradeManager
buildNumberComp
 
Constructor Summary
DefaultUpgradeManager()
           
 
Method Summary
protected  String getDatabaseBuildNumber()
          This is the build number of the data in the database.
protected  String getRealBuildNumber()
          The is the build number of the new version of Confluence being upgraded to.
protected  boolean permitDatabaseUpgrades()
          If we are in a clustered setup, only one node should be allowed to perform upgrades that affect the database.
protected  void postUpgrade()
           
protected  List<String> runUpgradePrerequisites()
          Runs all upgrade prerequisites.
 void setCacheManager(com.atlassian.cache.CacheManager cacheManager)
           
 void setClusterManager(ClusterManager clusterManager)
           
protected  void setDatabaseBuildNumber(String databaseBuildNumber)
          Once the upgrade is complete, we'll need to set the new database build number in the database.
 void setEventManager(com.atlassian.event.EventManager eventManager)
           
 void setSidManager(ConfluenceSidManager sidManager)
           
 void setSystemInformationService(SystemInformationService systemInformationService)
           
 void setVersionHistoryDao(VersionHistoryDao versionHistoryDao)
           
 void upgrade(com.atlassian.johnson.JohnsonEventContainer johnson)
           
protected  void upgradeFinished()
          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.
 
Methods inherited from class com.atlassian.confluence.upgrade.AbstractUpgradeManager
doUpgrade, getConfiguredBuildNumber, getErrors, getSchemaUpgradeTasks, getUpgradeTasks, isUpgraded, needUpgrade, setApplicationConfig, setConfiguredBuildNumber, setPreSchemaUpgradeTasks, setSchemaHelper, setSchemaUpgradeTasks, setUpgradeTasks, upgradeSchema, upgradeStarted, upgradeTaskSucceeded
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

CLUSTER_UPGRADE_LOCK

public static final String CLUSTER_UPGRADE_LOCK
See Also:
Constant Field Values
Constructor Detail

DefaultUpgradeManager

public DefaultUpgradeManager()
Method Detail

getRealBuildNumber

protected String getRealBuildNumber()
Description copied from class: AbstractUpgradeManager
The is 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

Specified by:
getRealBuildNumber in class AbstractUpgradeManager

getDatabaseBuildNumber

protected String getDatabaseBuildNumber()
Description copied from class: AbstractUpgradeManager
This is 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 AbstractUpgradeManager.getConfiguredBuildNumber().

Specified by:
getDatabaseBuildNumber in class AbstractUpgradeManager

runUpgradePrerequisites

protected List<String> runUpgradePrerequisites()
Description copied from class: AbstractUpgradeManager
Runs all upgrade prerequisites.

Specified by:
runUpgradePrerequisites in class AbstractUpgradeManager
Returns:
an empty list if all upgrade prerequisites pass, otherwise, returns a list consisting of one or more failure messages.

upgrade

public void upgrade(com.atlassian.johnson.JohnsonEventContainer johnson)
             throws UpgradeException
Specified by:
upgrade in interface UpgradeManager
Overrides:
upgrade in class AbstractUpgradeManager
Throws:
UpgradeException

upgradeFinished

protected void upgradeFinished()
                        throws Exception
Description copied from class: AbstractUpgradeManager
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.

Overrides:
upgradeFinished in class AbstractUpgradeManager
Throws:
Exception

setDatabaseBuildNumber

protected void setDatabaseBuildNumber(String databaseBuildNumber)
                               throws Exception
Description copied from class: AbstractUpgradeManager
Once the upgrade is complete, we'll need to set the new database build number in the database.

Specified by:
setDatabaseBuildNumber in class AbstractUpgradeManager
Throws:
Exception

postUpgrade

protected void postUpgrade()
Overrides:
postUpgrade in class AbstractUpgradeManager

permitDatabaseUpgrades

protected boolean permitDatabaseUpgrades()
                                  throws UpgradeException
If we are in a clustered setup, only one node should be allowed to perform upgrades that affect the database. To enforce this, nodes will need to: If the upgrade process fails before all database upgrade tasks are complete, and the user ignores those errors and restarts the server, the existing tag on the CONFVERSION table will prevent the upgrade

Overrides:
permitDatabaseUpgrades in class AbstractUpgradeManager
Throws:
UpgradeException

setCacheManager

public void setCacheManager(com.atlassian.cache.CacheManager cacheManager)

setEventManager

public void setEventManager(com.atlassian.event.EventManager eventManager)

setVersionHistoryDao

public void setVersionHistoryDao(VersionHistoryDao versionHistoryDao)

setClusterManager

public void setClusterManager(ClusterManager clusterManager)

setSidManager

public void setSidManager(ConfluenceSidManager sidManager)

setSystemInformationService

public void setSystemInformationService(SystemInformationService systemInformationService)


Copyright © 2003-2011 Atlassian. All Rights Reserved.