Class Version
- java.lang.Object
-
- jenkins.plugin.android.emulator.sdk.cli.Version
-
- All Implemented Interfaces:
Comparable<Version>
public class Version extends Object implements Comparable<Version>
NodeJSVersion identifier.NodeJSVersion identifiers have tree components.
- Major version. A non-negative integer.
- Minor version. A non-negative integer.
- Micro version. A non-negative integer.
Version
objects are immutable.
-
-
Field Summary
Fields Modifier and Type Field Description static Version
emptyVersion
The empty version "0.0.0".
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description int
compareTo(Version other)
Compares thisNodeJSVersion
object to anotherNodeJSVersion
.boolean
equals(Object object)
Compares thisNodeJSVersion
object to another object.int
getMajor()
Returns the major component of this version identifier.int
getMicro()
Returns the micro component of this version identifier.int
getMinor()
Returns the minor component of this version identifier.String
getQualifier()
Returns the qualifier component of this version identifier.int
hashCode()
Returns a hash code value for the object.static Version
parseVersion(String version)
Parses a version identifier from the specified string.String
toString()
Returns the string representation of this version identifier.
-
-
-
Field Detail
-
emptyVersion
public static final Version emptyVersion
The empty version "0.0.0".
-
-
Constructor Detail
-
Version
public Version(int major, int minor, int micro, String qualifier)
Creates a version identifier from the specified numerical components.- Parameters:
major
- Major component of the version identifier.minor
- Minor component of the version identifier.micro
- Micro component of the version identifier.qualifier
- Qualifier component of the version identifier.- Throws:
IllegalArgumentException
- If the numerical components are negative.
-
Version
public Version(String version)
Creates a version identifier from the specified string.NodeJSVersion string grammar:
version ::= major('.'minor('.'micro)?)?('-'qualifier)? major ::= digit+ minor ::= digit+ micro ::= digit+ digit ::= [0..9]
- Parameters:
version
- String representation of the version identifier. There must be no whitespace in the argument.- Throws:
IllegalArgumentException
- Ifversion
is improperly formatted.
-
-
Method Detail
-
parseVersion
public static Version parseVersion(String version)
Parses a version identifier from the specified string.See
NodeJSVersion(String)
for the format of the version string.- Parameters:
version
- String representation of the version identifier. Leading and trailing whitespace will be ignored.- Returns:
- A
NodeJSVersion
object representing the version identifier. Ifversion
isnull
or the empty string thenemptyVersion
will be returned. - Throws:
IllegalArgumentException
- Ifversion
is improperly formatted.
-
getMajor
public int getMajor()
Returns the major component of this version identifier.- Returns:
- The major component.
-
getMinor
public int getMinor()
Returns the minor component of this version identifier.- Returns:
- The minor component.
-
getMicro
public int getMicro()
Returns the micro component of this version identifier.- Returns:
- The micro component.
-
getQualifier
public String getQualifier()
Returns the qualifier component of this version identifier.- Returns:
- The qualifier component.
-
toString
public String toString()
Returns the string representation of this version identifier.The format of the version string will be
major.minor.micro
.
-
hashCode
public int hashCode()
Returns a hash code value for the object.
-
equals
public boolean equals(Object object)
Compares thisNodeJSVersion
object to another object.A version is considered to be equal to another version if the major, minor and micro components are equal.
-
compareTo
public int compareTo(Version other)
Compares thisNodeJSVersion
object to anotherNodeJSVersion
.A version is considered to be less than another version if its major component is less than the other version's major component, or the major components are equal and its minor component is less than the other version's minor component, or the major and minor components are equal and its micro component is less than the other version's micro component, or the major, minor and micro components are equal.
A version is considered to be equal to another version if the major, minor and micro components are equal.
- Specified by:
compareTo
in interfaceComparable<Version>
- Parameters:
other
- TheNodeJSVersion
object to be compared.- Returns:
- A negative integer, zero, or a positive integer if this version
is less than, equal to, or greater than the specified
NodeJSVersion
object. - Throws:
ClassCastException
- If the specified object is not aNodeJSVersion
object.
-
-