Package tigase.util

Class Version

  • All Implemented Interfaces:
    java.lang.Comparable<Version>

    public class Version
    extends java.lang.Object
    implements java.lang.Comparable<Version>
    • Field Detail

      • incrementableFields

        public static final java.util.EnumSet<Version.FIELD> incrementableFields
      • VERSION_COMPARATOR

        public static final java.util.Comparator<Version> VERSION_COMPARATOR
      • ZERO

        public static final Version ZERO
    • Method Detail

      • of

        public static Version of​(java.lang.String str)
                          throws java.lang.IllegalArgumentException
        Supports both tigase-server-7.2.0-SNAPSHOT-b4895-dist-max.tar.gz and version strings
        Parameters:
        str - string to be parsed. Must match the supported formats
        Returns:
        a Version object based on the provided string.
        Throws:
        java.lang.IllegalArgumentException - when provided input doesn't match supported formats
      • compareTo

        public int compareTo​(Version that)
        Specified by:
        compareTo in interface java.lang.Comparable<Version>
      • equals

        public boolean equals​(java.lang.Object o)
        Overrides:
        equals in class java.lang.Object
      • getBaseVersion

        public Version getBaseVersion()
      • getBugfix

        public int getBugfix()
      • getBuild

        public int getBuild()
      • getCommit

        public java.lang.String getCommit()
      • getMajor

        public int getMajor()
      • getMinor

        public int getMinor()
      • getTypeNumber

        public int getTypeNumber()
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class java.lang.Object
      • increment

        public Version increment​(Version.FIELD field,
                                 int amount)
                          throws java.lang.IllegalArgumentException
        Method increments given field by the specified amount
        Parameters:
        field - to be incremented - only incrementable fields are supported, i.e. any of the incrementableFields.
        amount - by which version should be incremented
        Returns:
        incremented version if correct field was passed as argument, otherwise same non-incremented version is returned.
        Throws:
        java.lang.IllegalArgumentException
      • isZero

        public boolean isZero()
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object
      • toString

        public java.lang.String toString​(int padding)