public VersionRange useString(String attribute) { return VersionRange.parse(attribute); } }
public boolean isInRange(Version version) { // We might not have an upper end to the range. if (m_ceiling == null) { return (version.compareTo(m_floor) >= 0); } else if (isFloorInclusive() && isCeilingInclusive()) { return (version.compareTo(m_floor) >= 0) && (version.compareTo(m_ceiling) <= 0); } else if (isCeilingInclusive()) { return (version.compareTo(m_floor) > 0) && (version.compareTo(m_ceiling) <= 0); } else if (isFloorInclusive()) { return (version.compareTo(m_floor) >= 0) && (version.compareTo(m_ceiling) < 0); } return (version.compareTo(m_floor) > 0) && (version.compareTo(m_ceiling) < 0); }
public static VersionRange parse(String range) { // Check if the version is an interval. if (range.indexOf(',') >= 0) { String s = range.substring(1, range.length() - 1); String vlo = s.substring(0, s.indexOf(',')).trim(); String vhi = s.substring(s.indexOf(',') + 1, s.length()).trim(); return new VersionRange(new Version(vlo), (range.charAt(0) == '['), new Version(vhi), (range.charAt(range.length() - 1) == ']')); } else { return new VersionRange(new Version(range), true, null, false); } }
public VersionRange getVersion() { if (versionRange == null) { Parameter parameter = getDirective(Constants.VERSION_ATTRIBUTE); if (parameter != null) { if (parameter.isCollection()) throw new IllegalArgumentException("Duplicate version parameter."); Object value = parameter.getValue(); if (value != null) { versionRange = VersionRange.parse(value.toString()); } } } return versionRange; } }