Package org.eclipse.aether.util.version
Class GenericVersionRange
- java.lang.Object
-
- org.eclipse.aether.util.version.GenericVersionRange
-
- All Implemented Interfaces:
VersionRange
final class GenericVersionRange extends java.lang.Object implements VersionRange
A version range inspired by mathematical range syntax. For example, "[1.0,2.0)", "[1.0,)" or "[1.0]".
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface org.eclipse.aether.version.VersionRange
VersionRange.Bound
-
-
Field Summary
Fields Modifier and Type Field Description private VersionRange.Bound
lowerBound
private VersionRange.Bound
upperBound
-
Constructor Summary
Constructors Constructor Description GenericVersionRange(java.lang.String range)
Creates a version range from the specified range specification.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
containsVersion(Version version)
Determines whether the specified version is contained within this range.boolean
equals(java.lang.Object obj)
VersionRange.Bound
getLowerBound()
Gets a lower bound (if any) for this range.VersionRange.Bound
getUpperBound()
Gets an upper bound (if any) for this range.private static int
hash(java.lang.Object obj)
int
hashCode()
private Version
parse(java.lang.String version)
java.lang.String
toString()
-
-
-
Field Detail
-
lowerBound
private final VersionRange.Bound lowerBound
-
upperBound
private final VersionRange.Bound upperBound
-
-
Constructor Detail
-
GenericVersionRange
GenericVersionRange(java.lang.String range) throws InvalidVersionSpecificationException
Creates a version range from the specified range specification.- Parameters:
range
- The range specification to parse, must not benull
.- Throws:
InvalidVersionSpecificationException
- If the range could not be parsed.
-
-
Method Detail
-
parse
private Version parse(java.lang.String version)
-
getLowerBound
public VersionRange.Bound getLowerBound()
Description copied from interface:VersionRange
Gets a lower bound (if any) for this range. If existent, this range does not contain any version smaller than its lower bound. Note that complex version ranges might exclude some versions even within their bounds.- Specified by:
getLowerBound
in interfaceVersionRange
- Returns:
- A lower bound for this range or
null
is there is none.
-
getUpperBound
public VersionRange.Bound getUpperBound()
Description copied from interface:VersionRange
Gets an upper bound (if any) for this range. If existent, this range does not contain any version greater than its upper bound. Note that complex version ranges might exclude some versions even within their bounds.- Specified by:
getUpperBound
in interfaceVersionRange
- Returns:
- An upper bound for this range or
null
is there is none.
-
containsVersion
public boolean containsVersion(Version version)
Description copied from interface:VersionRange
Determines whether the specified version is contained within this range.- Specified by:
containsVersion
in interfaceVersionRange
- Parameters:
version
- The version to test, must not benull
.- Returns:
true
if this range contains the specified version,false
otherwise.
-
equals
public boolean equals(java.lang.Object obj)
- Overrides:
equals
in classjava.lang.Object
-
hashCode
public int hashCode()
- Overrides:
hashCode
in classjava.lang.Object
-
hash
private static int hash(java.lang.Object obj)
-
toString
public java.lang.String toString()
- Overrides:
toString
in classjava.lang.Object
-
-