class DASpecification {

    public static List<TNodeTemplate> getNodeTemplatesWithAbstractDAs(TTopologyTemplate topologyTemplate) {
        List<TNodeTemplate> nodeTemplates = topologyTemplate.getNodeTemplates();
        List<TNodeTemplate> nodeTemplatesWithAbstractDA = nodeTemplates.stream()
            .filter(nt -> nt.getDeploymentArtifacts() != null)
            .filter(nt -> nt.getDeploymentArtifacts().getDeploymentArtifact().stream()
                .anyMatch(da -> getArtifactTypeOfDA(da).getAbstract() == TBoolean.YES))
            .collect(Collectors.toList());

        return nodeTemplatesWithAbstractDA;
    }

}