Class CachingVersionHistoryDao

java.lang.Object
com.atlassian.confluence.core.persistence.hibernate.CachingVersionHistoryDao
All Implemented Interfaces:
VersionHistoryDao, VersionHistoryDaoInternal

public class CachingVersionHistoryDao extends Object implements VersionHistoryDaoInternal
A cache decorator around VersionHistoryDaoInternal
Since:
7.14
  • Constructor Details

  • Method Details

    • getLatestBuildNumber

      public int getLatestBuildNumber()
      Description copied from interface: VersionHistoryDao
      Get 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:
      getLatestBuildNumber in interface VersionHistoryDao
      Returns:
      the highest build number in version history table, or UNKNOWN_BUILD_NUMBER if that can not be determined.
    • addBuildToHistory

      public void addBuildToHistory(int buildNumber)
      Description copied from interface: VersionHistoryDao
      The version history consists of a list of builds that Confluence has been successfully upgraded to
      Specified by:
      addBuildToHistory in interface VersionHistoryDao
    • getVersionHistory

      public VersionHistory getVersionHistory(int buildNumber)
      Specified by:
      getVersionHistory in interface VersionHistoryDao
      Returns:
      the version history object associated with the build number (if there is more than one, return the latest)
    • tagBuild

      public boolean tagBuild(int buildNumber, String tag)
      Description copied from interface: VersionHistoryDao
      Associates a tag with a build number
      Specified by:
      tagBuild in interface VersionHistoryDao
      Returns:
      true if the build number was successfully tagged, false if the tag specified has already been associated with this build number
    • getFullUpgradeHistory

      public List<VersionHistory> getFullUpgradeHistory()
      Specified by:
      getFullUpgradeHistory in interface VersionHistoryDaoInternal
    • save

      public void save(VersionHistory versionHistory)
      Specified by:
      save in interface VersionHistoryDaoInternal
    • getFinalizedBuildNumber

      public int getFinalizedBuildNumber()
      Description copied from interface: VersionHistoryDao
      Obtains the latest build number to have been finalized using VersionHistoryDao.finalizeBuild(int).
      Specified by:
      getFinalizedBuildNumber in interface VersionHistoryDao
      Returns:
      latest build number that has been finalized
    • finalizeBuild

      public void finalizeBuild(int buildNumber)
      Description copied from interface: VersionHistoryDao
      Record 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:
      finalizeBuild in interface VersionHistoryDao