@Override public boolean isEffective(Requirement requirement) { boolean isServiceReq = ServiceNamespace.SERVICE_NAMESPACE.equals(requirement.getNamespace()); return !(isServiceReq && FeaturesService.ServiceRequirementsBehavior.Disable == serviceRequirements); }
void setRequirements(List<Requirement> requirements) { allRequirements = requirements; requirementMap = new HashMap<String,List<Requirement>>(); for (Requirement requirement : requirements) { List<Requirement> list = requirementMap.get(requirement.getNamespace()); if (list == null) { list = new LinkedList<Requirement>(); requirementMap.put(requirement.getNamespace(), list); } list.add(requirement); } }
void setRequirements(List<Requirement> requirements) { allRequirements = requirements; requirementMap = new HashMap<String,List<Requirement>>(); for (Requirement requirement : requirements) { List<Requirement> list = requirementMap.get(requirement.getNamespace()); if (list == null) { list = new LinkedList<Requirement>(); requirementMap.put(requirement.getNamespace(), list); } list.add(requirement); } }
private String getRequirementId(Requirement requirement) { String filter = requirement.getDirectives().get(Namespace.REQUIREMENT_FILTER_DIRECTIVE); if (filter != null) { return requirement.getNamespace() + "; " + filter; } else { return requirement.getNamespace(); } }
public List<Requirement> getRequirements(String namespace) { List<Requirement> result = reqs; if (namespace != null) { result = new ArrayList<>(); for (Requirement req : reqs) { if (req.getNamespace().equals(namespace)) { result.add(req); } } } return result; }
private void filterResolvedHosts(Requirement requirement, List<ModuleCapability> candidates, boolean filterResolvedHosts) { if (filterResolvedHosts && HostNamespace.HOST_NAMESPACE.equals(requirement.getNamespace())) { for (Iterator<ModuleCapability> iCandidates = candidates.iterator(); iCandidates.hasNext();) { if (wirings.containsKey(iCandidates.next().getRevision())) { iCandidates.remove(); } } } }
private RequirementImpl getFirstIdentityReq(ResourceImpl resource) { for (Requirement r : resource.getRequirements(null)) { if (IDENTITY_NAMESPACE.equals(r.getNamespace())) { return (RequirementImpl) r; } } return null; }
private void filterResolvedHosts(Requirement requirement, List<ModuleCapability> candidates, boolean filterResolvedHosts) { if (filterResolvedHosts && HostNamespace.HOST_NAMESPACE.equals(requirement.getNamespace())) { for (Iterator<ModuleCapability> iCandidates = candidates.iterator(); iCandidates.hasNext();) { if (wirings.containsKey(iCandidates.next().getRevision())) { iCandidates.remove(); } } } }
private void filterResolvedHosts(Requirement requirement, List<ModuleCapability> candidates, boolean filterResolvedHosts) { if (filterResolvedHosts && HostNamespace.HOST_NAMESPACE.equals(requirement.getNamespace())) { for (Iterator<ModuleCapability> iCandidates = candidates.iterator(); iCandidates.hasNext();) { if (wirings.containsKey(iCandidates.next().getRevision())) { iCandidates.remove(); } } } }
public String convert(Requirement req) throws IllegalArgumentException { StringBuilder builder = new StringBuilder(); builder.append(req.getNamespace()); for (Entry<String,String> directive : req.getDirectives().entrySet()) { builder.append(';').append(directive.getKey()).append(":='").append(directive.getValue()).append('\''); } for (Entry<String,Object> attribute : req.getAttributes().entrySet()) { builder.append(';').append(attribute.getKey()).append("='").append(attribute.getValue()).append('\''); } return builder.toString(); }
static Requirement getSubsystemRequirement(Resource resource) { for (Requirement requirement : resource.getRequirements(null)) { if (IDENTITY_NAMESPACE.equals(requirement.getNamespace()) && TYPE_SUBSYSTEM.equals(requirement.getAttributes().get(CAPABILITY_TYPE_ATTRIBUTE))) { return requirement; } } return null; }
private boolean equalsReq(Requirement other) { if (!Objects.equals(namespace, other.getNamespace())) return false; if (!Objects.equals(attributes, other.getAttributes())) return false; if (!Objects.equals(directives, other.getDirectives())) return false; return Objects.equals(resource, other.getResource()); }
public static String toRequireCapability(Requirement requirement) throws Exception { StringBuilder sb = new StringBuilder(); sb.append(requirement.getNamespace()); CapReqBuilder r = new CapReqBuilder(requirement.getNamespace()); r.addAttributes(requirement.getAttributes()); r.addDirectives(requirement.getDirectives()); Attrs attrs = r.toAttrs(); sb.append(";") .append(attrs); return sb.toString(); }
/** * Create a requirement based on an existing requirement, providing the resource. * The namespace, attributes and directives are copied from the provided requirement. * @param requirement The requirement to base the new requirement on. * @param resource The resource to be associated with the requirement */ public RequirementImpl(Resource resource, Requirement requirement) { this(resource, requirement.getNamespace(), requirement.getDirectives(), requirement.getAttributes()); }
/** * Create a requirement based on an existing requirement, providing the resource. * The namespace, attributes and directives are copied from the provided requirement. * @param requirement The requirement to base the new requirement on. * @param resource The resource to be associated with the requirement */ public RequirementImpl(Resource resource, Requirement requirement) { this(resource, requirement.getNamespace(), requirement.getDirectives(), requirement.getAttributes()); }
private Requirement negateRequirement(Requirement req) { String filter = req.getDirectives().get("filter"); if (filter == null) { throw new IllegalStateException("No filter directive: " + req); } String invFilter = "(!" + filter + ")"; return newRequirementBuilder(req.getNamespace()).setAttributes(req.getAttributes()) .setDirectives(req.getDirectives()).addDirective("filter", invFilter).build(); }
public static CapReqBuilder clone(Requirement requirement) throws Exception { RequirementBuilder builder = new RequirementBuilder(requirement.getNamespace()); builder.addAttributes(requirement.getAttributes()); builder.addDirectives(requirement.getDirectives()); return builder; }
public static Requirement copy(Requirement c, Resource r) throws Exception { CapReqBuilder from = new CapReqBuilder(c.getNamespace()).from(c); if (r == null) return from.buildSyntheticRequirement(); else return from.setResource(r) .buildRequirement(); }
public static CapReqBuilder clone(Requirement requirement) { CapReqBuilder builder = new CapReqBuilder(requirement.getNamespace()); builder.addAttributes(requirement.getAttributes()); builder.addDirectives(requirement.getDirectives()); return builder; }
public static CapReqBuilder clone(Requirement requirement) throws Exception { RequirementBuilder builder = new RequirementBuilder(requirement.getNamespace()); builder.addAttributes(requirement.getAttributes()); builder.addDirectives(requirement.getDirectives()); return builder; }