Package org.hotswap.agent.versions
Class ComparableVersion
- java.lang.Object
-
- org.hotswap.agent.versions.ComparableVersion
-
- All Implemented Interfaces:
Comparable<ComparableVersion>
public class ComparableVersion extends Object implements Comparable<ComparableVersion>
Generic implementation of version comparison.Features:
- mixing of '
-' (dash) and '.' (dot) separators, - transition between characters and digits also constitutes a separator:
1.0alpha1 => [1, 0, alpha, 1] - unlimited number of version components,
- version components in the text can be digits or strings,
- strings are checked for well-known qualifiers and the qualifier ordering
is used for version ordering. Well-known qualifiers (case insensitive) are:
alphaorabetaorbmilestoneormrcorcrsnapshot(the empty string)orgaorfinalsp
- a dash usually precedes a qualifier, and is always less important than something preceded with a dot.
- Author:
- Kenney Westerhof, Hervé Boutemy
- See Also:
- "Versioning" on Maven Wiki
-
-
Constructor Summary
Constructors Constructor Description ComparableVersion(String version)Instantiates a new comparable version.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description intcompareTo(ComparableVersion o)booleanequals(Object o)StringgetCanonical()Gets the canonical.inthashCode()static voidmain(String... args)Main to test version parsing and comparison.voidparseVersion(String version)Parses the version.StringtoString()
-
-
-
Constructor Detail
-
ComparableVersion
public ComparableVersion(String version)
Instantiates a new comparable version.- Parameters:
version- the version
-
-
Method Detail
-
parseVersion
public final void parseVersion(String version)
Parses the version.- Parameters:
version- the version
-
compareTo
public int compareTo(ComparableVersion o)
- Specified by:
compareToin interfaceComparable<ComparableVersion>
-
getCanonical
public String getCanonical()
Gets the canonical.- Returns:
- the canonical
-
main
public static void main(String... args)
Main to test version parsing and comparison.- Parameters:
args- the version strings to parse and compare
-
-