public IdentityRequirementBuilder(String symbolicName, String range) { this(symbolicName, range != null ? new VersionRange(range) : null, null, null); }
/** * Creates a version range from the specified versions. * * @param leftType Must be either {@link #LEFT_CLOSED} or {@link #LEFT_OPEN} * . * @param leftEndpoint Left endpoint of range. Must not be {@code null}. * @param rightEndpoint Right endpoint of range. May be {@code null} to * indicate the right endpoint is <i>Infinity</i>. * @param rightType Must be either {@link #RIGHT_CLOSED} or * {@link #RIGHT_OPEN}. * @throws IllegalArgumentException If the arguments are invalid. */ public VersionRange(char leftType, Version leftEndpoint, Version rightEndpoint, char rightType) { if ((leftType != LEFT_CLOSED) && (leftType != LEFT_OPEN)) { throw new IllegalArgumentException("invalid leftType \"" + leftType + "\""); } if ((rightType != RIGHT_OPEN) && (rightType != RIGHT_CLOSED)) { throw new IllegalArgumentException("invalid rightType \"" + rightType + "\""); } if (leftEndpoint == null) { throw new IllegalArgumentException("null leftEndpoint argument"); } leftClosed = leftType == LEFT_CLOSED; rightClosed = rightType == RIGHT_CLOSED; left = leftEndpoint; right = rightEndpoint; empty = isEmpty0(); }
@Override public Set<Module> getModules(String symbolicName, VersionRange range) { Set<Module> result = getModules(); Iterator<Module> iterator = result.iterator(); while(iterator.hasNext()) { ResourceIdentity modid = iterator.next().getIdentity(); if (symbolicName != null && !symbolicName.equals(modid.getSymbolicName())) { iterator.remove(); } if (range != null && !range.includes(modid.getVersion())) { iterator.remove(); } } return result; }
left = parseVersion(token, range); right = null; empty = false; endpointLeft = parseVersion(version, range); throw new IllegalArgumentException("invalid range \"" + range + "\": invalid format"); endpointRight = parseVersion(version, range); left = endpointLeft; right = endpointRight; empty = isEmpty0();
if (range != null) { Version version = AbstractCapability.getVersion(cap, IdentityNamespace.CAPABILITY_VERSION_ATTRIBUTE); matches = range.includes(version); reqatts = new HashMap<String, Object>(req.getAttributes()); reqatts.remove(IdentityNamespace.CAPABILITY_VERSION_ATTRIBUTE);
public static VersionRange getVersionRange(Requirement req, String attr) { Object value = req.getAttribute(attr); return (value instanceof String) ? new VersionRange((String) value) : (VersionRange) value; }
public ManifestBuilder addIdentityRequirement(String symbolicName, String version) { return addIdentityRequirement(symbolicName, new VersionRange(version), null, null); }
@Override public Requirement addIdentityRequirement(String symbolicName, String range) { IllegalArgumentAssertion.assertNotNull(symbolicName, "symbolicName"); return addIdentityRequirement(symbolicName, range != null ? new VersionRange(range) : null, null, null); }
protected void validate() { Object attval = getAttribute(IdentityNamespace.CAPABILITY_VERSION_ATTRIBUTE); if (attval != null && !(attval instanceof VersionRange)) { getAttributes().put(IdentityNamespace.CAPABILITY_VERSION_ATTRIBUTE, new VersionRange(attval.toString())); } String resdir = getDirective(Namespace.REQUIREMENT_RESOLUTION_DIRECTIVE); optional = Namespace.RESOLUTION_OPTIONAL.equals(resdir); canonicalName = toString(); }
return new VersionRange(closedLeft ? LEFT_CLOSED : LEFT_OPEN, endpointLeft, endpointRight, closedRight ? RIGHT_CLOSED : RIGHT_OPEN);
List<VersionRange> list = new ArrayList<>(); for (String val : split(valstr)) { list.add(new VersionRange(val.trim())); value = new VersionRange(valstr);
icapE.getAttributes().put(ContentNamespace.CAPABILITY_RUNTIME_NAME_ATTRIBUTE, RESOURCE_E + ".war"); builderE.addContentCapability(deployer.getDeployment(RESOURCE_E)); builderE.addIdentityRequirement("org.apache.camel.core", new VersionRange("[2.11,3.0)")); Resource res = builderE.getResource();