Class Version

  • All Implemented Interfaces:
    Comparable<Version>

    public class Version
    extends Object
    implements Comparable<Version>
    Representation of a software version, up to major.minor.patch granularity.
    Since:
    2.1.0
    Author:
    Simon Baslé
    • Field Detail

      • NO_VERSION

        public static final Version NO_VERSION
    • Constructor Detail

      • Version

        public Version​(int major,
                       int minor,
                       int patch)
    • Method Detail

      • major

        public int major()
      • minor

        public int minor()
      • patch

        public int patch()
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class Object
      • parseVersion

        public static final Version parseVersion​(String versionString)
        Parses a String into a Version. This expects a version string in the form of "X[.Y[.Z]][anything]". That is a major number, followed optionally by a minor only or a minor + a patch revision, everything after that being completely ignored. For example, the following version strings are valid: - "3.a.2", but note it is considered only a major version since there's a char where minor number should be (parsed into 3.0.0) - "2" (2.0.0) - "3.11" (3.11) - "1.2.3-SNAPSHOT-12.10.2014" (1.2.3) Bad version strings cause an IllegalArgumentException, whereas a null one will cause a NullPointerException.
        Parameters:
        versionString - the string to parse into a Version.
        Returns:
        the major.minor.patch Version corresponding to the string.
        Throws:
        IllegalArgumentException - if the string cannot be correctly parsed into a Version
        NullPointerException - if the string is null.