Class Version
- All Implemented Interfaces:
Comparable
Version identifiers have four components.
- Major version. A non-negative integer.
- Minor version. A non-negative integer.
- Micro version. A non-negative integer.
- Qualifier. A text string. See
Version(String)
for the format of the qualifier string.
Version
objects are immutable.
- Since:
- 1.3
- Version:
- $Revision: 6860 $
-
Field Summary
Fields -
Constructor Summary
ConstructorsConstructorDescriptionVersion
(int major, int minor, int micro) Creates a version identifier from the specified numerical components.Creates a version identifier from the specified components.Created a version identifier from the specified string. -
Method Summary
Modifier and TypeMethodDescriptionint
Compares thisVersion
object to another object.boolean
Compares thisVersion
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.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.toString()
Returns the string representation of this version identifier.
-
Field Details
-
emptyVersion
The empty version "0.0.0".
-
-
Constructor Details
-
Version
public Version(int major, int minor, int micro) Creates a version identifier from the specified numerical components.The qualifier is set to the empty string.
- Parameters:
major
- Major component of the version identifier.minor
- Minor component of the version identifier.micro
- Micro component of the version identifier.- Throws:
IllegalArgumentException
- If the numerical components are negative.
-
Version
Creates a version identifier from the specified 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. Ifnull
is specified, then the qualifier will be set to the empty string.- Throws:
IllegalArgumentException
- If the numerical components are negative or the qualifier string is invalid.
-
Version
Created a version identifier from the specified string.Here is the grammar for version strings.
version ::= major('.'minor('.'micro('.'qualifier)?)?)? major ::= digit+ minor ::= digit+ micro ::= digit+ qualifier ::= (alpha|digit|'_'|'-')+ digit ::= [0..9] alpha ::= [a..zA..Z]
There must be no whitespace in version.- Parameters:
version
- String representation of the version identifier.- Throws:
IllegalArgumentException
- Ifversion
is improperly formatted.
-
-
Method Details
-
parseVersion
Parses a version identifier from the specified string.See
Version(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
Version
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
Returns the qualifier component of this version identifier.- Returns:
- The qualifier component.
-
toString
Returns the string representation of this version identifier.The format of the version string will be
major.minor.micro
if qualifier is the empty string ormajor.minor.micro.qualifier
otherwise. -
hashCode
public int hashCode()Returns a hash code value for the object. -
equals
Compares thisVersion
object to another object.A version is considered to be equal to another version if the major, minor and micro components are equal and the qualifier component is equal (using
String.equals
). -
compareTo
Compares thisVersion
object to another object.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 and it's qualifier component is less than the other version's qualifier component (using
String.compareTo
).A version is considered to be equal to another version if the major, minor and micro components are equal and the qualifier component is equal (using
String.compareTo
).- Specified by:
compareTo
in interfaceComparable
- Parameters:
object
- TheVersion
object to be compared.- Returns:
- A negative integer, zero, or a positive integer if this object is
less than, equal to, or greater than the specified
Version
object. - Throws:
ClassCastException
- If the specified object is not aVersion
.
-