public class Version extends java.lang.Object implements IStringRepresentation
The last element (i.e. most right) may contain non-numeric characters and will be compared as String. Such characters are limited to ascii letters, digits and '-' and '_'.
Examples:
3.1 > 3.0
3.1.1 > 3.1
2.4 < 10.0
0.11.2 > 0.1.22
1.4.7b > 1.4.7a
1.5.0_02 < 1.5.0_17
1.4.2_02 < 1.4.10_01
Modifier and Type | Field and Description |
---|---|
static java.lang.String |
SEPARATOR
Contains the seperator between the version elements.
|
static java.lang.String |
SPECIAL_CHARACTERS
A definition of characters that are allowed in a version element.
|
Modifier | Constructor and Description |
---|---|
protected |
Version()
Initialize the new instance.
|
|
Version(int major)
Initialize the new instance with a major version.
|
|
Version(int major,
int minor)
Initialize the new instance with a major and minor version.
|
|
Version(int major,
int minor,
int micro)
Initialize the new instance with a major, minor and micro version.
|
|
Version(int major,
int minor,
int micro,
java.lang.String qualifier)
Initialize the new instance with a major, minor, micro version
and a qualifier.
|
|
Version(java.lang.String versionString)
Initialize the new instance with a version string of type "x.y.z".
|
|
Version(Version version)
Initialize the new instance with the values from another a version.
|
Modifier and Type | Method and Description |
---|---|
protected void |
addElement(int value) |
java.lang.String |
asString()
Returns the version as string.
|
int |
compareTo(java.lang.Object obj)
Compares this object with the specified object for order.
|
Version |
copy()
Returns a new version object with the same value as this one.
|
boolean |
equals(java.lang.Object obj)
Returns true if this version is equal to the given object.
|
protected org.pfsw.text.Version.VersionElement |
getElement(int index) |
protected java.util.List<org.pfsw.text.Version.VersionElement> |
getElements() |
protected int |
getIntValueOfElement(int index) |
static Version |
getJavaBaseVersion()
Returns the version of the current JVM with out the patch level.
|
static Version |
getJavaVersion()
Returns the version of the current JVM.
|
protected org.pfsw.text.Version.VersionElement |
getLastElement() |
int |
getMajorVersion()
Returns the major version (the most left part) or -1 if this element is not
available or is not numeric.
|
int |
getMicroVersion()
Returns the micro version (the third from left part) or -1 if this element
is not available or is not numeric.
|
int |
getMinorVersion()
Returns the minor version (the second from left part) or -1 if this element
is not available or is not numeric.
|
java.lang.String[] |
getVersionElements()
Returns an array where all sub-elements are contained.
|
int |
hashCode()
Returns a hash code
|
boolean |
isEqualTo(java.lang.String strVersion)
Returns true if this version is equal to the version
represented by the given string.
|
boolean |
isGreaterOrEqual(java.lang.String strVersion)
Returns if this version is greater or equal compared to the given version.
|
boolean |
isGreaterOrEqual(Version version)
Returns if this version is greater or equal compared to the given version.
|
boolean |
isGreaterThan(java.lang.String version)
Returns if this version is greater than the given version.
|
boolean |
isGreaterThan(Version version)
Returns if this version is greater than the specified version.
|
boolean |
isLessOrEqual(java.lang.String strVersion)
Returns if this version is less or equal compared to the given version.
|
boolean |
isLessOrEqual(Version version)
Returns if this version is less or equal compared to the given version.
|
boolean |
isLessThan(java.lang.String version)
Returns if this version is less than the specified version.
|
boolean |
isLessThan(Version version)
Returns if this version is less than the given version.
|
boolean |
isNumeric()
Returns true if this version contains only positive numeric sub parts.
|
boolean |
isValid()
Returns true if this version contains only valid sub parts.
|
static boolean |
isValidVersion(java.lang.String str)
Returns true if the given string represents a valid version.
|
protected boolean |
needsSeparator(int elementIndex,
org.pfsw.text.Version.VersionElement element) |
protected void |
parse(java.lang.String versionString) |
protected void |
setElements(java.util.List<org.pfsw.text.Version.VersionElement> newValue) |
protected StringUtil |
str() |
java.lang.String |
toString()
Returns the string for this object.
|
public static final java.lang.String SEPARATOR
public static final java.lang.String SPECIAL_CHARACTERS
protected Version()
public Version(java.lang.String versionString)
public Version(Version version)
public Version(int major, int minor, int micro, java.lang.String qualifier)
public Version(int major, int minor, int micro)
public Version(int major, int minor)
public Version(int major)
public static boolean isValidVersion(java.lang.String str)
str
- The string to be checked if it is a valid versionpublic static Version getJavaVersion()
public static Version getJavaBaseVersion()
public boolean isGreaterThan(Version version)
public boolean isLessThan(Version version)
public boolean isGreaterThan(java.lang.String version)
public boolean isLessThan(java.lang.String version)
public boolean isGreaterOrEqual(Version version)
public boolean isLessOrEqual(Version version)
public boolean isGreaterOrEqual(java.lang.String strVersion)
public boolean isLessOrEqual(java.lang.String strVersion)
public boolean isEqualTo(java.lang.String strVersion)
public boolean equals(java.lang.Object obj)
equals
in class java.lang.Object
public int hashCode()
hashCode
in class java.lang.Object
public java.lang.String asString()
toString()
.
The toString()
might be changed in a future release to return
a debug string of this object.asString
in interface IStringRepresentation
public java.lang.String toString()
asString()
, but might change
in the future. So use asString()
instead!toString
in class java.lang.Object
public Version copy()
public java.lang.String[] getVersionElements()
public int compareTo(java.lang.Object obj)
java.lang.IllegalArgumentException
- if the specified object is not a Versionpublic boolean isNumeric()
public boolean isValid()
public int getMajorVersion()
public int getMinorVersion()
public int getMicroVersion()
protected void parse(java.lang.String versionString)
protected boolean needsSeparator(int elementIndex, org.pfsw.text.Version.VersionElement element)
protected int getIntValueOfElement(int index)
protected void addElement(int value)
protected org.pfsw.text.Version.VersionElement getLastElement()
protected org.pfsw.text.Version.VersionElement getElement(int index)
protected java.util.List<org.pfsw.text.Version.VersionElement> getElements()
protected void setElements(java.util.List<org.pfsw.text.Version.VersionElement> newValue)
protected StringUtil str()