Example #1
0
  public static RequirementBuilder createRequirementFromCapability(Capability cap) {
    RequirementBuilder req = new RequirementBuilder(cap.getNamespace());
    StringBuilder sb = new StringBuilder("(&");
    for (Entry<String, Object> e : cap.getAttributes().entrySet()) {
      Object v = e.getValue();
      if (v instanceof Version || e.getKey().equals("version")) {
        VersionRange r = new VersionRange(v.toString());
        String filter = r.toFilter();
        sb.append(filter);

      } else sb.append("(").append(e.getKey()).append("=").append(v).append(")");
    }
    sb.append(")");

    req.and(sb.toString());
    return req;
  }
Example #2
0
 public static CapReqBuilder clone(Requirement requirement) throws Exception {
   RequirementBuilder builder = new RequirementBuilder(requirement.getNamespace());
   builder.addAttributes(requirement.getAttributes());
   builder.addDirectives(requirement.getDirectives());
   return builder;
 }