@PublicApi public interface

BuildUtilsInfo

com.atlassian.jira.util.BuildUtilsInfo
Known Indirect Subclasses

@PublicApi

This interface is designed for plugins to consume (call its methods).

Clients of @PublicApi can expect that programs compiled against a given version will remain binary compatible with later versions of the @PublicApi as per each product's API policy as long as the client does not implement/extend @PublicApi interfaces or classes (refer to each product's API policy for the exact guarantee---usually binary compatibility is guaranteed at least across minor versions).

Note: since @PublicApi interfaces and classes are not designed to be implemented or extended by clients, we may perform certain types of binary-incompatible changes to these classes and interfaces, but these will not affect well-behaved clients that do not extend/implement these types (in general, only classes and interfaces annotated with @PublicSpi are safe to extend/implement).

Class Overview

Provides version information about the currently running build of JIRA.

Summary

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()
This method is deprecated. Use getCommitId() instead. Since v5.1.
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.

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 ()

Returns
  • the osgi version that Guava (com.google.common) shold be exported as

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 ()

This method is deprecated.
Use getCommitId() instead. Since v5.1.

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)