public class

BuildUtilsInfoImpl

extends Object
implements BuildUtilsInfo
java.lang.Object
   ↳ com.atlassian.jira.util.BuildUtilsInfoImpl

Class Overview

This class gives access to build-time properties at runtime. Its sources are the legacy BuildUtils class and the BuildUtilsInfo.properties file.

Summary

Public Constructors
BuildUtilsInfoImpl()
Creates a new BuildUtilsInfoImpl, loading the properties from the '{@value #BUILD_PROPERTIES_FILENAME}' file.
Public Methods
int getApplicationBuildNumber()
Gets the build number of this JIRA install.
String getApplinksVersion()
Returns the version of AppLinks that JIRA ships with.
String getBuildInformation()
Gets a build information summary as a String.
String getBuildPartnerName()
Gets the partner name of this JIRA build
String getBuildProperty(String key)
String getCommitId()
Returns the id of the SCM commit that was used to make this build of JIRA.
Date getCurrentBuildDate()
Gets the date this version of JIRA was built on.
String getCurrentBuildNumber()
Gets the current build number of JIRA.
int getDatabaseBuildNumber()
Gets the build number of the database that this JIRA instance points to.
String getDocVersion()
Return the version used for JIRA documentation.
String getGuavaOsgiVersion()
String getLuceneVersion()
Returns the version of Apache Lucene included in JIRA.
String getMinimumUpgradableBuildNumber()
Gets the minimal build number that JIRA can upgrade from
String getMinimumUpgradableVersion()
Get the minimum version of JIRA that can be upgraded to this instance version.
String getSalVersion()
Returns the version of Atlassian SAL that JIRA exports into OSGI-land.
@Deprecated String getSvnRevision()
Returns the SCM commit id that was used to make this build of JIRA.
Collection<Locale> getUnavailableLocales()
String getVersion()
Gets the current version of JIRA
int[] getVersionNumbers()
Gets the numerical components of the version.
boolean isBeta()
Returns whether the current version is a beta (i.e.
boolean isMilestone()
Returns whether the current version is a milestone (i.e.
boolean isRc()
Returns whether the current version is a release candidate (i.e.
boolean isSnapshot()
Returns whether the current version is a snapshot (i.e.
String toString()
[Expand]
Inherited Methods
From class java.lang.Object
From interface com.atlassian.jira.util.BuildUtilsInfo

Public Constructors

public BuildUtilsInfoImpl ()

Creates a new BuildUtilsInfoImpl, loading the properties from the '{@value #BUILD_PROPERTIES_FILENAME}' file. file.

Public Methods

public int getApplicationBuildNumber ()

Gets the build number of this JIRA install.

That is, the build number of the currently running installation files. The DB also stores a build number.

Returns
  • the build number of this JIRA install.

public String getApplinksVersion ()

Returns the version of AppLinks that JIRA ships with.

Returns
  • the version of AppLinks that JIRA ships with

public String getBuildInformation ()

Gets a build information summary as a String.

Returns
  • a build information summary

public String getBuildPartnerName ()

Gets the partner name of this JIRA build

Returns
  • the partner name of this JIRA build.

public String getBuildProperty (String key)

public String getCommitId ()

Returns the id of the SCM commit that was used to make this build of JIRA. This method returns an empty string if JIRA was built from the source distribution.

Returns
  • the SCM commit id that was used to make this build of JIRA.

public Date getCurrentBuildDate ()

Gets the date this version of JIRA was built on.

Returns
  • the date this version of JIRA was built on

public String getCurrentBuildNumber ()

Gets the current build number of JIRA.

This is the same value as getApplicationBuildNumber() except it is returned as a String.

Returns
  • the current build number of JIRA

public int getDatabaseBuildNumber ()

Gets the build number of the database that this JIRA instance points to.

Under normal circumstances this will be the same as the build number of the JIRA installation. However, when you first upgrade a JIRA database or import data exported from an older JIRA, the existing database will start on the previous build number. JIRA will then run "Upgrade Tasks" to update the data in the DB.

Returns
  • the build number of the database that JIRA points to.

public String getDocVersion ()

Return the version used for JIRA documentation.

This is the version that JIRA uses when generating links to its externally hosted documentation.

Returns
  • the version used for JIRA documentation.

public String getGuavaOsgiVersion ()

public String getLuceneVersion ()

Returns the version of Apache Lucene included in JIRA.

This will be the version used to export the lucene packages to the OSGI container.

Returns
  • the version of Apache Lucene included in JIRA.

public String getMinimumUpgradableBuildNumber ()

Gets the minimal build number that JIRA can upgrade from

Returns
  • the minimal build number that JIRA can upgrade from

public String getMinimumUpgradableVersion ()

Get the minimum version of JIRA that can be upgraded to this instance version.

Returns
  • the minimum version that can be upgraded.

public String getSalVersion ()

Returns the version of Atlassian SAL that JIRA exports into OSGI-land.

Returns
  • the version of Atlassian SAL that JIRA exports

@Deprecated public String getSvnRevision ()

Returns the SCM commit id that was used to make this build of JIRA. This used to be an SVN revision, but is now a Git commit id (aka a SHA1). This method returns an empty string if JIRA was built from the source distribution.

Returns
  • a String containing the SCM commit id, or an empty String.

public Collection<Locale> getUnavailableLocales ()

public String getVersion ()

Gets the current version of JIRA

Returns
  • the current version of JIRA

public int[] getVersionNumbers ()

Gets the numerical components of the version.

    • "5.0" gives [5, 0, 0]
      "5.0.1" gives [5, 0, 1]
      "5.0-beta1" gives [5, 0, 0]
      "5.0.1-SNAPSHOT" gives [5, 0, 1]
  • The returned array is guaranteed to have at least 3 elements. Any non-numeric suffix in getVersion() is ignored.

    A simple way to use this information is with Guava's lexicographicalComparator():

      int[] v510 = {5, 1, 0};
      if (Ints.lexicographicalComparator().compare(buildUtils.getVersionNumbers(), v510) >= 0 ) { ...
     

    Returns
    • the leading numerical components of getVersion()

    public boolean isBeta ()

    Returns whether the current version is a beta (i.e. has -beta after its version numbers)

    Returns
    • true if the version string has -beta after its version numbers, otherwise false (case-insensitive)

    public boolean isMilestone ()

    Returns whether the current version is a milestone (i.e. has -mXX after its version numbers)

    Returns
    • true if the version string has -m after its version numbers, otherwise false (case-insensitive)

    public boolean isRc ()

    Returns whether the current version is a release candidate (i.e. has -rc after its version numbers)

    Returns
    • true if the version string has -rc after its version numbers, otherwise false (case-insensitive)

    public boolean isSnapshot ()

    Returns whether the current version is a snapshot (i.e. has -SNAPSHOT after its version numbers)

    Returns
    • true if the version string has -SNAPSHOT after its version numbers, otherwise false (case-insensitive)

    public String toString ()