public class SemanticVersionComparator<T extends com.atlassian.jira.entity.WithId & com.atlassian.jira.util.Named>
extends java.lang.Object
implements java.util.Comparator<T>
Modifier and Type | Class and Description |
---|---|
static class |
SemanticVersionComparator.SortOrder |
Modifier and Type | Field and Description |
---|---|
private int |
isAscending |
static java.lang.String |
VERSION_REG_EX |
Constructor and Description |
---|
SemanticVersionComparator(SemanticVersionComparator.SortOrder sortOder) |
Modifier and Type | Method and Description |
---|---|
int |
compare(T o1,
T o2) |
int |
compareVersionParts(java.lang.String[] version1Parts,
java.lang.String[] version2Parts)
compares two version.
|
int |
compareVersions(java.lang.String str1,
java.lang.String str2) |
java.lang.String[] |
splitAndTrim(java.lang.String versionName) |
public static final java.lang.String VERSION_REG_EX
private final int isAscending
public SemanticVersionComparator(SemanticVersionComparator.SortOrder sortOder)
public int compare(T o1, T o2)
compare
in interface java.util.Comparator<T extends com.atlassian.jira.entity.WithId & com.atlassian.jira.util.Named>
public int compareVersions(java.lang.String str1, java.lang.String str2)
public int compareVersionParts(java.lang.String[] version1Parts, java.lang.String[] version2Parts)
version1Parts
- split version parts: 1.2.4 -> [1, 2, 4]. a-b-c -> [a, b, c]version2Parts
- same as versionParts@NotNull public java.lang.String[] splitAndTrim(java.lang.String versionName)