Package org.apache.felix.utils.version
Class VersionRange
- java.lang.Object
-
- org.apache.felix.utils.version.VersionRange
-
- All Implemented Interfaces:
java.io.Serializable
public class VersionRange extends java.lang.Object implements java.io.Serializable- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description static intANYstatic VersionRangeANY_VERSIONprivate org.osgi.framework.Versionceilingstatic intEXACTprivate org.osgi.framework.Versionfloorstatic org.osgi.framework.VersionINFINITE_VERSIONstatic intMAJORstatic intMICROstatic intMINORprivate booleanopenCeilingprivate booleanopenFloorprivate static boolean[]removeableprivate static longserialVersionUID
-
Constructor Summary
Constructors Constructor Description VersionRange(boolean openFloor, org.osgi.framework.Version floor, org.osgi.framework.Version ceiling, boolean openCeiling)Interval constructorVersionRange(java.lang.String val)VersionRange(java.lang.String val, boolean exact)VersionRange(java.lang.String val, boolean exact, boolean clean)VersionRange(org.osgi.framework.Version atLeast)atLeast constructorVersionRange(org.osgi.framework.Version atLeast, boolean exact)atLeast constructor
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description private voidcheckRange()booleancontains(org.osgi.framework.Version version)test a version to see if it falls in the rangebooleanequals(java.lang.Object obj)org.osgi.framework.VersiongetCeiling()org.osgi.framework.VersiongetFloor()inthashCode()VersionRangeintersect(VersionRange r)booleanisOpenCeiling()booleanisOpenFloor()booleanisPointVersion()private static booleanisRangeValid(boolean openFloor, org.osgi.framework.Version floor, org.osgi.framework.Version ceiling, boolean openCeiling)Check if the supplied parameters describe a valid version range.private booleanisRemoveable(char ch)private java.lang.StringmakeString(boolean openFloor, org.osgi.framework.Version floor, org.osgi.framework.Version ceiling, boolean openCeiling)static VersionRangenewInstance(org.osgi.framework.Version pointVersion, int lowerBoundRule, int upperBoundRule)static VersionRangeparseVersionRange(java.lang.String val)private java.lang.StringremoveQuotesAndWhitespaces(java.lang.String val)java.lang.StringtoString()
-
-
-
Field Detail
-
serialVersionUID
private static final long serialVersionUID
- See Also:
- Constant Field Values
-
INFINITE_VERSION
public static final org.osgi.framework.Version INFINITE_VERSION
-
ANY_VERSION
public static final VersionRange ANY_VERSION
-
EXACT
public static final int EXACT
- See Also:
- Constant Field Values
-
MICRO
public static final int MICRO
- See Also:
- Constant Field Values
-
MINOR
public static final int MINOR
- See Also:
- Constant Field Values
-
MAJOR
public static final int MAJOR
- See Also:
- Constant Field Values
-
ANY
public static final int ANY
- See Also:
- Constant Field Values
-
openFloor
private final boolean openFloor
-
floor
private final org.osgi.framework.Version floor
-
ceiling
private final org.osgi.framework.Version ceiling
-
openCeiling
private final boolean openCeiling
-
removeable
private static boolean[] removeable
-
-
Constructor Detail
-
VersionRange
public VersionRange(boolean openFloor, org.osgi.framework.Version floor, org.osgi.framework.Version ceiling, boolean openCeiling)Interval constructor- Parameters:
openFloor- Whether the lower bound of the range is inclusive (false) or exclusive (true).floor- The lower bound version of the range.ceiling- The upper bound version of the range.openCeiling- Whether the upper bound of the range is inclusive (false) or exclusive (true).
-
VersionRange
public VersionRange(org.osgi.framework.Version atLeast)
atLeast constructor- Parameters:
atLeast- Minimum version
-
VersionRange
public VersionRange(org.osgi.framework.Version atLeast, boolean exact)atLeast constructor- Parameters:
atLeast- Minimum versionexact- Exact range
-
VersionRange
public VersionRange(java.lang.String val) throws java.lang.IllegalArgumentException, java.lang.NumberFormatException- Throws:
java.lang.IllegalArgumentExceptionjava.lang.NumberFormatException
-
VersionRange
public VersionRange(java.lang.String val, boolean exact) throws java.lang.IllegalArgumentException, java.lang.NumberFormatException- Throws:
java.lang.IllegalArgumentExceptionjava.lang.NumberFormatException
-
VersionRange
public VersionRange(java.lang.String val, boolean exact, boolean clean) throws java.lang.IllegalArgumentException, java.lang.NumberFormatException- Throws:
java.lang.IllegalArgumentExceptionjava.lang.NumberFormatException
-
-
Method Detail
-
removeQuotesAndWhitespaces
private java.lang.String removeQuotesAndWhitespaces(java.lang.String val)
-
isRemoveable
private boolean isRemoveable(char ch)
-
parseVersionRange
public static VersionRange parseVersionRange(java.lang.String val) throws java.lang.IllegalArgumentException, java.lang.NumberFormatException
- Throws:
java.lang.IllegalArgumentExceptionjava.lang.NumberFormatException
-
getCeiling
public org.osgi.framework.Version getCeiling()
-
getFloor
public org.osgi.framework.Version getFloor()
-
isOpenCeiling
public boolean isOpenCeiling()
-
isOpenFloor
public boolean isOpenFloor()
-
isPointVersion
public boolean isPointVersion()
-
contains
public boolean contains(org.osgi.framework.Version version)
test a version to see if it falls in the range- Parameters:
version- The version to check- Returns:
- Whether the version is within the range
-
intersect
public VersionRange intersect(VersionRange r)
-
isRangeValid
private static boolean isRangeValid(boolean openFloor, org.osgi.framework.Version floor, org.osgi.framework.Version ceiling, boolean openCeiling)Check if the supplied parameters describe a valid version range.- Parameters:
floor- the minimum version.openFloor- whether the minimum version is exclusive.ceiling- the maximum version.openCeiling- whether the maximum version is exclusive.- Returns:
- true is the range is valid; otherwise false.
-
checkRange
private void checkRange()
-
hashCode
public int hashCode()
- Overrides:
hashCodein classjava.lang.Object
-
equals
public boolean equals(java.lang.Object obj)
- Overrides:
equalsin classjava.lang.Object
-
toString
public java.lang.String toString()
- Overrides:
toStringin classjava.lang.Object
-
makeString
private java.lang.String makeString(boolean openFloor, org.osgi.framework.Version floor, org.osgi.framework.Version ceiling, boolean openCeiling)
-
newInstance
public static VersionRange newInstance(org.osgi.framework.Version pointVersion, int lowerBoundRule, int upperBoundRule)
-
-