private List<String> mapToStringList(@NonNull List<TPolicy> policy) { return policy.stream().map(p -> p.getPolicyType().toString() + p.getPolicyRef().toString()).collect(Collectors.toList()); }
public TPolicy build() { return new TPolicy(this); } }
@NonNull public Map<String, TPolicyDefinition> convert(TPolicy node) { if (Objects.isNull(node)) return new LinkedHashMap<>(); return Collections.singletonMap( node.getName(), new TPolicyDefinition.Builder( convert( node.getPolicyType(), new PolicyTypeId(node.getPolicyRef()) )) .setProperties(convertPropertyAssignment(repository.getElement(new PolicyTemplateId(node.getPolicyRef())))) .build() ); }
public static boolean containsPatterns(List<TNodeTemplate> topologyNodes, Map<QName, TNodeType> nodeTypes) { NamespaceManager namespaceManager = RepositoryFactory.getRepository().getNamespaceManager(); return topologyNodes.stream() .anyMatch(nodeTemplate -> { TNodeType tNodeType = nodeTypes.get(nodeTemplate.getType()); boolean isPattern = namespaceManager.isPatternNamespace(tNodeType.getTargetNamespace()); boolean isAnnotatedByPattern = false; if (Objects.nonNull(nodeTemplate.getPolicies())) { isAnnotatedByPattern = nodeTemplate.getPolicies().getPolicy() .stream() .anyMatch(tPolicy -> namespaceManager.isPatternNamespace(tPolicy.getPolicyType().getNamespaceURI())); } return isPattern || isAnnotatedByPattern; }); } }
public static TPolicyTemplate toPolicyTemplate(TPolicy policy) { PolicyTemplateId id = new PolicyTemplateId(policy.getPolicyRef()); return repository.getElement(id); }
/** * Get policy templates by names specified in GUI. * The Policy Template names are used as IDs -> have to be unique. */ private Map<TNodeTemplate, List<PolicyWrapper>> getPoliciesForNTs(TopologyWrapper topology, JsonNode params) { Map<TNodeTemplate, List<PolicyWrapper>> policiesForNTs = new HashMap<>(); for (TNodeTemplate topLevelNT : topology.getTopLevelNTs()) { policiesForNTs.put(topLevelNT, new ArrayList<>()); if (topLevelNT.getPolicies() == null) { continue; } for (JsonNode policyWithOperator : params.get("policySelection")) { String propertyKey = policyWithOperator.get("property").asText(); String operator = policyWithOperator.get("operator").asText(); for (TPolicy policy : topLevelNT.getPolicies().getPolicy()) { if (policy.getName().equals(policyWithOperator.get("policy").asText())) { TPolicyTemplate policyTemplate = AllocationUtils.toPolicyTemplate(policy); policiesForNTs.get(topLevelNT).add(new PolicyWrapper(policyTemplate, propertyKey, operator)); } } } } return policiesForNTs; }
private void acceptBoundaryDefinitionsPolicies(@NonNull TBoundaryDefinitions boundaryDefinitions) { final TPolicies policies = boundaryDefinitions.getPolicies(); if (policies != null) { for (TPolicy policy : policies.getPolicy()) { policy.accept(this); } } }
if (policies != null) { for (TPolicy pol : policies.getPolicy()) { QName type = pol.getPolicyType(); PolicyTypeId ctId = new PolicyTypeId(type); ids.add(ctId);
public void visit(TNodeTemplate nodeTemplate) { this.visit((RelationshipSourceOrTarget) nodeTemplate); final TNodeTemplate.Requirements requirements = nodeTemplate.getRequirements(); if (requirements != null) { requirements.accept(this); } final TNodeTemplate.Capabilities capabilities = nodeTemplate.getCapabilities(); if (capabilities != null) { capabilities.accept(this); } final TDeploymentArtifacts deploymentArtifacts = nodeTemplate.getDeploymentArtifacts(); if (deploymentArtifacts != null) { for (TDeploymentArtifact deploymentArtifact : deploymentArtifacts.getDeploymentArtifact()) { deploymentArtifact.accept(this); } } final TPolicies policies = nodeTemplate.getPolicies(); if (policies != null) { for (TPolicy policy : policies.getPolicy()) { policy.accept(this); } } // meta model does not offer more children }
.stream() .allMatch(detectorPolicy -> { if (this.namespaceManager.isPatternNamespace(detectorPolicy.getPolicyType().getNamespaceURI())) { return candidatePolicies.stream() .anyMatch(candidatePolicy -> { boolean typeEquals = candidatePolicy.getPolicyType().equals(detectorPolicy.getPolicyType()); if (typeEquals && Objects.nonNull(detectorPolicy.getPolicyRef())) { return Objects.nonNull(candidatePolicy.getPolicyRef()) && candidatePolicy.getPolicyRef().equals(detectorPolicy.getPolicyRef()); .stream() .noneMatch(detectorPolicy -> this.namespaceManager.isPatternNamespace(detectorPolicy.getPolicyType().getNamespaceURI()) ); } else if (Objects.nonNull(candidate.getPolicies())) { .stream() .noneMatch(candidatePolicy -> this.namespaceManager.isPatternNamespace(candidatePolicy.getPolicyType().getNamespaceURI()) );
if (policies != null) { for (TPolicy policy : policies.getPolicy()) { PolicyTypeId policyTypeId = new PolicyTypeId(policy.getPolicyType()); ids.add(policyTypeId); PolicyTemplateId policyTemplateId = new PolicyTemplateId(policy.getPolicyRef()); ids.add(policyTemplateId); if (policies != null) { for (TPolicy pol : policies.getPolicy()) { QName type = pol.getPolicyType(); PolicyTypeId ctId = new PolicyTypeId(type); ids.add(ctId); QName template = pol.getPolicyRef(); if (template != null) { PolicyTemplateId policyTemplateId = new PolicyTemplateId(template);