org.sonatype.aether.util.version
Class GenericVersionScheme
java.lang.Object
org.sonatype.aether.util.version.GenericVersionScheme
- All Implemented Interfaces:
- VersionScheme
public class GenericVersionScheme
- extends Object
- implements VersionScheme
A version scheme using a generic version syntax and common sense sorting. This scheme accepts versions of any form,
interpreting a version as a sequence of numeric and alphabetic components. The characters '-' and '.' as well as the
mere transitions from digit to letter and vice versa delimit the version components. Delimiters are treated as
equivalent. Numeric components are compared mathematically, alphabetic components are compared lexicographically and
case-insensitively. However, the following qualifier strings are recognized and treated specially: "alpha" < "beta" <
"milestone" < "cr" = "rc" < "snapshot" < "final" = "ga" < "sp". All of those well-known qualifiers are considered
smaller/older than other strings. An empty component/string is equivalent to 0. Numbers and strings are considered
incomparable against each other. Where version components of different kind would collide, comparison will instead
assume that the previous components are padded with 0 or "ga", respectively, until the kind mismatch is resolved,
i.e. 1-alpha = 1.0.0-alpha < 1.0.1-ga = 1.0.1.
- Author:
- Benjamin Bentmann, Alin Dreghiciu
|
Constructor Summary |
GenericVersionScheme()
Creates a new instance of the version scheme for parsing versions. |
GenericVersionScheme
public GenericVersionScheme()
- Creates a new instance of the version scheme for parsing versions.
parseVersion
public Version parseVersion(String version)
throws InvalidVersionSpecificationException
- Specified by:
parseVersion in interface VersionScheme
- Throws:
InvalidVersionSpecificationException
parseVersionRange
public VersionRange parseVersionRange(String range)
throws InvalidVersionSpecificationException
- Specified by:
parseVersionRange in interface VersionScheme
- Throws:
InvalidVersionSpecificationException
parseVersionConstraint
public VersionConstraint parseVersionConstraint(String constraint)
throws InvalidVersionSpecificationException
- Specified by:
parseVersionConstraint in interface VersionScheme
- Throws:
InvalidVersionSpecificationException
equals
public boolean equals(Object obj)
- Overrides:
equals in class Object
hashCode
public int hashCode()
- Overrides:
hashCode in class Object
Copyright © 2010-2011 Sonatype, Inc.. All Rights Reserved.