From: Benjamin, Max Date: Tue, 1 Dec 2020 01:08:25 +0000 (-0500) Subject: allow automatic selection of swagger file by X-Git-Tag: 1.8.0~47^2 X-Git-Url: https://gerrit.onap.org/r/gitweb?a=commitdiff_plain;h=refs%2Fchanges%2F44%2F115944%2F2;p=so.git allow automatic selection of swagger file by allow automatic selection of swagger file by LATEST Issue-ID: SO-3408 Signed-off-by: Benjamin, Max (mb388a) Change-Id: I879244cc0cd76cf4a5a6f9bf70598da4f6973b83 --- diff --git a/graph-inventory/aai-client/pom.xml b/graph-inventory/aai-client/pom.xml index d1c9742cea..d532103c40 100644 --- a/graph-inventory/aai-client/pom.xml +++ b/graph-inventory/aai-client/pom.xml @@ -93,7 +93,7 @@ ${project.build.directory}/generated-sources org.onap.aaiclient.client.generated.fluentbuilders AAIFluentTypeBuilder - ${project.build.directory}/swagger/onap/aai_swagger_yaml/aai_swagger_v21.yaml + ${project.build.directory}/swagger/onap/aai_swagger_yaml/aai_swagger_LATEST.yaml org.onap.aaiclient.client.aai.entities.uri.AAIFluentSingleType org.onap.aaiclient.client.aai.entities.uri.AAIFluentPluralType org.onap.aaiclient.client.aai.entities.uri.AAIFluentTopLevelType diff --git a/graph-inventory/fluent-builder-maven-plugin/src/main/java/org/onap/graphinventory/generate/SwaggerConverter.java b/graph-inventory/fluent-builder-maven-plugin/src/main/java/org/onap/graphinventory/generate/SwaggerConverter.java index ec09af8a4e..fc42d9ca0d 100644 --- a/graph-inventory/fluent-builder-maven-plugin/src/main/java/org/onap/graphinventory/generate/SwaggerConverter.java +++ b/graph-inventory/fluent-builder-maven-plugin/src/main/java/org/onap/graphinventory/generate/SwaggerConverter.java @@ -1,6 +1,10 @@ package org.onap.graphinventory.generate; +import java.io.IOException; +import java.nio.file.Files; +import java.nio.file.Paths; import java.util.ArrayList; +import java.util.Comparator; import java.util.HashMap; import java.util.HashSet; import java.util.List; @@ -26,6 +30,9 @@ public class SwaggerConverter { } public Map getDoc(String swaggerLocation) throws JsonProcessingException { + + + swaggerLocation = processLocation(swaggerLocation); Swagger swagger = new SwaggerParser().read(swaggerLocation); Map paths = swagger.getPaths().entrySet().stream() @@ -168,4 +175,19 @@ public class SwaggerConverter { return output; } + + private String processLocation(String swaggerLocation) { + + java.nio.file.Path path = Paths.get(swaggerLocation); + try { + return Files.list(path.getParent()) + .filter(it -> it.getFileName().toString() + .matches(path.getFileName().toString().replaceFirst("LATEST", "v\\\\\\d+"))) + .sorted(Comparator.reverseOrder()).map(it -> it.toString()).findFirst().orElseGet(null); + } catch (IOException e) { + log.error(e); + } + + return null; + } }