Class HibernateVersionHistoryDao
java.lang.Object
org.springframework.dao.support.DaoSupport
com.atlassian.confluence.core.persistence.hibernate.HibernateObjectDao<VersionHistory>
com.atlassian.confluence.core.persistence.hibernate.HibernateVersionHistoryDao
- All Implemented Interfaces:
VersionHistoryDao,VersionHistoryDaoInternal,org.springframework.beans.factory.InitializingBean
public class HibernateVersionHistoryDao
extends HibernateObjectDao<VersionHistory>
implements VersionHistoryDaoInternal
-
Nested Class Summary
Nested classes/interfaces inherited from class com.atlassian.confluence.core.persistence.hibernate.HibernateObjectDao
HibernateObjectDao.Cacheability -
Field Summary
Fields inherited from class org.springframework.dao.support.DaoSupport
loggerFields inherited from interface com.atlassian.confluence.core.persistence.VersionHistoryDao
UNKNOWN_BUILD_NUMBER -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidaddBuildToHistory(int buildNumber) The version history consists of a list of builds that Confluence has been successfully upgraded tovoidfinalizeBuild(int buildNumber) Record the provided build number as finalized.intObtains the latest build number to have been finalized usingVersionHistoryDao.finalizeBuild(int).intGet the highest build number from the database.getVersionHistory(int buildNumber) booleanWe need to ensure that the checking and writing of the tag is atomic so as to prevent two or more nodes from writing the tag and reporting that it was set correctlyMethods inherited from class com.atlassian.confluence.core.persistence.hibernate.HibernateObjectDao
applyTransactionTimeout, applyTransactionTimeout, checkDaoConfig, createHibernateTemplate, findAll, findAllSorted, findAllSorted, findNamedQuery, findNamedQuery, findNamedQuery, findNamedQueryStringParam, findNamedQueryStringParam, findNamedQueryStringParam, findNamedQueryStringParams, findNamedQueryStringParams, findNamedQueryStringParams, findNamedQueryStringParams, findNamedQueryStringParams, findNamedQueryStringParams, findNamedQueryStringParams, findNamedQueryStringParams, findNamedQueryStringParams, findNamedQueryStringParams, findNamedQueryStringParams, findSingleObject, getByClassId, getCountResult, getHibernateTemplate, getSessionFactory, publishEvent, reIndex, remove, save, saveEntity, saveRaw, setHibernateTemplate, setSessionFactory, uniqueResult, updateModificationDataMethods inherited from class org.springframework.dao.support.DaoSupport
afterPropertiesSet, initDaoMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface com.atlassian.confluence.internal.persistence.VersionHistoryDaoInternal
getUpgradeHistory, save
-
Constructor Details
-
HibernateVersionHistoryDao
public HibernateVersionHistoryDao()
-
-
Method Details
-
getPersistentClass
- Specified by:
getPersistentClassin classHibernateObjectDao<VersionHistory>
-
getLatestBuildNumber
public int getLatestBuildNumber()Description copied from interface:VersionHistoryDaoGet the highest build number from the database. This should represent what version the database thinks Confluence is running at, which in turn is used to schedule database-hitting upgrade tasks.If the number can not be determined (there are no versions in the database, or the version history table hasn't even been created yet) then the method will return UNKNOWN_BUILD_NUMBER. In this case, callers should assume that the database build number is identical to the configured build number.
- Specified by:
getLatestBuildNumberin interfaceVersionHistoryDao- Returns:
- the highest build number in version history table, or UNKNOWN_BUILD_NUMBER if that can not be determined.
-
getVersionHistory
- Specified by:
getVersionHistoryin interfaceVersionHistoryDao- Returns:
- the version history object associated with the build number (if there is more than one, return the latest)
-
tagBuild
We need to ensure that the checking and writing of the tag is atomic so as to prevent two or more nodes from writing the tag and reporting that it was set correctly- Specified by:
tagBuildin interfaceVersionHistoryDao- Returns:
- true if the build number was successfully tagged, false if the tag specified has already been associated with this build number
-
getFinalizedBuildNumber
public int getFinalizedBuildNumber()Description copied from interface:VersionHistoryDaoObtains the latest build number to have been finalized usingVersionHistoryDao.finalizeBuild(int).- Specified by:
getFinalizedBuildNumberin interfaceVersionHistoryDao- Returns:
- latest build number that has been finalized
-
finalizeBuild
public void finalizeBuild(int buildNumber) Description copied from interface:VersionHistoryDaoRecord the provided build number as finalized. This occurs when a cluster exists ZDU mode at the end of an upgrade, or is upgraded without ZDU mode.- Specified by:
finalizeBuildin interfaceVersionHistoryDao
-
getFullUpgradeHistory
- Specified by:
getFullUpgradeHistoryin interfaceVersionHistoryDaoInternal
-
addBuildToHistory
public void addBuildToHistory(int buildNumber) Description copied from interface:VersionHistoryDaoThe version history consists of a list of builds that Confluence has been successfully upgraded to- Specified by:
addBuildToHistoryin interfaceVersionHistoryDao
-