Class DefaultUpgradeFinalizationManager
- java.lang.Object
- 
- com.atlassian.confluence.upgrade.impl.DefaultUpgradeFinalizationManager
 
- 
- All Implemented Interfaces:
- UpgradeFinalizationManager
 
 public class DefaultUpgradeFinalizationManager extends Object implements UpgradeFinalizationManager - Since:
- 7.14
 
- 
- 
Nested Class SummaryNested Classes Modifier and Type Class Description static classDefaultUpgradeFinalizationManager.RunImpl- 
Nested classes/interfaces inherited from interface com.atlassian.confluence.upgrade.UpgradeFinalizationManagerUpgradeFinalizationManager.Run
 
- 
 - 
Field SummaryFields Modifier and Type Field Description static StringFINALIZED_BUILD_NUMBER_CONFIG_KEY
 - 
Constructor SummaryConstructors Constructor Description DefaultUpgradeFinalizationManager(ZduStatusDao zduStatusDao, com.atlassian.beehive.ClusterLockService clusterLockService, VersionHistoryDao versionHistoryDao, com.atlassian.config.ApplicationConfiguration applicationConfig, com.atlassian.event.api.EventPublisher eventPublisher, SharedDataManager sharedDataManager, Supplier<List<UpgradeTask>> finalizeUpgradeTasksSupplier, int productBuildNumber)DefaultUpgradeFinalizationManager(ZduStatusDao zduStatusDao, com.atlassian.beehive.ClusterLockService clusterLockService, VersionHistoryDao versionHistoryDao, com.atlassian.config.ApplicationConfiguration applicationConfig, com.atlassian.event.api.EventPublisher eventPublisher, SharedDataManager sharedDataManager, List<String> finalizeUpgradeTasks)
 - 
Method SummaryAll Methods Instance Methods Concrete Methods Modifier and Type Method Description voiddestroy()protected voidfinalizeConfigureBuildNumber(int buildNumber)voidfinalizeIfNeeded()Perform pending finalizeUpgradeTasks on the current node (no-op if none pending) if it is required, i.e.protected intgetFinalizedConfiguredBuildNumber()Optional<UpgradeFinalizationManager.Run>getLastRun()Obtains the the most recent finalization run.voidinit()booleanisPendingDatabaseFinalization()booleanisPendingLocalFinalization()voidmarkAsFullyFinalized(boolean updateBuildNumber)Once installation is complete, we'll need to set the finalized build number in the database and home directory with the product build number.voidonRemotelyRequested(ClusterEventWrapper e)voidonRequested(ZduFinalizationRequestEvent e)
 
- 
- 
- 
Field Detail- 
FINALIZED_BUILD_NUMBER_CONFIG_KEYpublic static final String FINALIZED_BUILD_NUMBER_CONFIG_KEY - See Also:
- Constant Field Values
 
 
- 
 - 
Constructor Detail- 
DefaultUpgradeFinalizationManagerpublic DefaultUpgradeFinalizationManager(ZduStatusDao zduStatusDao, com.atlassian.beehive.ClusterLockService clusterLockService, VersionHistoryDao versionHistoryDao, com.atlassian.config.ApplicationConfiguration applicationConfig, com.atlassian.event.api.EventPublisher eventPublisher, SharedDataManager sharedDataManager, List<String> finalizeUpgradeTasks) 
 - 
DefaultUpgradeFinalizationManagerpublic DefaultUpgradeFinalizationManager(ZduStatusDao zduStatusDao, com.atlassian.beehive.ClusterLockService clusterLockService, VersionHistoryDao versionHistoryDao, com.atlassian.config.ApplicationConfiguration applicationConfig, com.atlassian.event.api.EventPublisher eventPublisher, SharedDataManager sharedDataManager, Supplier<List<UpgradeTask>> finalizeUpgradeTasksSupplier, int productBuildNumber) 
 
- 
 - 
Method Detail- 
isPendingDatabaseFinalizationpublic boolean isPendingDatabaseFinalization() - Specified by:
- isPendingDatabaseFinalizationin interface- UpgradeFinalizationManager
- Returns:
- true if the database has not been finalized.
 
 - 
isPendingLocalFinalizationpublic boolean isPendingLocalFinalization() - Specified by:
- isPendingLocalFinalizationin interface- UpgradeFinalizationManager
- Returns:
- true if the local node has not been finalization tasks on this node.
 
 - 
finalizeIfNeededpublic void finalizeIfNeeded() throws UpgradeExceptionDescription copied from interface:UpgradeFinalizationManagerPerform pending finalizeUpgradeTasks on the current node (no-op if none pending) if it is required, i.e. when ZDU is disabled. If executed concurrently in multiple nodes in a cluster, only one node will exclusively perform databaseUpgrade tasks.- Specified by:
- finalizeIfNeededin interface- UpgradeFinalizationManager
- Throws:
- UpgradeException
 
 - 
getLastRunpublic Optional<UpgradeFinalizationManager.Run> getLastRun() Description copied from interface:UpgradeFinalizationManagerObtains the the most recent finalization run. Each finalization run will invalidate the previous result.- Specified by:
- getLastRunin interface- UpgradeFinalizationManager
- Returns:
- finalization result or empty
 
 - 
markAsFullyFinalizedpublic void markAsFullyFinalized(boolean updateBuildNumber) throws com.atlassian.config.ConfigurationExceptionDescription copied from interface:UpgradeFinalizationManagerOnce installation is complete, we'll need to set the finalized build number in the database and home directory with the product build number.- Specified by:
- markAsFullyFinalizedin interface- UpgradeFinalizationManager
- Parameters:
- updateBuildNumber- whether the database and home directory build numbers should be updated
- Throws:
- com.atlassian.config.ConfigurationException
 
 - 
getFinalizedConfiguredBuildNumberprotected int getFinalizedConfiguredBuildNumber() 
 - 
finalizeConfigureBuildNumberprotected void finalizeConfigureBuildNumber(int buildNumber) throws com.atlassian.config.ConfigurationException- Throws:
- com.atlassian.config.ConfigurationException
 
 - 
init@PostConstruct public void init() 
 - 
destroy@PreDestroy public void destroy() 
 - 
onRequested@EventListener public void onRequested(ZduFinalizationRequestEvent e) throws UpgradeException - Throws:
- UpgradeException
 
 - 
onRemotelyRequested@EventListener public void onRemotelyRequested(ClusterEventWrapper e) throws UpgradeException - Throws:
- UpgradeException
 
 
- 
 
-