Class ToolVersion

java.lang.Object
de.tracetronic.jenkins.plugins.ecutest.util.ToolVersion
All Implemented Interfaces:
Serializable, Comparable<ToolVersion>

public final class ToolVersion extends Object implements Comparable<ToolVersion>, Serializable
Helper class to easily compare tool versions defined by major, minor, micro and qualifier version. Mainly used to enable or disable plugin features by comparing ETPlugin.ET_MIN_VERSION with the configured ecu.test version.
See Also:
  • Constructor Details

    • ToolVersion

      public ToolVersion(int major, int minor, String qualifier)
      Instantiates a new ToolVersion.
      Parameters:
      major - the major version
      minor - the minor version
      qualifier - the qualifier version
    • ToolVersion

      public ToolVersion(int major, int minor, int micro)
      Instantiates a new ToolVersion.
      Parameters:
      major - the major version
      minor - the minor version
      micro - the micro version
    • ToolVersion

      public ToolVersion(int major, int minor, int micro, String qualifier)
      Instantiates a new ToolVersion.
      Parameters:
      major - the major version
      minor - the minor version
      micro - the micro version
      qualifier - the qualifier version
  • Method Details

    • parse

      public static ToolVersion parse(String version) throws IllegalArgumentException
      Parses a version string and returns a ToolVersion.
      Parameters:
      version - the version string
      Returns:
      the parsed version
      Throws:
      IllegalArgumentException - if the format of the version string is invalid
    • compareTo

      public int compareTo(ToolVersion version)
      Specified by:
      compareTo in interface Comparable<ToolVersion>
    • compareWithoutMicroTo

      public int compareWithoutMicroTo(ToolVersion version)
      Compares two ToolVersions but ignoring micro and qualifier.
      Parameters:
      version - the version to be compared
      Returns:
      integer indicating comparison result
      See Also:
    • compareWithoutQualifierTo

      public int compareWithoutQualifierTo(ToolVersion version)
      Compares two ToolVersions but ignoring the qualifier.
      Parameters:
      version - the version to be compared
      Returns:
      integer indicating comparison result
      See Also:
    • toString

      public String toString()
      Overrides:
      toString in class Object
    • toMicroString

      public String toMicroString()
      Returns a shorter string representation without the qualifier version.
      Returns:
      the short version string
    • toMinorString

      public String toMinorString()
      Returns a shorter string representation without the micro and qualifier version.
      Returns:
      the short version string
    • equals

      public boolean equals(Object other)
      Overrides:
      equals in class Object
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object