Version

public class Version implements Comparable<Version>

Класс для утилит по работе с версиями.

Использует алгоритмы парсинга строки и сравнения из библиотеки SemVer.

Constructors

Version

public Version(Semver semver)

Methods

compareTo

public int compareTo(Version version)

Метод определяет приоритет при сравнении двух версий.

При сравнении версий не учитывается getBuild().

new SemVer("1.2.3+4").compareTo(new SemVer("1.2.3+5")) == 0, т.к. build не сравниваются.

Разница в поведении методов compareTo(ru.bitec.gs.automation.util.Version) и equals(java.lang.Object) обусловлена их разными целями:

compareTo: Определяет порядок версий (приоритет) для целей управления зависимостями, совместимости и выбора подходящей версии. Метка сборки не имеет значения в этом контексте.

equals: Проверяет идентичность версий, включая все их компоненты, чтобы гарантировать, что два объекта представляют одну и ту же версию.

Parameters:
  • version – the object to be compared.

Returns:

See also

compareVersions

public static int compareVersions(String version1, String version2)

Сравнивает две строки, содержащих версии, используя метод compareTo(Version).

Parameters:
  • version1 – версия 1

  • version2 – версия 2

Returns:

результат сравнения

equals

public boolean equals(Object o)

Метод выполняет проверку эквивалентности двух объектов.

При при проверке эквивалентности учитываются все части версии.

new SemVer("1.2.3+4").equals(new SemVer("1.2.3+5")) == false, т.к. сравниваются строки.
Parameters:
  • o – объект с которым сравнивается текущий

Returns:

true, если версии эквивалентны, иначе false.

getBuild

public String getBuild()

Returns the build of the version.

Example: for “1.2.3-ms4+sha98450956” = “sha98450956”

Example: for “1.2.3+sha98450956” = “sha98450956”

Returns:

the build of the version

getMajor

public Integer getMajor()

Returns the major part of the version.

Example: for “1.2.3” = 1

Returns:

the major part of the version

getMinor

public Integer getMinor()

Returns the minor part of the version.

Example: for “1.2.3” = 2

Returns:

the minor part of the version

getRelease

public Integer getRelease()

Returns the release part of the version.

Example: for “1.2.3” = 3

Returns:

the release part of the version

getSuffixTokens

public String[] getSuffixTokens()

Returns the suffix of the version.

Example: for “1.2.3-ms.4+sha98450956” = {“ms”, “4”}

Example: for “1.2.3-ms4+sha98450956” = {“ms4”}

Returns:

the suffix of the version

getValue

public String getValue()

Returns the version as a String

Returns:

the version as a String

hashCode

public int hashCode()

parse

public static Version parse(String version)

Создаёт новый экземпляр Version на основе строки.

Примеры допустимых форматов:

  • 1.2.3

  • 1.2.3+5

  • 1.2.3-ms4

  • 1.2.3-rc4

  • 1.2.3-rc.4

  • 1.2.3-ms.4

  • 1.2.3-ms.4+5

Примеры НЕ допустимых форматов:

  • 1

  • 1.2

  • 1.2.3.4

Parameters:
  • version – Строковое представление версии.

Returns:

новый экземпляр Version.

toString

public String toString()