From 3c1569ee732ca94996c407ae05bc5bc945774e92 Mon Sep 17 00:00:00 2001 From: Mithun Menon Date: Thu, 28 Aug 2025 20:30:26 +0200 Subject: [PATCH] Spring boot 3.1 upgrade changes - Updating spring boot from 2.7 to 3.1 for schema service - Speed up build process Issue-ID: AAI-4200 Change-Id: I8d1c232595e6766bfef7b5c533a037d3fac42bf6 Signed-off-by: mithun.menon@t-systems.com --- aai-annotations/pom.xml | 2 +- aai-queries/pom.xml | 34 +-- .../onap/aai/queries/GremlinServerSingleton.java | 5 +- .../test/java/org/onap/aai/queries/AAISetup.java | 2 +- .../onap/aai/queries/GetCustomQueryConfigTest.java | 122 +++++---- .../aai/queries/GremlinServerSingletonTest.java | 1 - aai-schema-gen/pom.xml | 31 ++- .../org/onap/aai/schemagen/AutoGenerateHtml.java | 6 + .../java/org/onap/aai/schemagen/GenerateXsd.java | 10 +- .../org/onap/aai/schemagen/genxsd/HTMLfromOXM.java | 6 +- .../aai/schemagen/genxsd/NodesYAMLfromOXM.java | 3 +- .../org/onap/aai/schemagen/genxsd/YAMLfromOXM.java | 3 +- .../aai/schemagen/swagger/GenerateSwagger.java | 12 +- .../onap/aai/schemagen/genxsd/HTMLfromOXMTest.java | 9 +- .../aai/schemagen/genxsd/NodesYAMLfromOXMTest.java | 23 +- .../onap/aai/schemagen/genxsd/XSDElementTest.java | 292 ++++++++++++--------- .../onap/aai/schemagen/genxsd/YAMLfromOXMTest.java | 64 +++-- .../aai/schemagen/swagger/GenerateSwaggerTest.java | 1 - aai-schema-service/pom.xml | 103 +++++--- aai-schema-service/src/main/docker/aai.sh | 2 +- .../onap/aai/schemaservice/SchemaServiceApp.java | 4 +- .../aai/schemaservice/config/ErrorHandler.java | 13 +- .../onap/aai/schemaservice/edges/EdgeResource.java | 18 +- .../onap/aai/schemaservice/edges/EdgeService.java | 5 +- .../schemaservice/healthcheck/EchoResource.java | 12 +- .../interceptors/post/InvalidResponseStatus.java | 10 +- .../post/ResponseHeaderManipulation.java | 10 +- .../post/ResponseTransactionLogging.java | 12 +- .../interceptors/pre/HeaderValidation.java | 12 +- .../interceptors/pre/HttpHeaderInterceptor.java | 10 +- .../interceptors/pre/OneWaySslAuthorization.java | 12 +- .../pre/RequestHeaderManipulation.java | 10 +- .../pre/RequestTransactionLogging.java | 12 +- .../aai/schemaservice/nodeschema/NodeIngestor.java | 2 +- .../nodeschema/NodeSchemaChecksumResource.java | 14 +- .../nodeschema/NodeSchemaResource.java | 18 +- .../nodeschema/NodeSchemaService.java | 2 +- .../schemaservice/nodeschema/SchemaVersions.java | 2 +- .../aai/schemaservice/query/QueryResource.java | 6 +- .../onap/aai/schemaservice/query/QueryService.java | 6 +- .../service/AuthorizationService.java | 6 +- .../schemaservice/versions/VersionResource.java | 10 +- .../aai/schemaservice/web/JerseyConfiguration.java | 6 +- .../src/main/resources/application.properties | 12 +- .../SchemaServiceTestConfiguration.java | 37 ++- .../aai/schemaservice/edges/EdgeResourceTest.java | 6 +- .../healthcheck/EchoResourceTest.java | 8 +- .../post/InvalidResponseStatusTest.java | 4 +- .../post/ResponseHeaderManipulationTest.java | 8 +- .../interceptors/pre/HeaderValidationTest.java | 8 +- .../pre/HttpHeaderInterceptorTest.java | 2 +- .../pre/OneWaySslAuthorizationTest.java | 8 +- .../pre/RequestTransactionLoggingTest.java | 8 +- .../nodeschema/NodeSchemaResourceTest.java | 6 +- aai-schema/pom.xml | 117 +++++---- .../resources/onap/aai_schema/aai_schema_v10.xsd | 6 +- .../resources/onap/aai_schema/aai_schema_v11.xsd | 6 +- .../resources/onap/aai_schema/aai_schema_v12.xsd | 6 +- .../resources/onap/aai_schema/aai_schema_v13.xsd | 6 +- .../resources/onap/aai_schema/aai_schema_v14.xsd | 6 +- .../resources/onap/aai_schema/aai_schema_v15.xsd | 6 +- .../resources/onap/aai_schema/aai_schema_v16.xsd | 6 +- .../resources/onap/aai_schema/aai_schema_v17.xsd | 6 +- .../resources/onap/aai_schema/aai_schema_v18.xsd | 6 +- .../resources/onap/aai_schema/aai_schema_v19.xsd | 6 +- .../resources/onap/aai_schema/aai_schema_v20.xsd | 6 +- .../resources/onap/aai_schema/aai_schema_v21.xsd | 6 +- .../resources/onap/aai_schema/aai_schema_v22.xsd | 6 +- .../resources/onap/aai_schema/aai_schema_v23.xsd | 6 +- .../resources/onap/aai_schema/aai_schema_v24.xsd | 6 +- .../resources/onap/aai_schema/aai_schema_v25.xsd | 6 +- .../resources/onap/aai_schema/aai_schema_v26.xsd | 6 +- .../resources/onap/aai_schema/aai_schema_v27.xsd | 6 +- .../resources/onap/aai_schema/aai_schema_v28.xsd | 6 +- .../resources/onap/aai_schema/aai_schema_v29.xsd | 6 +- .../resources/onap/aai_schema/aai_schema_v30.xsd | 6 +- .../resources/onap/aai_schema/aai_schema_v9.xsd | 6 +- aai-schema/src/main/xjb/bindings-onap.xjb | 4 +- .../org/onap/aai/schema/ValidateEdgeRulesTest.java | 5 +- .../java/org/onap/aai/schema/ValidateOXMTest.java | 19 +- pom.xml | 24 +- version.properties | 2 +- 82 files changed, 752 insertions(+), 601 deletions(-) diff --git a/aai-annotations/pom.xml b/aai-annotations/pom.xml index 0b39c09e..3da35f2d 100644 --- a/aai-annotations/pom.xml +++ b/aai-annotations/pom.xml @@ -27,7 +27,7 @@ org.onap.aai.schema-service schema-service - 1.13.0-SNAPSHOT + 1.13.1-SNAPSHOT aai-annotations aai-annotations diff --git a/aai-queries/pom.xml b/aai-queries/pom.xml index 16727649..f492574c 100644 --- a/aai-queries/pom.xml +++ b/aai-queries/pom.xml @@ -27,7 +27,7 @@ org.onap.aai.schema-service schema-service - 1.13.0-SNAPSHOT + 1.13.1-SNAPSHOT aai-queries aai-queries @@ -110,27 +110,6 @@ - - org.hamcrest - java-hamcrest - test - - - org.hamcrest - hamcrest-core - test - - - org.hamcrest - hamcrest-junit - test - - - junit - junit - - - org.mockito mockito-core @@ -149,10 +128,13 @@ - javax.xml.bind - jaxb-api - 2.3.0 + jakarta.xml.bind + jakarta.xml.bind-api + + org.apache.httpcomponents.client5 + httpclient5 + org.eclipse.persistence eclipselink @@ -179,7 +161,7 @@ org.projectlombok lombok - 1.18.30 + 1.18.38 provided diff --git a/aai-queries/src/main/java/org/onap/aai/queries/GremlinServerSingleton.java b/aai-queries/src/main/java/org/onap/aai/queries/GremlinServerSingleton.java index 725ca80b..3c1b36c2 100644 --- a/aai-queries/src/main/java/org/onap/aai/queries/GremlinServerSingleton.java +++ b/aai-queries/src/main/java/org/onap/aai/queries/GremlinServerSingleton.java @@ -23,9 +23,8 @@ package org.onap.aai.queries; import java.io.IOException; import java.nio.file.Files; import java.nio.file.Path; -import java.nio.file.Paths; import java.util.Timer; -import javax.annotation.PostConstruct; +import jakarta.annotation.PostConstruct; import org.onap.aai.logging.LogFormatTools; import org.onap.aai.util.AAIConstants; @@ -60,7 +59,7 @@ public class GremlinServerSingleton { try { String filepath = storedQueriesLocation + AAIConstants.AAI_FILESEP + "stored-queries.json"; - Path path = Paths.get(filepath); + Path path = Path.of(filepath); String customQueryConfigJson = new String(Files.readAllBytes(path)); queryConfig = new GetCustomQueryConfig(customQueryConfigJson); diff --git a/aai-queries/src/test/java/org/onap/aai/queries/AAISetup.java b/aai-queries/src/test/java/org/onap/aai/queries/AAISetup.java index f0d81a02..daf380e9 100644 --- a/aai-queries/src/test/java/org/onap/aai/queries/AAISetup.java +++ b/aai-queries/src/test/java/org/onap/aai/queries/AAISetup.java @@ -96,7 +96,7 @@ public abstract class AAISetup { InputStream inputStream = getClass().getClassLoader().getResourceAsStream(filename); - String message = String.format("Unable to find the %s in src/test/resources", filename); + String message = "Unable to find the %s in src/test/resources".formatted(filename); assertNotNull(inputStream, message); String resource = IOUtils.toString(inputStream, Charset.defaultCharset()); diff --git a/aai-queries/src/test/java/org/onap/aai/queries/GetCustomQueryConfigTest.java b/aai-queries/src/test/java/org/onap/aai/queries/GetCustomQueryConfigTest.java index 77e8db1f..148eb436 100644 --- a/aai-queries/src/test/java/org/onap/aai/queries/GetCustomQueryConfigTest.java +++ b/aai-queries/src/test/java/org/onap/aai/queries/GetCustomQueryConfigTest.java @@ -43,10 +43,30 @@ public class GetCustomQueryConfigTest { System.setProperty("AJSC_HOME", "."); System.setProperty("BUNDLECONFIG_DIR", "src/main/resources"); - configJson = "{\n\t\"stored-queries\": [{\n" - + "\t\t\"queryName1\": {\n\t\t\t\"query\": {\n\t\t\t\t\"required-properties\": [\"prop1\", \"prop2\"],\n\t\t\t\t\"optional-properties\": [\"prop3\", \"prop4\"]\n\t\t\t},\n\t\t\t\"stored-query\": \"out('blah').has('something','foo')\"\n\t\t}\n\t}, {\n" - + "\t\t\"queryName2\": {\n\t\t\t\"query\": {\n\t\t\t\t\"optional-properties\": [\"prop5\"]\n\t\t\t},\n\t\t\t\"stored-query\": \"out('bar').has('stuff','baz')\"\n\t\t}\n\t}, {\n" - + "\t\t\"queryName3\": {\n\t\t\t\"stored-query\": \"out('bar1').has('stuff','baz1')\"\n\t\t}\n\t}]\n}"; + configJson = """ + { + "stored-queries": [{ + "queryName1": { + "query": { + "required-properties": ["prop1", "prop2"], + "optional-properties": ["prop3", "prop4"] + }, + "stored-query": "out('blah').has('something','foo')" + } + }, { + "queryName2": { + "query": { + "optional-properties": ["prop5"] + }, + "stored-query": "out('bar').has('stuff','baz')" + } + }, { + "queryName3": { + "stored-query": "out('bar1').has('stuff','baz1')" + } + }] + }\ + """; getCustomQueryConfig = new GetCustomQueryConfig(configJson); @@ -109,17 +129,19 @@ public class GetCustomQueryConfigTest { @Test public void testQueryWithNullProperties() { - String queryWithNullPropsJson = "{\n" - + "\"stored-queries\": [{\n" - + "\t\"queryName1\": {\n" - + "\t\t\"query\": {\n" - + "\t\t\t\"required-properties\": null,\n" - + "\t\t\t\"optional-properties\": null\n" - + "\t\t},\n" - + "\t\t\"stored-query\": \"out('blah').has('something','foo')\"\n" - + "\t}\n" - + "}]\n" - + "}"; + String queryWithNullPropsJson = """ + { + "stored-queries": [{ + "queryName1": { + "query": { + "required-properties": null, + "optional-properties": null + }, + "stored-query": "out('blah').has('something','foo')" + } + }] + }\ + """; GetCustomQueryConfig getCustomQueryConfig = new GetCustomQueryConfig(queryWithNullPropsJson); CustomQueryConfig cqc = getCustomQueryConfig.getStoredQuery("queryName1"); @@ -131,16 +153,18 @@ public class GetCustomQueryConfigTest { @Test public void testQueryWithMissingProperties() { - String queryWithMissingPropsJson = "{\n" - + "\"stored-queries\": [{\n" - + "\t\"queryName1\": {\n" - + "\t\t\"query\": {\n" - + "\t\t\t\"required-properties\": []\n" - + "\t\t},\n" - + "\t\t\"stored-query\": \"out('blah').has('something','foo')\"\n" - + "\t}\n" - + "}]\n" - + "}"; + String queryWithMissingPropsJson = """ + { + "stored-queries": [{ + "queryName1": { + "query": { + "required-properties": [] + }, + "stored-query": "out('blah').has('something','foo')" + } + }] + }\ + """; GetCustomQueryConfig getCustomQueryConfig = new GetCustomQueryConfig(queryWithMissingPropsJson); CustomQueryConfig cqc = getCustomQueryConfig.getStoredQuery("queryName1"); @@ -152,17 +176,19 @@ public class GetCustomQueryConfigTest { @Test public void testQueryWithNullRequiredProperties() { - String queryWithNullPropsJson = "{\n" - + "\"stored-queries\": [{\n" - + "\t\"queryName1\": {\n" - + "\t\t\"query\": {\n" - + "\t\t\t\"required-properties\": null,\n" // Null for required properties - + "\t\t\t\"optional-properties\": [\"prop3\"]\n" - + "\t\t},\n" - + "\t\t\"stored-query\": \"out('blah').has('something','foo')\"\n" - + "\t}\n" - + "}]\n" - + "}"; + String queryWithNullPropsJson = """ + { + "stored-queries": [{ + "queryName1": { + "query": { + "required-properties": null, + "optional-properties": ["prop3"] + }, + "stored-query": "out('blah').has('something','foo')" + } + }] + }\ + """; GetCustomQueryConfig getCustomQueryConfig = new GetCustomQueryConfig(queryWithNullPropsJson); CustomQueryConfig cqc = getCustomQueryConfig.getStoredQuery("queryName1"); @@ -174,17 +200,19 @@ public class GetCustomQueryConfigTest { @Test public void testQueryWithNullOptionalProperties() { - String queryWithNullPropsJson = "{\n" - + "\"stored-queries\": [{\n" - + "\t\"queryName1\": {\n" - + "\t\t\"query\": {\n" - + "\t\t\t\"required-properties\": [\"prop1\"],\n" - + "\t\t\t\"optional-properties\": null // Null for optional properties\n" - + "\t\t},\n" - + "\t\t\"stored-query\": \"out('blah').has('something','foo')\"\n" - + "\t}\n" - + "}]\n" - + "}"; + String queryWithNullPropsJson = """ + { + "stored-queries": [{ + "queryName1": { + "query": { + "required-properties": ["prop1"], + "optional-properties": null // Null for optional properties + }, + "stored-query": "out('blah').has('something','foo')" + } + }] + }\ + """; GetCustomQueryConfig getCustomQueryConfig = new GetCustomQueryConfig(queryWithNullPropsJson); CustomQueryConfig cqc = getCustomQueryConfig.getStoredQuery("queryName1"); diff --git a/aai-queries/src/test/java/org/onap/aai/queries/GremlinServerSingletonTest.java b/aai-queries/src/test/java/org/onap/aai/queries/GremlinServerSingletonTest.java index 97f65d2d..64651220 100644 --- a/aai-queries/src/test/java/org/onap/aai/queries/GremlinServerSingletonTest.java +++ b/aai-queries/src/test/java/org/onap/aai/queries/GremlinServerSingletonTest.java @@ -22,7 +22,6 @@ package org.onap.aai.queries; import org.junit.jupiter.api.AfterEach; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; -import org.mockito.Mockito; import java.io.FileWriter; import java.io.IOException; diff --git a/aai-schema-gen/pom.xml b/aai-schema-gen/pom.xml index d4c67368..0fa3bbd4 100644 --- a/aai-schema-gen/pom.xml +++ b/aai-schema-gen/pom.xml @@ -27,7 +27,7 @@ org.onap.aai.schema-service schema-service - 1.13.0-SNAPSHOT + 1.13.1-SNAPSHOT aai-schema-gen aai-schema-gen @@ -48,7 +48,8 @@ v12 v12 v30 - v10,v11,v12,v13,v14,v15,v16,v17,v18,v19,v20,v21,v22,v23,v24,v25,v26,v27,v28,v29,v30 + + v10,v11,v12,v13,v14,v15,v16,v17,v18,v19,v20,v21,v22,v23,v24,v25,v26,v27,v28,v29,v30 @@ -68,7 +69,8 @@ v12 v12 v30 - v10,v11,v12,v13,v14,v15,v16,v17,v18,v19,v20,v21,v22,v23,v24,v25,v26,v27,v28,v29,v30 + + v10,v11,v12,v13,v14,v15,v16,v17,v18,v19,v20,v21,v22,v23,v24,v25,v26,v27,v28,v29,v30 v16 @@ -197,7 +199,8 @@ yamlresponses_url - https://wiki.web.att.com/pages/viewpage.action?pageId=607391054 + + https://wiki.web.att.com/pages/viewpage.action?pageId=607391054 @@ -371,7 +374,8 @@ java - - + \ No newline at end of file diff --git a/aai-schema-gen/src/main/java/org/onap/aai/schemagen/AutoGenerateHtml.java b/aai-schema-gen/src/main/java/org/onap/aai/schemagen/AutoGenerateHtml.java index 13fd3178..8e7aeb77 100644 --- a/aai-schema-gen/src/main/java/org/onap/aai/schemagen/AutoGenerateHtml.java +++ b/aai-schema-gen/src/main/java/org/onap/aai/schemagen/AutoGenerateHtml.java @@ -38,6 +38,8 @@ import org.slf4j.LoggerFactory; import org.springframework.beans.BeansException; import org.springframework.context.annotation.AnnotationConfigApplicationContext; +import ch.qos.logback.classic.LoggerContext; + public class AutoGenerateHtml { private static Logger logger = LoggerFactory.getLogger(AutoGenerateHtml.class); @@ -81,6 +83,10 @@ public class AutoGenerateHtml { } } catch (BeansException e) { logger.warn("Unable to initialize AnnotationConfigApplicationContext ", e); + } finally { + // This non-daemon delays build process until the JVM exit. Stopping gracefully to speed up build process + LoggerContext context = (LoggerContext) LoggerFactory.getILoggerFactory(); + context.stop(); } System.setProperty(AAI_GENERATE_VERSION, savedProperty); diff --git a/aai-schema-gen/src/main/java/org/onap/aai/schemagen/GenerateXsd.java b/aai-schema-gen/src/main/java/org/onap/aai/schemagen/GenerateXsd.java index b69f036e..bc9e8a24 100644 --- a/aai-schema-gen/src/main/java/org/onap/aai/schemagen/GenerateXsd.java +++ b/aai-schema-gen/src/main/java/org/onap/aai/schemagen/GenerateXsd.java @@ -27,7 +27,6 @@ import java.nio.charset.Charset; import java.nio.charset.StandardCharsets; import java.nio.file.Files; import java.nio.file.Path; -import java.nio.file.Paths; import java.util.ArrayList; import java.util.Collections; import java.util.HashMap; @@ -44,6 +43,7 @@ import org.slf4j.LoggerFactory; import org.springframework.beans.BeansException; import org.springframework.context.annotation.AnnotationConfigApplicationContext; import org.w3c.dom.NodeList; +import ch.qos.logback.classic.LoggerContext; public class GenerateXsd { @@ -287,7 +287,7 @@ public class GenerateXsd { } try { Charset charset = StandardCharsets.UTF_8; - Path path = Paths.get(nodesfileName); + Path path = Path.of(nodesfileName); nodesBW = Files.newBufferedWriter(path, charset); nodesBW.write(nodesContent); } catch (IOException e) { @@ -309,7 +309,7 @@ public class GenerateXsd { BufferedWriter bw = null; try { Charset charset = StandardCharsets.UTF_8; - Path path = Paths.get(outfileName); + Path path = Path.of(outfileName); bw = Files.newBufferedWriter(path, charset); bw.write(fileContent); } catch (IOException e) { @@ -323,6 +323,10 @@ public class GenerateXsd { } } catch (BeansException e) { logger.warn("Unable to initialize AnnotationConfigApplicationContext ", e); + } finally { + // This non-daemon delays build process until the JVM exit. Stopping gracefully to speed up build process + LoggerContext context = (LoggerContext) LoggerFactory.getILoggerFactory(); + context.stop(); } } diff --git a/aai-schema-gen/src/main/java/org/onap/aai/schemagen/genxsd/HTMLfromOXM.java b/aai-schema-gen/src/main/java/org/onap/aai/schemagen/genxsd/HTMLfromOXM.java index 5779e6d6..799807e0 100644 --- a/aai-schema-gen/src/main/java/org/onap/aai/schemagen/genxsd/HTMLfromOXM.java +++ b/aai-schema-gen/src/main/java/org/onap/aai/schemagen/genxsd/HTMLfromOXM.java @@ -84,9 +84,9 @@ public class HTMLfromOXM extends OxmFileProcessor { .append(namespace).append(".aai.inventory/").append(v.toString()) .append("\" xmlns:tns=\"http://").append(namespace).append(".aai.inventory/") .append(v.toString()).append("\" xmlns:xs=\"http://www.w3.org/2001/XMLSchema\"") - .append(LINE_SEPARATOR).append("xmlns:jaxb=\"http://java.sun.com/xml/ns/jaxb\"") - .append(LINE_SEPARATOR).append(" jaxb:version=\"2.1\"").append(LINE_SEPARATOR) - .append(" xmlns:annox=\"http://annox.dev.java.net\"").append(LINE_SEPARATOR) + .append(LINE_SEPARATOR).append("xmlns:jaxb=\"https://jakarta.ee/xml/ns/jaxb\"") + .append(LINE_SEPARATOR).append(" jaxb:version=\"3.0\"").append(LINE_SEPARATOR) + .append(" xmlns:annox=\"urn:jaxb.jvnet.org:annox\"").append(LINE_SEPARATOR) .append(" jaxb:extensionBindingPrefixes=\"annox\">").append(DOUBLE_LINE_SEPARATOR); return sb.toString(); } diff --git a/aai-schema-gen/src/main/java/org/onap/aai/schemagen/genxsd/NodesYAMLfromOXM.java b/aai-schema-gen/src/main/java/org/onap/aai/schemagen/genxsd/NodesYAMLfromOXM.java index f4d15b23..8ace00f8 100644 --- a/aai-schema-gen/src/main/java/org/onap/aai/schemagen/genxsd/NodesYAMLfromOXM.java +++ b/aai-schema-gen/src/main/java/org/onap/aai/schemagen/genxsd/NodesYAMLfromOXM.java @@ -30,7 +30,6 @@ import java.nio.charset.Charset; import java.nio.charset.StandardCharsets; import java.nio.file.Files; import java.nio.file.Path; -import java.nio.file.Paths; import java.util.HashMap; import java.util.LinkedHashSet; import java.util.Map; @@ -685,7 +684,7 @@ public class NodesYAMLfromOXM extends OxmFileProcessor { } catch (IOException e) { logger.error("Exception creating output file " + outfileName, e); } - Path path = Paths.get(outfileName); + Path path = Path.of(outfileName); Charset charset = StandardCharsets.UTF_8; try (BufferedWriter bw = Files.newBufferedWriter(path, charset)) { bw.write(fileContent); diff --git a/aai-schema-gen/src/main/java/org/onap/aai/schemagen/genxsd/YAMLfromOXM.java b/aai-schema-gen/src/main/java/org/onap/aai/schemagen/genxsd/YAMLfromOXM.java index 71baa9cc..bd6e836d 100644 --- a/aai-schema-gen/src/main/java/org/onap/aai/schemagen/genxsd/YAMLfromOXM.java +++ b/aai-schema-gen/src/main/java/org/onap/aai/schemagen/genxsd/YAMLfromOXM.java @@ -30,7 +30,6 @@ import java.nio.charset.Charset; import java.nio.charset.StandardCharsets; import java.nio.file.Files; import java.nio.file.Path; -import java.nio.file.Paths; import java.util.HashMap; import java.util.LinkedHashSet; import java.util.Map; @@ -754,7 +753,7 @@ public class YAMLfromOXM extends OxmFileProcessor { } try { Charset charset = StandardCharsets.UTF_8; - Path path = Paths.get(outfileName); + Path path = Path.of(outfileName); try (BufferedWriter bw = Files.newBufferedWriter(path, charset)) { bw.write(fileContent); } diff --git a/aai-schema-gen/src/main/java/org/onap/aai/schemagen/swagger/GenerateSwagger.java b/aai-schema-gen/src/main/java/org/onap/aai/schemagen/swagger/GenerateSwagger.java index 9b2fa2cc..ab82d903 100644 --- a/aai-schema-gen/src/main/java/org/onap/aai/schemagen/swagger/GenerateSwagger.java +++ b/aai-schema-gen/src/main/java/org/onap/aai/schemagen/swagger/GenerateSwagger.java @@ -172,9 +172,9 @@ public class GenerateSwagger { int startIndex = line.indexOf("https://"); int endIndex = line.lastIndexOf("/"); hyperLink = line.substring(startIndex, endIndex); - return String.format("%s
", hyperLink, line); + return "%s
".formatted(hyperLink, line); } - return String.format("%s
", line); + return "%s
".formatted(line); }) .collect(Collectors.joining(LINE_SEPARATOR)); @@ -488,17 +488,17 @@ public class GenerateSwagger { String headerId = line.toLowerCase().replaceAll("\\s", "-"); if (line.contains("Related Nodes")) { - return String.format("
%s
%s
    ", headerId, line, + return "
    %s
    %s
      ".formatted(headerId, line, LINE_SEPARATOR); } else { - return String.format("
      %s
      ", headerId, line); + return "
      %s
      ".formatted(headerId, line); } } else if (line.startsWith("-")) { line = line.replaceFirst("-", ""); line = line.trim(); - return String.format("
    • %s
    • ", line); + return "
    • %s
    • ".formatted(line); } else { - return String.format("

      %s

      ", line); + return "

      %s

      ".formatted(line); } }).collect(Collectors.joining(LINE_SEPARATOR)); diff --git a/aai-schema-gen/src/test/java/org/onap/aai/schemagen/genxsd/HTMLfromOXMTest.java b/aai-schema-gen/src/test/java/org/onap/aai/schemagen/genxsd/HTMLfromOXMTest.java index 5302b393..96544b84 100644 --- a/aai-schema-gen/src/test/java/org/onap/aai/schemagen/genxsd/HTMLfromOXMTest.java +++ b/aai-schema-gen/src/test/java/org/onap/aai/schemagen/genxsd/HTMLfromOXMTest.java @@ -35,7 +35,6 @@ import java.io.IOException; import java.nio.charset.Charset; import java.nio.file.Files; import java.nio.file.Path; -import java.nio.file.Paths; import org.junit.jupiter.api.BeforeAll; import org.junit.jupiter.api.BeforeEach; @@ -159,7 +158,7 @@ public class HTMLfromOXMTest { XMLfile.createNewFile(); BufferedWriter bw = null; Charset charset = Charset.forName("UTF-8"); - Path path = Paths.get(outfileName); + Path path = Path.of(outfileName); bw = Files.newBufferedWriter(path, charset); bw.write(testXML); bw.close(); @@ -227,11 +226,11 @@ public class HTMLfromOXMTest { + LINE_SEPARATOR); sb.append( "" + OxmFileProcessor.DOUBLE_LINE_SEPARATOR); return sb.toString(); diff --git a/aai-schema-gen/src/test/java/org/onap/aai/schemagen/genxsd/NodesYAMLfromOXMTest.java b/aai-schema-gen/src/test/java/org/onap/aai/schemagen/genxsd/NodesYAMLfromOXMTest.java index da01cf00..c4d676ff 100644 --- a/aai-schema-gen/src/test/java/org/onap/aai/schemagen/genxsd/NodesYAMLfromOXMTest.java +++ b/aai-schema-gen/src/test/java/org/onap/aai/schemagen/genxsd/NodesYAMLfromOXMTest.java @@ -49,7 +49,6 @@ import java.lang.reflect.Method; import java.nio.charset.Charset; import java.nio.file.Files; import java.nio.file.Path; -import java.nio.file.Paths; import java.util.HashMap; import java.util.HashSet; import java.util.Map; @@ -143,7 +142,7 @@ public class NodesYAMLfromOXMTest { XMLfile.createNewFile(); BufferedWriter bw = null; Charset charset = Charset.forName("UTF-8"); - Path path = Paths.get(outfileName); + Path path = Path.of(outfileName); bw = Files.newBufferedWriter(path, charset); bw.write(testXML); bw.close(); @@ -549,15 +548,17 @@ public class NodesYAMLfromOXMTest { String result = (String) getDictionaryMethod.invoke(nodesYamlFromOxm, resource); - String expectedResult = " business:\n" - + " description: |\n" - + " dictionary of business\n" - + " type: object\n" - + " properties:\n" - + " business:\n" - + " type: array\n" - + " items:\n" - + " $ref: \"#/definitions/business-dict\"\n"; + String expectedResult = """ + business: + description: | + dictionary of business + type: object + properties: + business: + type: array + items: + $ref: "#/definitions/business-dict" + """; // Verify that the result matches the expected output assertThat(result, is(expectedResult)); diff --git a/aai-schema-gen/src/test/java/org/onap/aai/schemagen/genxsd/XSDElementTest.java b/aai-schema-gen/src/test/java/org/onap/aai/schemagen/genxsd/XSDElementTest.java index c4710e50..1df61e6e 100644 --- a/aai-schema-gen/src/test/java/org/onap/aai/schemagen/genxsd/XSDElementTest.java +++ b/aai-schema-gen/src/test/java/org/onap/aai/schemagen/genxsd/XSDElementTest.java @@ -1434,11 +1434,13 @@ public class XSDElementTest { XSDElement xsdElement = new XSDElement(element); - String expectedYAML = " - name: global-customer-id\n" - + " in: query\n" - + " description: Customer ID description\n" - + " required: false\n" - + " type: string\n"; + String expectedYAML = """ + - name: global-customer-id + in: query + description: Customer ID description + required: false + type: string + """; String result = xsdElement.getQueryParamYAML(); assertEquals(expectedYAML, result); @@ -1454,10 +1456,12 @@ public class XSDElementTest { XSDElement xsdElement = new XSDElement(element); - String expectedYAML = " - name: global-customer-id\n" - + " in: query\n" - + " required: false\n" - + " type: string\n"; + String expectedYAML = """ + - name: global-customer-id + in: query + required: false + type: string + """; String result = xsdElement.getQueryParamYAML(); assertEquals(expectedYAML, result); @@ -1473,10 +1477,12 @@ public class XSDElementTest { XSDElement xsdElement = new XSDElement(element); - String expectedYAML = " - name: global-customer-id\n" - + " in: query\n" - + " required: false\n" - + " type: string\n"; + String expectedYAML = """ + - name: global-customer-id + in: query + required: false + type: string + """; String result = xsdElement.getQueryParamYAML(); assertEquals(expectedYAML, result); @@ -1492,12 +1498,14 @@ public class XSDElementTest { XSDElement xsdElement = new XSDElement(element); - String expectedYAML = " - name: customer-id\n" - + " in: query\n" - + " description: Customer ID\n" - + " required: false\n" - + " type: integer\n" - + " format: int64\n"; + String expectedYAML = """ + - name: customer-id + in: query + description: Customer ID + required: false + type: integer + format: int64 + """; String result = xsdElement.getQueryParamYAML(); assertEquals(expectedYAML, result); @@ -1513,12 +1521,14 @@ public class XSDElementTest { XSDElement xsdElement = new XSDElement(element); - String expectedYAML = " - name: order-id\n" - + " in: query\n" - + " description: Order ID\n" - + " required: false\n" - + " type: integer\n" - + " format: int32\n"; + String expectedYAML = """ + - name: order-id + in: query + description: Order ID + required: false + type: integer + format: int32 + """; String result = xsdElement.getQueryParamYAML(); assertEquals(expectedYAML, result); @@ -1534,12 +1544,14 @@ public class XSDElementTest { XSDElement xsdElement = new XSDElement(element); - String expectedYAML = " - name: price\n" - + " in: query\n" - + " description: Price of the product\n" - + " required: false\n" - + " type: number\n" - + " format: float\n"; + String expectedYAML = """ + - name: price + in: query + description: Price of the product + required: false + type: number + format: float + """; String result = xsdElement.getQueryParamYAML(); assertEquals(expectedYAML, result); @@ -1555,12 +1567,14 @@ public class XSDElementTest { XSDElement xsdElement = new XSDElement(element); - String expectedYAML = " - name: amount\n" - + " in: query\n" - + " description: Amount in dollars\n" - + " required: false\n" - + " type: number\n" - + " format: double\n"; + String expectedYAML = """ + - name: amount + in: query + description: Amount in dollars + required: false + type: number + format: double + """; String result = xsdElement.getQueryParamYAML(); assertEquals(expectedYAML, result); @@ -1576,11 +1590,13 @@ public class XSDElementTest { XSDElement xsdElement = new XSDElement(element); - String expectedYAML = " - name: active\n" - + " in: query\n" - + " description: Active status of user\n" - + " required: false\n" - + " type: boolean\n"; + String expectedYAML = """ + - name: active + in: query + description: Active status of user + required: false + type: boolean + """; String result = xsdElement.getQueryParamYAML(); assertEquals(expectedYAML, result); @@ -1597,10 +1613,12 @@ public class XSDElementTest { XSDElement xsdElement = new XSDElement(element); - String expectedYAML = " - name: some-id\n" - + " in: query\n" - + " description: Some ID\n" - + " required: false\n"; + String expectedYAML = """ + - name: some-id + in: query + description: Some ID + required: false + """; String result = xsdElement.getQueryParamYAML(); assertEquals(expectedYAML, result); } @@ -1617,11 +1635,13 @@ public class XSDElementTest { String elementDescription = "Inventory"; String result = xsdElement.getPathParamYAML(elementDescription, null); - String expectedYAML = " - name: Inventory\n" - + " in: path\n" - + " description: Inventory\n" - + " required: true\n" - + " type: string\n"; + String expectedYAML = """ + - name: Inventory + in: path + description: Inventory + required: true + type: string + """; assertEquals(expectedYAML, result); } @@ -1638,10 +1658,12 @@ public class XSDElementTest { String elementDescription = ""; String result = xsdElement.getPathParamYAML(elementDescription, null); - String expectedYAML = " - name: Inventory\n" - + " in: path\n" - + " required: true\n" - + " type: string\n"; + String expectedYAML = """ + - name: Inventory + in: path + required: true + type: string + """; assertEquals(expectedYAML, result); } @@ -1659,11 +1681,13 @@ public class XSDElementTest { String overrideName = "CustomInventory"; String result = xsdElement.getPathParamYAML(elementDescription, overrideName); - String expectedYAML = " - name: CustomInventory\n" - + " in: path\n" - + " description: Inventory\n" - + " required: true\n" - + " type: string\n"; + String expectedYAML = """ + - name: CustomInventory + in: path + description: Inventory + required: true + type: string + """; assertEquals(expectedYAML, result); } @@ -1680,12 +1704,14 @@ public class XSDElementTest { String elementDescription = "Customer ID"; String result = xsdElement.getPathParamYAML(elementDescription, null); - String expectedYAML = " - name: customer-id\n" - + " in: path\n" - + " description: Customer ID\n" - + " required: true\n" - + " type: integer\n" - + " format: int64\n"; + String expectedYAML = """ + - name: customer-id + in: path + description: Customer ID + required: true + type: integer + format: int64 + """; assertEquals(expectedYAML, result); } @@ -1702,12 +1728,14 @@ public class XSDElementTest { String elementDescription = "Order ID"; String result = xsdElement.getPathParamYAML(elementDescription, null); - String expectedYAML = " - name: order-id\n" - + " in: path\n" - + " description: Order ID\n" - + " required: true\n" - + " type: integer\n" - + " format: int32\n"; + String expectedYAML = """ + - name: order-id + in: path + description: Order ID + required: true + type: integer + format: int32 + """; assertEquals(expectedYAML, result); } @@ -1724,12 +1752,14 @@ public class XSDElementTest { String elementDescription = "Price of the product"; String result = xsdElement.getPathParamYAML(elementDescription, null); - String expectedYAML = " - name: price\n" - + " in: path\n" - + " description: Price of the product\n" - + " required: true\n" - + " type: number\n" - + " format: float\n"; + String expectedYAML = """ + - name: price + in: path + description: Price of the product + required: true + type: number + format: float + """; assertEquals(expectedYAML, result); } @@ -1746,12 +1776,14 @@ public class XSDElementTest { String elementDescription = "Amount in dollars"; String result = xsdElement.getPathParamYAML(elementDescription, null); - String expectedYAML = " - name: amount\n" - + " in: path\n" - + " description: Amount in dollars\n" - + " required: true\n" - + " type: number\n" - + " format: double\n"; + String expectedYAML = """ + - name: amount + in: path + description: Amount in dollars + required: true + type: number + format: double + """; assertEquals(expectedYAML, result); } @@ -1768,11 +1800,13 @@ public class XSDElementTest { String elementDescription = "Active status of user"; String result = xsdElement.getPathParamYAML(elementDescription, null); - String expectedYAML = " - name: active\n" - + " in: path\n" - + " description: Active status of user\n" - + " required: true\n" - + " type: boolean\n"; + String expectedYAML = """ + - name: active + in: path + description: Active status of user + required: true + type: boolean + """; assertEquals(expectedYAML, result); } @@ -1789,11 +1823,13 @@ public class XSDElementTest { String elementDescription = "Inventory ID"; String result = xsdElement.getPathParamYAML(elementDescription, null); - String expectedYAML = " - name: inventory-id\n" - + " in: path\n" - + " description: Inventory ID\n" - + " required: true\n" - + " type: string\n"; + String expectedYAML = """ + - name: inventory-id + in: path + description: Inventory ID + required: true + type: string + """; assertEquals(expectedYAML, result); } @@ -1811,11 +1847,13 @@ public class XSDElementTest { String overrideName = ""; String result = xsdElement.getPathParamYAML(elementDescription, overrideName); - String expectedYAML = " - name: \n" - + " in: path\n" - + " description: Inventory ID\n" - + " required: true\n" - + " type: string\n"; + String expectedYAML = """ + - name:\s + in: path + description: Inventory ID + required: true + type: string + """; assertEquals(expectedYAML, result); } @@ -1992,8 +2030,10 @@ public class XSDElementTest { String result = xsdelement.getTypePropertyYAML(false); - String expectedYAML = " property-name:\n" - + " type: string\n"; + String expectedYAML = """ + property-name: + type: string + """; assertEquals(expectedYAML, result); } @@ -2012,9 +2052,11 @@ public class XSDElementTest { String result = xsdelement.getTypePropertyYAML(false); - String expectedYAML = " property-name:\n" - + " type: integer\n" - + " format: int64\n"; + String expectedYAML = """ + property-name: + type: integer + format: int64 + """; assertEquals(expectedYAML, result); } @@ -2033,9 +2075,11 @@ public class XSDElementTest { String result = xsdelement.getTypePropertyYAML(false); - String expectedYAML = " property-name:\n" - + " type: integer\n" - + " format: int32\n"; + String expectedYAML = """ + property-name: + type: integer + format: int32 + """; assertEquals(expectedYAML, result); } @@ -2054,9 +2098,11 @@ public class XSDElementTest { String result = xsdelement.getTypePropertyYAML(false); - String expectedYAML = " property-name:\n" - + " type: number\n" - + " format: float\n"; + String expectedYAML = """ + property-name: + type: number + format: float + """; assertEquals(expectedYAML, result); } @@ -2075,9 +2121,11 @@ public class XSDElementTest { String result = xsdelement.getTypePropertyYAML(false); - String expectedYAML = " property-name:\n" - + " type: number\n" - + " format: double\n"; + String expectedYAML = """ + property-name: + type: number + format: double + """; assertEquals(expectedYAML, result); } @@ -2096,8 +2144,10 @@ public class XSDElementTest { String result = xsdelement.getTypePropertyYAML(false); - String expectedYAML = " property-name:\n" - + " type: boolean\n"; + String expectedYAML = """ + property-name: + type: boolean + """; assertEquals(expectedYAML, result); } @@ -2117,11 +2167,13 @@ public class XSDElementTest { // Call the method with isDslStartNode set to true String result = xsdelement.getTypePropertyYAML(true); - String expectedYAML = " property-name:\n" - + " type: string\n" - + " description: |\n" - + " \n" - + " *This property can be used as a filter to find the start node for a dsl query\n"; + String expectedYAML = """ + property-name: + type: string + description: | + \s + *This property can be used as a filter to find the start node for a dsl query + """; assertEquals(expectedYAML, result); } diff --git a/aai-schema-gen/src/test/java/org/onap/aai/schemagen/genxsd/YAMLfromOXMTest.java b/aai-schema-gen/src/test/java/org/onap/aai/schemagen/genxsd/YAMLfromOXMTest.java index eb21fbc8..ab5af418 100644 --- a/aai-schema-gen/src/test/java/org/onap/aai/schemagen/genxsd/YAMLfromOXMTest.java +++ b/aai-schema-gen/src/test/java/org/onap/aai/schemagen/genxsd/YAMLfromOXMTest.java @@ -54,7 +54,6 @@ import java.lang.reflect.Method; import java.nio.charset.Charset; import java.nio.file.Files; import java.nio.file.Path; -import java.nio.file.Paths; import java.util.SortedSet; import java.util.TreeSet; @@ -179,7 +178,7 @@ public class YAMLfromOXMTest { XMLfile.createNewFile(); BufferedWriter bw = null; Charset charset = Charset.forName("UTF-8"); - Path path = Paths.get(outfileName); + Path path = Path.of(outfileName); bw = Files.newBufferedWriter(path, charset); bw.write(testXML); bw.close(); @@ -883,29 +882,46 @@ public class YAMLfromOXMTest { sb.append("{\n" + " \"rules\": [\n"); sb.append(" {\n"); sb.append(" \"from\": \"service-subscription\",\n"); - sb.append(" \"to\": \"customer\",\n" - + " \"label\": \"org.onap.relationships.inventory.BelongsTo\",\n" - + " \"direction\": \"OUT\",\n" + " \"multiplicity\": \"MANY2ONE\",\n" - + " \"contains-other-v\": \"!${direction}\",\n" - + " \"delete-other-v\": \"!${direction}\",\n" - + " \"prevent-delete\": \"NONE\",\n" + " \"default\": \"true\",\n" - + " \"description\":\"\"\n"); + sb.append(""" + "to": "customer", + "label": "org.onap.relationships.inventory.BelongsTo", + "direction": "OUT", + "multiplicity": "MANY2ONE", + "contains-other-v": "!${direction}", + "delete-other-v": "!${direction}", + "prevent-delete": "NONE", + "default": "true", + "description":"" + """); sb.append(" },\n"); - sb.append(" {\n" + " \"from\": \"service-instance\",\n" - + " \"to\": \"service-subscription\",\n" - + " \"label\": \"org.onap.relationships.inventory.BelongsTo\",\n" - + " \"direction\": \"OUT\",\n" + " \"multiplicity\": \"MANY2ONE\",\n" - + " \"contains-other-v\": \"!${direction}\",\n" - + " \"delete-other-v\": \"!${direction}\",\n" - + " \"prevent-delete\": \"NONE\",\n" + " \"default\": \"true\",\n" - + " \"description\":\"\"\n" + " },\n"); - sb.append(" {\n" + " \"from\": \"service-subscription\",\n" - + " \"to\": \"tenant\",\n" - + " \"label\": \"org.onap.relationships.inventory.Uses\",\n" - + " \"direction\": \"OUT\",\n" + " \"multiplicity\": \"MANY2MANY\",\n" - + " \"contains-other-v\": \"NONE\",\n" + " \"delete-other-v\": \"NONE\",\n" - + " \"prevent-delete\": \"NONE\",\n" + " \"default\": \"true\",\n" - + " \"description\":\"\"\n" + " }"); + sb.append(""" + { + "from": "service-instance", + "to": "service-subscription", + "label": "org.onap.relationships.inventory.BelongsTo", + "direction": "OUT", + "multiplicity": "MANY2ONE", + "contains-other-v": "!${direction}", + "delete-other-v": "!${direction}", + "prevent-delete": "NONE", + "default": "true", + "description":"" + }, + """); + sb.append(""" + { + "from": "service-subscription", + "to": "tenant", + "label": "org.onap.relationships.inventory.Uses", + "direction": "OUT", + "multiplicity": "MANY2MANY", + "contains-other-v": "NONE", + "delete-other-v": "NONE", + "prevent-delete": "NONE", + "default": "true", + "description":"" + }\ + """); sb.append(" ]\n" + "}\n"); return sb.toString(); } diff --git a/aai-schema-gen/src/test/java/org/onap/aai/schemagen/swagger/GenerateSwaggerTest.java b/aai-schema-gen/src/test/java/org/onap/aai/schemagen/swagger/GenerateSwaggerTest.java index aef61746..92bcb345 100644 --- a/aai-schema-gen/src/test/java/org/onap/aai/schemagen/swagger/GenerateSwaggerTest.java +++ b/aai-schema-gen/src/test/java/org/onap/aai/schemagen/swagger/GenerateSwaggerTest.java @@ -26,7 +26,6 @@ import org.onap.aai.setup.SchemaVersion; import java.util.*; import static org.junit.jupiter.api.Assertions.*; import static org.mockito.Mockito.mock; -import static org.mockito.Mockito.when; public class GenerateSwaggerTest { diff --git a/aai-schema-service/pom.xml b/aai-schema-service/pom.xml index 498f85c4..add572f1 100644 --- a/aai-schema-service/pom.xml +++ b/aai-schema-service/pom.xml @@ -20,18 +20,19 @@ ============LICENSE_END========================================================= --> - + 4.0.0 org.onap.aai.schema-service schema-service - 1.13.0-SNAPSHOT + 1.13.1-SNAPSHOT org.onap.aai.schema-service aai-schema-service - 1.8 + 17 org.onap.aai.schemaservice.SchemaServiceApp 0.40.2 @@ -42,13 +43,14 @@ localhost:5000 1.0.0 - 1.2.13 + 1.4.14 - ${project.build.directory}/${project.artifactId}-${project.version}-build/ + + ${project.build.directory}/${project.artifactId}-${project.version}-build/ onap @@ -63,9 +65,11 @@ onap N/A - ${project.basedir}/src/main/resources/schema/${schema.source.name}/oxm + + ${project.basedir}/src/main/resources/schema/${schema.source.name}/oxm - ${project.basedir}/src/main/resources/schema/${schema.source.name}/dbedgerules + + ${project.basedir}/src/main/resources/schema/${schema.source.name}/dbedgerules v10 v10 @@ -73,12 +77,13 @@ v12 v12 v30 - v10,v11,v12,v13,v14,v15,v16,v17,v18,v19,v20,v21,v22,v23,v24,v25,v26,v27,v28,v29,v30 + + v10,v11,v12,v13,v14,v15,v16,v17,v18,v19,v20,v21,v22,v23,v24,v25,v26,v27,v28,v29,v30 /aai/schema-service - 2.2.35 + 2.2.35 @@ -110,7 +115,8 @@ 1.23 - ${docker.push.registry}/${aai.docker.namespace}/${project.artifactId}:%l + + ${docker.push.registry}/${aai.docker.namespace}/${project.artifactId}:%l @ @@ -174,7 +180,8 @@ onap v12 - v10,v11,v12,v13,v14,v15,v16,v17,v18,v19,v20,v21,v22,v23,v24,v25,v26,v27,v28,v29,v30 + + v10,v11,v12,v13,v14,v15,v16,v17,v18,v19,v20,v21,v22,v23,v24,v25,v26,v27,v28,v29,v30 @@ -279,13 +286,12 @@ guava - com.fasterxml.jackson.jaxrs - jackson-jaxrs-json-provider + com.fasterxml.jackson.jakarta.rs + jackson-jakarta-rs-json-provider - javax.xml.bind - jaxb-api - 2.3.0 + jakarta.xml.bind + jakarta.xml.bind-api org.eclipse.persistence @@ -300,6 +306,10 @@ org.springframework.boot spring-boot-starter-jetty + + org.eclipse.jetty + jetty-server + org.springframework.boot spring-boot-starter-jersey @@ -308,6 +318,10 @@ org.springframework.boot spring-boot-starter-aop + + org.springframework.boot + spring-boot-starter-actuator + org.onap.aai.aai-common aai-core @@ -327,23 +341,27 @@ - org.springframework.cloud - spring-cloud-starter-sleuth + io.micrometer + micrometer-tracing-bridge-otel - org.springframework.cloud - spring-cloud-sleuth-zipkin + io.opentelemetry + opentelemetry-exporter-otlp io.micrometer micrometer-registry-prometheus - org.projectlombok - lombok - 1.18.34 - provided - + jakarta.ws.rs + jakarta.ws.rs-api + + + org.projectlombok + lombok + 1.18.38 + provided + org.reflections reflections @@ -356,6 +374,13 @@ org.springframework.boot spring-boot-starter-test test + + + + com.vaadin.external.google + android-json + + org.springframework.boot @@ -380,8 +405,12 @@ io.swagger.core.v3 - swagger-jaxrs2 - ${swagger.version} + swagger-jaxrs2-jakarta + ${swagger.version} + + + org.apache.httpcomponents.client5 + httpclient5 @@ -538,7 +567,8 @@ ${project.basedir}/src/main/resources/schema - ${project.basedir}/../aai-queries/src/main/resources/schema + + ${project.basedir}/../aai-queries/src/main/resources/schema **/query/**/*.json @@ -553,7 +583,8 @@ copy-resources - ${project.build.directory}/swm/package/nix/dist_files/opt/app/${project.artifactId}/appconfig/schema/ + + ${project.build.directory}/swm/package/nix/dist_files/opt/app/${project.artifactId}/appconfig/schema/ ${project.basedir}/../aai-schema/src/main/resources/ @@ -572,10 +603,12 @@ copy-resources - ${project.build.directory}/swm/package/nix/dist_files/opt/app/${project.artifactId}/appconfig/schema/ + + ${project.build.directory}/swm/package/nix/dist_files/opt/app/${project.artifactId}/appconfig/schema/ - ${project.basedir}/../aai-queries/src/main/resources/schema + + ${project.basedir}/../aai-queries/src/main/resources/schema **/query/**/*.json @@ -657,8 +690,8 @@ io.swagger.core.v3 - swagger-maven-plugin - ${swagger.version} + swagger-maven-plugin-jakarta + ${swagger.version} generate-openapi @@ -701,4 +734,4 @@ - + \ No newline at end of file diff --git a/aai-schema-service/src/main/docker/aai.sh b/aai-schema-service/src/main/docker/aai.sh index 49c29060..3489d0aa 100644 --- a/aai-schema-service/src/main/docker/aai.sh +++ b/aai-schema-service/src/main/docker/aai.sh @@ -25,7 +25,7 @@ # jre-alpine image has $JAVA_HOME set and added to $PATH # ubuntu image requires to set $JAVA_HOME and add java to $PATH manually if [ -z $JAVA_HOME ] && [ $(grep -i "ID=ubuntu" /etc/os-release | wc -w) -eq 1 ] ; then - export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-`dpkg --print-architecture | awk -F- '{ print $NF }'` + export JAVA_HOME=/usr/lib/jvm/java-17-openjdk-`dpkg --print-architecture | awk -F- '{ print $NF }'` export PATH=$PATH:${JAVA_HOME}/jre/bin:${JAVA_HOME}/bin fi diff --git a/aai-schema-service/src/main/java/org/onap/aai/schemaservice/SchemaServiceApp.java b/aai-schema-service/src/main/java/org/onap/aai/schemaservice/SchemaServiceApp.java index 74f70959..63e9181f 100644 --- a/aai-schema-service/src/main/java/org/onap/aai/schemaservice/SchemaServiceApp.java +++ b/aai-schema-service/src/main/java/org/onap/aai/schemaservice/SchemaServiceApp.java @@ -20,8 +20,8 @@ package org.onap.aai.schemaservice; -import javax.annotation.PostConstruct; -import javax.annotation.PreDestroy; +import jakarta.annotation.PostConstruct; +import jakarta.annotation.PreDestroy; import org.onap.aai.aailog.logs.AaiDebugLog; import org.onap.aai.exceptions.AAIException; diff --git a/aai-schema-service/src/main/java/org/onap/aai/schemaservice/config/ErrorHandler.java b/aai-schema-service/src/main/java/org/onap/aai/schemaservice/config/ErrorHandler.java index f81ca52e..15573e31 100644 --- a/aai-schema-service/src/main/java/org/onap/aai/schemaservice/config/ErrorHandler.java +++ b/aai-schema-service/src/main/java/org/onap/aai/schemaservice/config/ErrorHandler.java @@ -24,11 +24,11 @@ import java.io.IOException; import java.util.ArrayList; import java.util.List; -import javax.servlet.FilterChain; -import javax.servlet.ServletException; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; -import javax.ws.rs.core.MediaType; +import jakarta.servlet.FilterChain; +import jakarta.servlet.ServletException; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletResponse; +import jakarta.ws.rs.core.MediaType; import org.onap.aai.exceptions.AAIException; import org.onap.aai.logging.ErrorLogHelper; @@ -94,7 +94,7 @@ public class ErrorHandler extends OncePerRequestFilter { filterChain.doFilter(httpServletRequest, httpServletResponse); } catch (ServletException ex) { Throwable e = ex.getRootCause(); - if (e instanceof AAIException) { + if (e instanceof AAIException aaiException) { List mediaTypeList = new ArrayList<>(); String acceptHeader = httpServletRequest.getHeader("Accept"); if (acceptHeader == null) { @@ -104,7 +104,6 @@ public class ErrorHandler extends OncePerRequestFilter { } ArrayList templateVars = new ArrayList<>(); - AAIException aaiException = (AAIException) e; String message = ErrorLogHelper.getRESTAPIErrorResponse(mediaTypeList, aaiException, templateVars); ErrorObject object = ErrorLogHelper.getErrorObject(aaiException.getCode()); diff --git a/aai-schema-service/src/main/java/org/onap/aai/schemaservice/edges/EdgeResource.java b/aai-schema-service/src/main/java/org/onap/aai/schemaservice/edges/EdgeResource.java index 79aba4cd..7f9a0a11 100644 --- a/aai-schema-service/src/main/java/org/onap/aai/schemaservice/edges/EdgeResource.java +++ b/aai-schema-service/src/main/java/org/onap/aai/schemaservice/edges/EdgeResource.java @@ -31,14 +31,14 @@ import lombok.RequiredArgsConstructor; import java.util.Optional; -import javax.ws.rs.GET; -import javax.ws.rs.Path; -import javax.ws.rs.Produces; -import javax.ws.rs.QueryParam; -import javax.ws.rs.core.Context; -import javax.ws.rs.core.HttpHeaders; -import javax.ws.rs.core.Response; -import javax.ws.rs.core.UriInfo; +import jakarta.ws.rs.GET; +import jakarta.ws.rs.Path; +import jakarta.ws.rs.Produces; +import jakarta.ws.rs.QueryParam; +import jakarta.ws.rs.core.Context; +import jakarta.ws.rs.core.HttpHeaders; +import jakarta.ws.rs.core.Response; +import jakarta.ws.rs.core.UriInfo; import org.onap.aai.exceptions.AAIException; import org.onap.aai.restcore.HttpMethod; @@ -88,7 +88,7 @@ public class EdgeResource extends RESTAPI { Optional edgeRulesOptional = edgeService.findRules(version); - if (!edgeRulesOptional.isPresent()) { + if (edgeRulesOptional.isEmpty()) { throw new AAIException("AAI_3001"); } diff --git a/aai-schema-service/src/main/java/org/onap/aai/schemaservice/edges/EdgeService.java b/aai-schema-service/src/main/java/org/onap/aai/schemaservice/edges/EdgeService.java index af8d6f0b..75b50ca7 100644 --- a/aai-schema-service/src/main/java/org/onap/aai/schemaservice/edges/EdgeService.java +++ b/aai-schema-service/src/main/java/org/onap/aai/schemaservice/edges/EdgeService.java @@ -30,12 +30,11 @@ import java.io.FileReader; import java.io.IOException; import java.nio.file.Files; import java.nio.file.Path; -import java.nio.file.Paths; import java.util.*; import java.util.stream.Collectors; import java.util.stream.Stream; -import javax.annotation.PostConstruct; +import jakarta.annotation.PostConstruct; import org.onap.aai.schemaservice.nodeschema.SchemaVersion; import org.onap.aai.schemaservice.nodeschema.SchemaVersions; @@ -75,7 +74,7 @@ public class EdgeService { LOGGER.debug("For the version {} looking for edge rules in folder {}", schemaVersion, edgeRuleVersionPath); - try (Stream pathStream = Files.walk(Paths.get(edgeRuleVersionPath))) { + try (Stream pathStream = Files.walk(Path.of(edgeRuleVersionPath))) { List jsonFiles = pathStream.filter((path) -> path.toString().endsWith(".json")) diff --git a/aai-schema-service/src/main/java/org/onap/aai/schemaservice/healthcheck/EchoResource.java b/aai-schema-service/src/main/java/org/onap/aai/schemaservice/healthcheck/EchoResource.java index 9c702e4c..e3d5ac38 100644 --- a/aai-schema-service/src/main/java/org/onap/aai/schemaservice/healthcheck/EchoResource.java +++ b/aai-schema-service/src/main/java/org/onap/aai/schemaservice/healthcheck/EchoResource.java @@ -23,12 +23,12 @@ package org.onap.aai.schemaservice.healthcheck; import java.util.ArrayList; import java.util.HashMap; -import javax.servlet.http.HttpServletRequest; -import javax.ws.rs.GET; -import javax.ws.rs.Path; -import javax.ws.rs.Produces; -import javax.ws.rs.core.*; -import javax.ws.rs.core.Response.Status; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.ws.rs.GET; +import jakarta.ws.rs.Path; +import jakarta.ws.rs.Produces; +import jakarta.ws.rs.core.*; +import jakarta.ws.rs.core.Response.Status; import org.onap.aai.exceptions.AAIException; import org.onap.aai.logging.ErrorLogHelper; diff --git a/aai-schema-service/src/main/java/org/onap/aai/schemaservice/interceptors/post/InvalidResponseStatus.java b/aai-schema-service/src/main/java/org/onap/aai/schemaservice/interceptors/post/InvalidResponseStatus.java index 5a096152..2ff80a3d 100644 --- a/aai-schema-service/src/main/java/org/onap/aai/schemaservice/interceptors/post/InvalidResponseStatus.java +++ b/aai-schema-service/src/main/java/org/onap/aai/schemaservice/interceptors/post/InvalidResponseStatus.java @@ -24,11 +24,11 @@ import java.io.IOException; import java.util.ArrayList; import java.util.List; -import javax.annotation.Priority; -import javax.ws.rs.container.ContainerRequestContext; -import javax.ws.rs.container.ContainerResponseContext; -import javax.ws.rs.container.ContainerResponseFilter; -import javax.ws.rs.core.MediaType; +import jakarta.annotation.Priority; +import jakarta.ws.rs.container.ContainerRequestContext; +import jakarta.ws.rs.container.ContainerResponseContext; +import jakarta.ws.rs.container.ContainerResponseFilter; +import jakarta.ws.rs.core.MediaType; import org.onap.aai.exceptions.AAIException; import org.onap.aai.logging.ErrorLogHelper; diff --git a/aai-schema-service/src/main/java/org/onap/aai/schemaservice/interceptors/post/ResponseHeaderManipulation.java b/aai-schema-service/src/main/java/org/onap/aai/schemaservice/interceptors/post/ResponseHeaderManipulation.java index 170ac402..87069af5 100644 --- a/aai-schema-service/src/main/java/org/onap/aai/schemaservice/interceptors/post/ResponseHeaderManipulation.java +++ b/aai-schema-service/src/main/java/org/onap/aai/schemaservice/interceptors/post/ResponseHeaderManipulation.java @@ -22,11 +22,11 @@ package org.onap.aai.schemaservice.interceptors.post; import java.io.IOException; -import javax.annotation.Priority; -import javax.ws.rs.container.ContainerRequestContext; -import javax.ws.rs.container.ContainerResponseContext; -import javax.ws.rs.container.ContainerResponseFilter; -import javax.ws.rs.core.MediaType; +import jakarta.annotation.Priority; +import jakarta.ws.rs.container.ContainerRequestContext; +import jakarta.ws.rs.container.ContainerResponseContext; +import jakarta.ws.rs.container.ContainerResponseFilter; +import jakarta.ws.rs.core.MediaType; import org.onap.aai.schemaservice.interceptors.AAIContainerFilter; import org.onap.aai.schemaservice.interceptors.AAIHeaderProperties; diff --git a/aai-schema-service/src/main/java/org/onap/aai/schemaservice/interceptors/post/ResponseTransactionLogging.java b/aai-schema-service/src/main/java/org/onap/aai/schemaservice/interceptors/post/ResponseTransactionLogging.java index f89440a8..b65a2e2e 100644 --- a/aai-schema-service/src/main/java/org/onap/aai/schemaservice/interceptors/post/ResponseTransactionLogging.java +++ b/aai-schema-service/src/main/java/org/onap/aai/schemaservice/interceptors/post/ResponseTransactionLogging.java @@ -26,12 +26,12 @@ import java.io.IOException; import java.util.Objects; import java.util.Optional; -import javax.annotation.Priority; -import javax.servlet.http.HttpServletResponse; -import javax.ws.rs.HttpMethod; -import javax.ws.rs.container.ContainerRequestContext; -import javax.ws.rs.container.ContainerResponseContext; -import javax.ws.rs.container.ContainerResponseFilter; +import jakarta.annotation.Priority; +import jakarta.servlet.http.HttpServletResponse; +import jakarta.ws.rs.HttpMethod; +import jakarta.ws.rs.container.ContainerRequestContext; +import jakarta.ws.rs.container.ContainerResponseContext; +import jakarta.ws.rs.container.ContainerResponseFilter; import org.onap.aai.logging.ErrorLogHelper; import org.onap.aai.schemaservice.interceptors.AAIContainerFilter; diff --git a/aai-schema-service/src/main/java/org/onap/aai/schemaservice/interceptors/pre/HeaderValidation.java b/aai-schema-service/src/main/java/org/onap/aai/schemaservice/interceptors/pre/HeaderValidation.java index 3b22ff09..adcedc33 100644 --- a/aai-schema-service/src/main/java/org/onap/aai/schemaservice/interceptors/pre/HeaderValidation.java +++ b/aai-schema-service/src/main/java/org/onap/aai/schemaservice/interceptors/pre/HeaderValidation.java @@ -25,12 +25,12 @@ import java.util.ArrayList; import java.util.List; import java.util.Optional; -import javax.annotation.Priority; -import javax.ws.rs.container.ContainerRequestContext; -import javax.ws.rs.container.ContainerRequestFilter; -import javax.ws.rs.container.PreMatching; -import javax.ws.rs.core.MediaType; -import javax.ws.rs.core.Response; +import jakarta.annotation.Priority; +import jakarta.ws.rs.container.ContainerRequestContext; +import jakarta.ws.rs.container.ContainerRequestFilter; +import jakarta.ws.rs.container.PreMatching; +import jakarta.ws.rs.core.MediaType; +import jakarta.ws.rs.core.Response; import org.onap.aai.exceptions.AAIException; import org.onap.aai.logging.ErrorLogHelper; diff --git a/aai-schema-service/src/main/java/org/onap/aai/schemaservice/interceptors/pre/HttpHeaderInterceptor.java b/aai-schema-service/src/main/java/org/onap/aai/schemaservice/interceptors/pre/HttpHeaderInterceptor.java index 2830456a..bf7248f1 100644 --- a/aai-schema-service/src/main/java/org/onap/aai/schemaservice/interceptors/pre/HttpHeaderInterceptor.java +++ b/aai-schema-service/src/main/java/org/onap/aai/schemaservice/interceptors/pre/HttpHeaderInterceptor.java @@ -22,11 +22,11 @@ package org.onap.aai.schemaservice.interceptors.pre; import java.io.IOException; -import javax.annotation.Priority; -import javax.ws.rs.HttpMethod; -import javax.ws.rs.container.ContainerRequestContext; -import javax.ws.rs.container.ContainerRequestFilter; -import javax.ws.rs.container.PreMatching; +import jakarta.annotation.Priority; +import jakarta.ws.rs.HttpMethod; +import jakarta.ws.rs.container.ContainerRequestContext; +import jakarta.ws.rs.container.ContainerRequestFilter; +import jakarta.ws.rs.container.PreMatching; import org.onap.aai.schemaservice.interceptors.AAIContainerFilter; import org.onap.aai.schemaservice.interceptors.AAIHeaderProperties; diff --git a/aai-schema-service/src/main/java/org/onap/aai/schemaservice/interceptors/pre/OneWaySslAuthorization.java b/aai-schema-service/src/main/java/org/onap/aai/schemaservice/interceptors/pre/OneWaySslAuthorization.java index 32bf3d8c..cef5bab3 100644 --- a/aai-schema-service/src/main/java/org/onap/aai/schemaservice/interceptors/pre/OneWaySslAuthorization.java +++ b/aai-schema-service/src/main/java/org/onap/aai/schemaservice/interceptors/pre/OneWaySslAuthorization.java @@ -25,12 +25,12 @@ import java.util.ArrayList; import java.util.List; import java.util.Optional; -import javax.annotation.Priority; -import javax.ws.rs.container.ContainerRequestContext; -import javax.ws.rs.container.ContainerRequestFilter; -import javax.ws.rs.container.PreMatching; -import javax.ws.rs.core.MediaType; -import javax.ws.rs.core.Response; +import jakarta.annotation.Priority; +import jakarta.ws.rs.container.ContainerRequestContext; +import jakarta.ws.rs.container.ContainerRequestFilter; +import jakarta.ws.rs.container.PreMatching; +import jakarta.ws.rs.core.MediaType; +import jakarta.ws.rs.core.Response; import org.onap.aai.exceptions.AAIException; import org.onap.aai.logging.ErrorLogHelper; diff --git a/aai-schema-service/src/main/java/org/onap/aai/schemaservice/interceptors/pre/RequestHeaderManipulation.java b/aai-schema-service/src/main/java/org/onap/aai/schemaservice/interceptors/pre/RequestHeaderManipulation.java index 996ae684..fea4a9b5 100644 --- a/aai-schema-service/src/main/java/org/onap/aai/schemaservice/interceptors/pre/RequestHeaderManipulation.java +++ b/aai-schema-service/src/main/java/org/onap/aai/schemaservice/interceptors/pre/RequestHeaderManipulation.java @@ -24,11 +24,11 @@ import java.util.Collections; import java.util.regex.Matcher; import java.util.regex.Pattern; -import javax.annotation.Priority; -import javax.ws.rs.container.ContainerRequestContext; -import javax.ws.rs.container.ContainerRequestFilter; -import javax.ws.rs.container.PreMatching; -import javax.ws.rs.core.MultivaluedMap; +import jakarta.annotation.Priority; +import jakarta.ws.rs.container.ContainerRequestContext; +import jakarta.ws.rs.container.ContainerRequestFilter; +import jakarta.ws.rs.container.PreMatching; +import jakarta.ws.rs.core.MultivaluedMap; import org.onap.aai.schemaservice.interceptors.AAIContainerFilter; import org.onap.aai.schemaservice.interceptors.AAIHeaderProperties; diff --git a/aai-schema-service/src/main/java/org/onap/aai/schemaservice/interceptors/pre/RequestTransactionLogging.java b/aai-schema-service/src/main/java/org/onap/aai/schemaservice/interceptors/pre/RequestTransactionLogging.java index 0820a685..9d548054 100644 --- a/aai-schema-service/src/main/java/org/onap/aai/schemaservice/interceptors/pre/RequestTransactionLogging.java +++ b/aai-schema-service/src/main/java/org/onap/aai/schemaservice/interceptors/pre/RequestTransactionLogging.java @@ -28,12 +28,12 @@ import java.io.IOException; import java.io.InputStream; import java.util.UUID; -import javax.annotation.Priority; -import javax.servlet.http.HttpServletRequest; -import javax.ws.rs.container.ContainerRequestContext; -import javax.ws.rs.container.ContainerRequestFilter; -import javax.ws.rs.container.PreMatching; -import javax.ws.rs.core.MediaType; +import jakarta.annotation.Priority; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.ws.rs.container.ContainerRequestContext; +import jakarta.ws.rs.container.ContainerRequestFilter; +import jakarta.ws.rs.container.PreMatching; +import jakarta.ws.rs.core.MediaType; import org.glassfish.jersey.message.internal.ReaderWriter; import org.glassfish.jersey.server.ContainerException; diff --git a/aai-schema-service/src/main/java/org/onap/aai/schemaservice/nodeschema/NodeIngestor.java b/aai-schema-service/src/main/java/org/onap/aai/schemaservice/nodeschema/NodeIngestor.java index 62454796..a542820f 100644 --- a/aai-schema-service/src/main/java/org/onap/aai/schemaservice/nodeschema/NodeIngestor.java +++ b/aai-schema-service/src/main/java/org/onap/aai/schemaservice/nodeschema/NodeIngestor.java @@ -44,7 +44,7 @@ import java.util.regex.Matcher; import java.util.regex.Pattern; import javax.xml.XMLConstants; -import javax.xml.bind.JAXBException; +import jakarta.xml.bind.JAXBException; import javax.xml.parsers.DocumentBuilder; import javax.xml.parsers.DocumentBuilderFactory; import javax.xml.parsers.ParserConfigurationException; diff --git a/aai-schema-service/src/main/java/org/onap/aai/schemaservice/nodeschema/NodeSchemaChecksumResource.java b/aai-schema-service/src/main/java/org/onap/aai/schemaservice/nodeschema/NodeSchemaChecksumResource.java index f644bef9..8424de98 100644 --- a/aai-schema-service/src/main/java/org/onap/aai/schemaservice/nodeschema/NodeSchemaChecksumResource.java +++ b/aai-schema-service/src/main/java/org/onap/aai/schemaservice/nodeschema/NodeSchemaChecksumResource.java @@ -26,13 +26,13 @@ import java.util.stream.Collectors; import java.util.zip.CRC32; import java.util.zip.Checksum; -import javax.ws.rs.GET; -import javax.ws.rs.Path; -import javax.ws.rs.Produces; -import javax.ws.rs.core.Context; -import javax.ws.rs.core.HttpHeaders; -import javax.ws.rs.core.Response; -import javax.ws.rs.core.UriInfo; +import jakarta.ws.rs.GET; +import jakarta.ws.rs.Path; +import jakarta.ws.rs.Produces; +import jakarta.ws.rs.core.Context; +import jakarta.ws.rs.core.HttpHeaders; +import jakarta.ws.rs.core.Response; +import jakarta.ws.rs.core.UriInfo; import org.springframework.web.bind.annotation.RestController; diff --git a/aai-schema-service/src/main/java/org/onap/aai/schemaservice/nodeschema/NodeSchemaResource.java b/aai-schema-service/src/main/java/org/onap/aai/schemaservice/nodeschema/NodeSchemaResource.java index ccb46cd2..bf6a2ffa 100644 --- a/aai-schema-service/src/main/java/org/onap/aai/schemaservice/nodeschema/NodeSchemaResource.java +++ b/aai-schema-service/src/main/java/org/onap/aai/schemaservice/nodeschema/NodeSchemaResource.java @@ -22,14 +22,14 @@ package org.onap.aai.schemaservice.nodeschema; import java.util.Optional; -import javax.ws.rs.GET; -import javax.ws.rs.Path; -import javax.ws.rs.Produces; -import javax.ws.rs.QueryParam; -import javax.ws.rs.core.Context; -import javax.ws.rs.core.HttpHeaders; -import javax.ws.rs.core.Response; -import javax.ws.rs.core.UriInfo; +import jakarta.ws.rs.GET; +import jakarta.ws.rs.Path; +import jakarta.ws.rs.Produces; +import jakarta.ws.rs.QueryParam; +import jakarta.ws.rs.core.Context; +import jakarta.ws.rs.core.HttpHeaders; +import jakarta.ws.rs.core.Response; +import jakarta.ws.rs.core.UriInfo; import org.onap.aai.exceptions.AAIException; import org.onap.aai.restcore.HttpMethod; @@ -85,7 +85,7 @@ public class NodeSchemaResource extends RESTAPI { throw new AAIException("AAI_3018", version); } - if (!optionalSchema.isPresent()) { + if (optionalSchema.isEmpty()) { throw new AAIException("AAI_3001"); } diff --git a/aai-schema-service/src/main/java/org/onap/aai/schemaservice/nodeschema/NodeSchemaService.java b/aai-schema-service/src/main/java/org/onap/aai/schemaservice/nodeschema/NodeSchemaService.java index 10989896..457f0fce 100644 --- a/aai-schema-service/src/main/java/org/onap/aai/schemaservice/nodeschema/NodeSchemaService.java +++ b/aai-schema-service/src/main/java/org/onap/aai/schemaservice/nodeschema/NodeSchemaService.java @@ -27,7 +27,7 @@ import java.util.HashMap; import java.util.Map; import java.util.Optional; -import javax.annotation.PostConstruct; +import jakarta.annotation.PostConstruct; import javax.xml.transform.*; import javax.xml.transform.dom.DOMSource; import javax.xml.transform.stream.StreamResult; diff --git a/aai-schema-service/src/main/java/org/onap/aai/schemaservice/nodeschema/SchemaVersions.java b/aai-schema-service/src/main/java/org/onap/aai/schemaservice/nodeschema/SchemaVersions.java index a8dc5dd5..4bb41b38 100644 --- a/aai-schema-service/src/main/java/org/onap/aai/schemaservice/nodeschema/SchemaVersions.java +++ b/aai-schema-service/src/main/java/org/onap/aai/schemaservice/nodeschema/SchemaVersions.java @@ -23,7 +23,7 @@ package org.onap.aai.schemaservice.nodeschema; import java.util.List; import java.util.stream.Collectors; -import javax.annotation.PostConstruct; +import jakarta.annotation.PostConstruct; import org.onap.aai.schemaservice.nodeschema.validation.AAISchemaValidationException; import org.springframework.beans.factory.annotation.Value; diff --git a/aai-schema-service/src/main/java/org/onap/aai/schemaservice/query/QueryResource.java b/aai-schema-service/src/main/java/org/onap/aai/schemaservice/query/QueryResource.java index 086fae9e..0e73e33e 100644 --- a/aai-schema-service/src/main/java/org/onap/aai/schemaservice/query/QueryResource.java +++ b/aai-schema-service/src/main/java/org/onap/aai/schemaservice/query/QueryResource.java @@ -20,9 +20,9 @@ package org.onap.aai.schemaservice.query; -import javax.ws.rs.GET; -import javax.ws.rs.Path; -import javax.ws.rs.core.Response; +import jakarta.ws.rs.GET; +import jakarta.ws.rs.Path; +import jakarta.ws.rs.core.Response; import org.springframework.web.bind.annotation.RestController; diff --git a/aai-schema-service/src/main/java/org/onap/aai/schemaservice/query/QueryService.java b/aai-schema-service/src/main/java/org/onap/aai/schemaservice/query/QueryService.java index a3c8b5a4..5adc4aa8 100644 --- a/aai-schema-service/src/main/java/org/onap/aai/schemaservice/query/QueryService.java +++ b/aai-schema-service/src/main/java/org/onap/aai/schemaservice/query/QueryService.java @@ -24,10 +24,10 @@ import java.io.File; import java.io.IOException; import java.nio.charset.StandardCharsets; import java.nio.file.Files; -import java.nio.file.Paths; +import java.nio.file.Path; import java.util.stream.Stream; -import javax.annotation.PostConstruct; +import jakarta.annotation.PostConstruct; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -55,7 +55,7 @@ public class QueryService { StringBuilder contentBuilder = new StringBuilder(); - try (Stream stream = Files.lines(Paths.get(fileName), StandardCharsets.UTF_8)) { + try (Stream stream = Files.lines(Path.of(fileName), StandardCharsets.UTF_8)) { stream.forEach(s -> contentBuilder.append(s)); } diff --git a/aai-schema-service/src/main/java/org/onap/aai/schemaservice/service/AuthorizationService.java b/aai-schema-service/src/main/java/org/onap/aai/schemaservice/service/AuthorizationService.java index 808cde87..97fdfe55 100644 --- a/aai-schema-service/src/main/java/org/onap/aai/schemaservice/service/AuthorizationService.java +++ b/aai-schema-service/src/main/java/org/onap/aai/schemaservice/service/AuthorizationService.java @@ -23,13 +23,13 @@ package org.onap.aai.schemaservice.service; import java.io.IOException; import java.io.UnsupportedEncodingException; import java.nio.file.Files; -import java.nio.file.Paths; +import java.nio.file.Path; import java.util.Base64; import java.util.HashMap; import java.util.Map; import java.util.stream.Stream; -import javax.annotation.PostConstruct; +import jakarta.annotation.PostConstruct; import org.eclipse.jetty.util.security.Password; import org.onap.aai.schemaservice.Profiles; @@ -54,7 +54,7 @@ public class AuthorizationService { String basicAuthFile = getBasicAuthFilePath(); - try (Stream stream = Files.lines(Paths.get(basicAuthFile))) { + try (Stream stream = Files.lines(Path.of(basicAuthFile))) { stream.filter(line -> !line.startsWith("#")).forEach(str -> { byte[] bytes = null; diff --git a/aai-schema-service/src/main/java/org/onap/aai/schemaservice/versions/VersionResource.java b/aai-schema-service/src/main/java/org/onap/aai/schemaservice/versions/VersionResource.java index ee676c11..8e21ad6a 100644 --- a/aai-schema-service/src/main/java/org/onap/aai/schemaservice/versions/VersionResource.java +++ b/aai-schema-service/src/main/java/org/onap/aai/schemaservice/versions/VersionResource.java @@ -28,11 +28,11 @@ import io.swagger.v3.oas.annotations.responses.ApiResponse; import io.swagger.v3.oas.annotations.tags.Tag; import lombok.RequiredArgsConstructor; -import javax.ws.rs.GET; -import javax.ws.rs.Path; -import javax.ws.rs.Produces; -import javax.ws.rs.core.MediaType; -import javax.ws.rs.core.Response; +import jakarta.ws.rs.GET; +import jakarta.ws.rs.Path; +import jakarta.ws.rs.Produces; +import jakarta.ws.rs.core.MediaType; +import jakarta.ws.rs.core.Response; import org.springframework.web.bind.annotation.RestController; diff --git a/aai-schema-service/src/main/java/org/onap/aai/schemaservice/web/JerseyConfiguration.java b/aai-schema-service/src/main/java/org/onap/aai/schemaservice/web/JerseyConfiguration.java index c0740f10..29a1425d 100644 --- a/aai-schema-service/src/main/java/org/onap/aai/schemaservice/web/JerseyConfiguration.java +++ b/aai-schema-service/src/main/java/org/onap/aai/schemaservice/web/JerseyConfiguration.java @@ -25,9 +25,9 @@ import java.util.Set; import java.util.logging.Logger; import java.util.stream.Collectors; -import javax.annotation.Priority; -import javax.ws.rs.container.ContainerRequestFilter; -import javax.ws.rs.container.ContainerResponseFilter; +import jakarta.annotation.Priority; +import jakarta.ws.rs.container.ContainerRequestFilter; +import jakarta.ws.rs.container.ContainerResponseFilter; import org.glassfish.jersey.server.ResourceConfig; import org.onap.aai.schemaservice.edges.EdgeResource; diff --git a/aai-schema-service/src/main/resources/application.properties b/aai-schema-service/src/main/resources/application.properties index bcdc8871..7d721d5f 100644 --- a/aai-schema-service/src/main/resources/application.properties +++ b/aai-schema-service/src/main/resources/application.properties @@ -7,12 +7,10 @@ spring.application.name=aai-schema-service spring.jersey.type=filter spring.main.allow-bean-definition-overriding=true -spring.sleuth.enabled=false -spring.zipkin.baseUrl=http://jaeger-collector.istio-system:9411 -spring.sleuth.trace-id128=true -spring.sleuth.sampler.probability=1.0 -spring.sleuth.propagation.type=w3c, b3 -spring.sleuth.supports-join=false +management.tracing.enabled=false +management.otlp.tracing.endpoint=http://jaeger-collector.istio-system:4318/v1/traces +management.tracing.sampling.probability=1.0 +management.tracing.propagation.type=w3c, b3 server.servlet.context-path=${schema.uri.base.path} @@ -26,6 +24,8 @@ spring.autoconfigure.exclude=\ jetty.threadPool.maxThreads=500 #The minimum number of threads always kept alive jetty.threadPool.minThreads=10 +# Logging pattern containing traceId and spanId; no longer provided through Sleuth by default +logging.pattern.level="%5p [${spring.application.name:},%X{traceId:-},%X{spanId:-}]" #The number of milliseconds before an idle thread shutsdown, unless the number of active threads are less or equal to minSpareThreads server.tomcat.max-idle-time=60000 diff --git a/aai-schema-service/src/test/java/org/onap/aai/schemaservice/SchemaServiceTestConfiguration.java b/aai-schema-service/src/test/java/org/onap/aai/schemaservice/SchemaServiceTestConfiguration.java index b562e5db..b56be404 100644 --- a/aai-schema-service/src/test/java/org/onap/aai/schemaservice/SchemaServiceTestConfiguration.java +++ b/aai-schema-service/src/test/java/org/onap/aai/schemaservice/SchemaServiceTestConfiguration.java @@ -23,10 +23,14 @@ package org.onap.aai.schemaservice; import java.io.IOException; import javax.net.ssl.SSLContext; - -import org.apache.http.client.HttpClient; -import org.apache.http.impl.client.HttpClients; -import org.apache.http.ssl.SSLContextBuilder; +import org.apache.hc.client5.http.impl.classic.CloseableHttpClient; +import org.apache.hc.client5.http.impl.classic.HttpClients; +import org.apache.hc.client5.http.impl.io.PoolingHttpClientConnectionManagerBuilder; +import org.apache.hc.client5.http.io.HttpClientConnectionManager; +import org.apache.hc.client5.http.ssl.NoopHostnameVerifier; +import org.apache.hc.client5.http.ssl.SSLConnectionSocketFactory; +import org.apache.hc.client5.http.ssl.SSLConnectionSocketFactoryBuilder; +import org.apache.hc.core5.ssl.SSLContexts; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; @@ -44,8 +48,7 @@ import org.springframework.web.client.RestTemplate; @TestConfiguration public class SchemaServiceTestConfiguration { - private static final Logger logger = - LoggerFactory.getLogger(SchemaServiceTestConfiguration.class); + private static final Logger logger = LoggerFactory.getLogger(SchemaServiceTestConfiguration.class); @Autowired private Environment env; @@ -60,15 +63,25 @@ public class SchemaServiceTestConfiguration { RestTemplate restTemplate = null; if (env.acceptsProfiles(Profiles.of("one-way-ssl", "two-way-ssl"))) { - SSLContext sslContext = SSLContextBuilder.create().build(); + NoopHostnameVerifier noopHostnameVerifier = NoopHostnameVerifier.INSTANCE; + + SSLContext sslContext = SSLContexts.createDefault(); + + SSLConnectionSocketFactory sslSocketFactory = SSLConnectionSocketFactoryBuilder.create() + .setSslContext(sslContext) + .setHostnameVerifier(noopHostnameVerifier) + .build(); + + HttpClientConnectionManager connectionManager = PoolingHttpClientConnectionManagerBuilder.create() + .setSSLSocketFactory(sslSocketFactory) + .build(); - HttpClient client = HttpClients.custom() - .setSSLContext(sslContext) - .setSSLHostnameVerifier((s, sslSession) -> true) - .build(); + CloseableHttpClient client = HttpClients.custom() + .setConnectionManager(connectionManager) + .build(); restTemplate = builder - .requestFactory(() -> new HttpComponentsClientHttpRequestFactory(client)).build(); + .requestFactory(() -> new HttpComponentsClientHttpRequestFactory(client)).build(); } else { restTemplate = builder.build(); } diff --git a/aai-schema-service/src/test/java/org/onap/aai/schemaservice/edges/EdgeResourceTest.java b/aai-schema-service/src/test/java/org/onap/aai/schemaservice/edges/EdgeResourceTest.java index 475fbf15..62a072c4 100644 --- a/aai-schema-service/src/test/java/org/onap/aai/schemaservice/edges/EdgeResourceTest.java +++ b/aai-schema-service/src/test/java/org/onap/aai/schemaservice/edges/EdgeResourceTest.java @@ -29,9 +29,9 @@ import org.onap.aai.exceptions.AAIException; import org.onap.aai.schemaservice.nodeschema.SchemaVersion; import org.onap.aai.schemaservice.nodeschema.SchemaVersions; -import javax.ws.rs.core.HttpHeaders; -import javax.ws.rs.core.Response; -import javax.ws.rs.core.UriInfo; +import jakarta.ws.rs.core.HttpHeaders; +import jakarta.ws.rs.core.Response; +import jakarta.ws.rs.core.UriInfo; import java.util.Arrays; import java.util.List; import java.util.Optional; diff --git a/aai-schema-service/src/test/java/org/onap/aai/schemaservice/healthcheck/EchoResourceTest.java b/aai-schema-service/src/test/java/org/onap/aai/schemaservice/healthcheck/EchoResourceTest.java index 20b6a49e..ca4eefcf 100644 --- a/aai-schema-service/src/test/java/org/onap/aai/schemaservice/healthcheck/EchoResourceTest.java +++ b/aai-schema-service/src/test/java/org/onap/aai/schemaservice/healthcheck/EchoResourceTest.java @@ -25,10 +25,10 @@ import org.mockito.InjectMocks; import org.mockito.Mock; import org.mockito.MockitoAnnotations; import org.onap.aai.exceptions.AAIException; -import javax.servlet.http.HttpServletRequest; -import javax.ws.rs.core.HttpHeaders; -import javax.ws.rs.core.Response; -import javax.ws.rs.core.UriInfo; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.ws.rs.core.HttpHeaders; +import jakarta.ws.rs.core.Response; +import jakarta.ws.rs.core.UriInfo; import java.util.List; import static org.junit.jupiter.api.Assertions.assertEquals; import static org.junit.jupiter.api.Assertions.assertTrue; diff --git a/aai-schema-service/src/test/java/org/onap/aai/schemaservice/interceptors/post/InvalidResponseStatusTest.java b/aai-schema-service/src/test/java/org/onap/aai/schemaservice/interceptors/post/InvalidResponseStatusTest.java index 7810fe82..8b32b29d 100644 --- a/aai-schema-service/src/test/java/org/onap/aai/schemaservice/interceptors/post/InvalidResponseStatusTest.java +++ b/aai-schema-service/src/test/java/org/onap/aai/schemaservice/interceptors/post/InvalidResponseStatusTest.java @@ -25,8 +25,8 @@ import org.junit.jupiter.api.extension.ExtendWith; import org.mockito.InjectMocks; import org.mockito.Mock; import org.mockito.junit.jupiter.MockitoExtension; -import javax.ws.rs.container.ContainerRequestContext; -import javax.ws.rs.container.ContainerResponseContext; +import jakarta.ws.rs.container.ContainerRequestContext; +import jakarta.ws.rs.container.ContainerResponseContext; import java.io.IOException; import static org.junit.jupiter.api.Assertions.assertEquals; diff --git a/aai-schema-service/src/test/java/org/onap/aai/schemaservice/interceptors/post/ResponseHeaderManipulationTest.java b/aai-schema-service/src/test/java/org/onap/aai/schemaservice/interceptors/post/ResponseHeaderManipulationTest.java index 92382549..cf8e6fc1 100644 --- a/aai-schema-service/src/test/java/org/onap/aai/schemaservice/interceptors/post/ResponseHeaderManipulationTest.java +++ b/aai-schema-service/src/test/java/org/onap/aai/schemaservice/interceptors/post/ResponseHeaderManipulationTest.java @@ -25,10 +25,10 @@ import org.junit.jupiter.api.extension.ExtendWith; import org.mockito.InjectMocks; import org.mockito.Mock; import org.mockito.junit.jupiter.MockitoExtension; -import javax.ws.rs.container.ContainerRequestContext; -import javax.ws.rs.container.ContainerResponseContext; -import javax.ws.rs.core.MediaType; -import javax.ws.rs.core.MultivaluedMap; +import jakarta.ws.rs.container.ContainerRequestContext; +import jakarta.ws.rs.container.ContainerResponseContext; +import jakarta.ws.rs.core.MediaType; +import jakarta.ws.rs.core.MultivaluedMap; import java.io.IOException; import static org.junit.jupiter.api.Assertions.assertEquals; import static org.junit.jupiter.api.Assertions.assertNull; diff --git a/aai-schema-service/src/test/java/org/onap/aai/schemaservice/interceptors/pre/HeaderValidationTest.java b/aai-schema-service/src/test/java/org/onap/aai/schemaservice/interceptors/pre/HeaderValidationTest.java index 684fdc13..d1f07763 100644 --- a/aai-schema-service/src/test/java/org/onap/aai/schemaservice/interceptors/pre/HeaderValidationTest.java +++ b/aai-schema-service/src/test/java/org/onap/aai/schemaservice/interceptors/pre/HeaderValidationTest.java @@ -33,10 +33,10 @@ import org.onap.aai.restcore.MediaType; import org.onap.aai.schemaservice.interceptors.AAIHeaderProperties; import org.onap.logging.filter.base.Constants; import org.onap.logging.ref.slf4j.ONAPLogConstants; -import javax.ws.rs.container.ContainerRequestContext; -import javax.ws.rs.core.MultivaluedHashMap; -import javax.ws.rs.core.MultivaluedMap; -import javax.ws.rs.core.Response; +import jakarta.ws.rs.container.ContainerRequestContext; +import jakarta.ws.rs.core.MultivaluedHashMap; +import jakarta.ws.rs.core.MultivaluedMap; +import jakarta.ws.rs.core.Response; import java.io.IOException; import java.lang.reflect.Method; import java.util.ArrayList; diff --git a/aai-schema-service/src/test/java/org/onap/aai/schemaservice/interceptors/pre/HttpHeaderInterceptorTest.java b/aai-schema-service/src/test/java/org/onap/aai/schemaservice/interceptors/pre/HttpHeaderInterceptorTest.java index 45704437..c3fc28a0 100644 --- a/aai-schema-service/src/test/java/org/onap/aai/schemaservice/interceptors/pre/HttpHeaderInterceptorTest.java +++ b/aai-schema-service/src/test/java/org/onap/aai/schemaservice/interceptors/pre/HttpHeaderInterceptorTest.java @@ -24,7 +24,7 @@ import org.junit.jupiter.api.Test; import org.mockito.Mock; import org.mockito.MockitoAnnotations; import org.onap.aai.schemaservice.interceptors.AAIHeaderProperties; -import javax.ws.rs.container.ContainerRequestContext; +import jakarta.ws.rs.container.ContainerRequestContext; import java.io.IOException; import static org.junit.jupiter.api.Assertions.assertEquals; import static org.mockito.Mockito.*; diff --git a/aai-schema-service/src/test/java/org/onap/aai/schemaservice/interceptors/pre/OneWaySslAuthorizationTest.java b/aai-schema-service/src/test/java/org/onap/aai/schemaservice/interceptors/pre/OneWaySslAuthorizationTest.java index 9696e697..615194d3 100644 --- a/aai-schema-service/src/test/java/org/onap/aai/schemaservice/interceptors/pre/OneWaySslAuthorizationTest.java +++ b/aai-schema-service/src/test/java/org/onap/aai/schemaservice/interceptors/pre/OneWaySslAuthorizationTest.java @@ -28,10 +28,10 @@ import org.mockito.junit.jupiter.MockitoExtension; import org.mockito.junit.jupiter.MockitoSettings; import org.mockito.quality.Strictness; import org.onap.aai.schemaservice.service.AuthorizationService; -import javax.ws.rs.container.ContainerRequestContext; -import javax.ws.rs.core.MediaType; -import javax.ws.rs.core.Response; -import javax.ws.rs.core.UriInfo; +import jakarta.ws.rs.container.ContainerRequestContext; +import jakarta.ws.rs.core.MediaType; +import jakarta.ws.rs.core.Response; +import jakarta.ws.rs.core.UriInfo; import java.lang.reflect.Method; import java.net.URI; import java.util.Arrays; diff --git a/aai-schema-service/src/test/java/org/onap/aai/schemaservice/interceptors/pre/RequestTransactionLoggingTest.java b/aai-schema-service/src/test/java/org/onap/aai/schemaservice/interceptors/pre/RequestTransactionLoggingTest.java index 0c701cd6..fa8c0ebf 100644 --- a/aai-schema-service/src/test/java/org/onap/aai/schemaservice/interceptors/pre/RequestTransactionLoggingTest.java +++ b/aai-schema-service/src/test/java/org/onap/aai/schemaservice/interceptors/pre/RequestTransactionLoggingTest.java @@ -26,10 +26,10 @@ import org.mockito.InjectMocks; import org.mockito.Mock; import org.mockito.MockitoAnnotations; import org.onap.aai.schemaservice.interceptors.AAIHeaderProperties; -import javax.ws.rs.container.ContainerRequestContext; -import javax.ws.rs.core.MediaType; -import javax.ws.rs.core.MultivaluedMap; -import javax.ws.rs.core.UriInfo; +import jakarta.ws.rs.container.ContainerRequestContext; +import jakarta.ws.rs.core.MediaType; +import jakarta.ws.rs.core.MultivaluedMap; +import jakarta.ws.rs.core.UriInfo; import java.io.ByteArrayInputStream; import java.io.IOException; import java.io.InputStream; diff --git a/aai-schema-service/src/test/java/org/onap/aai/schemaservice/nodeschema/NodeSchemaResourceTest.java b/aai-schema-service/src/test/java/org/onap/aai/schemaservice/nodeschema/NodeSchemaResourceTest.java index fbce64d1..c55a267b 100644 --- a/aai-schema-service/src/test/java/org/onap/aai/schemaservice/nodeschema/NodeSchemaResourceTest.java +++ b/aai-schema-service/src/test/java/org/onap/aai/schemaservice/nodeschema/NodeSchemaResourceTest.java @@ -25,9 +25,9 @@ import org.mockito.InjectMocks; import org.mockito.Mock; import org.mockito.junit.jupiter.MockitoExtension; -import javax.ws.rs.core.HttpHeaders; -import javax.ws.rs.core.Response; -import javax.ws.rs.core.UriInfo; +import jakarta.ws.rs.core.HttpHeaders; +import jakarta.ws.rs.core.Response; +import jakarta.ws.rs.core.UriInfo; import java.util.List; import java.util.Optional; diff --git a/aai-schema/pom.xml b/aai-schema/pom.xml index 0a2e0413..edbe92b1 100644 --- a/aai-schema/pom.xml +++ b/aai-schema/pom.xml @@ -21,13 +21,13 @@ --> + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" + xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> 4.0.0 org.onap.aai.schema-service schema-service - 1.13.0-SNAPSHOT + 1.13.1-SNAPSHOT aai-schema aai-schema @@ -35,38 +35,23 @@ https://nexus.onap.org src/main/resources/onap/aai_schema - src/main/xjb/bindings-onap.xjb + src/main/xjb/ + 2.8.0 - 0.13.1 + 4.0.0 - javax.xml.bind - jaxb-api - 2.3.0 + jakarta.xml.bind + jakarta.xml.bind-api + ${jaxb-plugin.version} org.onap.aai.schema-service aai-annotations ${project.version} - - org.hamcrest - hamcrest-junit - test - - - junit - junit - - - - - org.jvnet.jaxb2_commons - jaxb2-basics - ${jaxb2-basics.version} - com.googlecode.json-simple json-simple @@ -82,6 +67,11 @@ commons-io ${commons.io.version} + + org.jvnet.jaxb + jaxb-plugins-tools + ${jaxb-plugin.version} + org.junit.jupiter junit-jupiter-api @@ -95,50 +85,69 @@ + + - org.codehaus.mojo - jaxb2-maven-plugin - 2.5.0 + org.jvnet.jaxb + jaxb-maven-plugin + ${jaxb-plugin.version} xjc - xjc + generate - ${project.build.directory}/generated-sources - - ${aai.xsd.source} - - - ${aai.bindings.source} - - - - - edgetagquery\.xsd - - - + ${project.build.directory}/generated-sources + ${aai.xsd.source} + + *.xsd + + ${aai.bindings.source} + + **/*.xjb + + + **/*.xsd + + + edgetagquery.xsd + true - - -Xannotate - -XtoString - + + -Xannotate + -XtoString + + + + org.jvnet.jaxb + jaxb-plugins + ${jaxb-plugin.version} + + + org.jvnet.jaxb + jaxb-plugin-annotate + ${jaxb-plugin.version} + + - org.jvnet.jaxb2_commons - jaxb2-basics - ${jaxb2-basics.version} + org.glassfish.jaxb + jaxb-runtime + ${jaxb-plugin.version} + + + org.jvnet.jaxb + jaxb-plugins-tools + ${jaxb-plugin.version} - org.jvnet.jaxb2_commons - jaxb2-basics-annotate - 1.0.2 + org.jvnet.jaxb + jaxb-plugins-runtime + ${jaxb-plugin.version} org.onap.aai.schema-service @@ -189,4 +198,4 @@ - + \ No newline at end of file diff --git a/aai-schema/src/main/resources/onap/aai_schema/aai_schema_v10.xsd b/aai-schema/src/main/resources/onap/aai_schema/aai_schema_v10.xsd index 1eb1a59b..d30d0916 100644 --- a/aai-schema/src/main/resources/onap/aai_schema/aai_schema_v10.xsd +++ b/aai-schema/src/main/resources/onap/aai_schema/aai_schema_v10.xsd @@ -1,8 +1,8 @@ diff --git a/aai-schema/src/main/resources/onap/aai_schema/aai_schema_v11.xsd b/aai-schema/src/main/resources/onap/aai_schema/aai_schema_v11.xsd index 8b0dca8c..061bb1ce 100644 --- a/aai-schema/src/main/resources/onap/aai_schema/aai_schema_v11.xsd +++ b/aai-schema/src/main/resources/onap/aai_schema/aai_schema_v11.xsd @@ -1,8 +1,8 @@ diff --git a/aai-schema/src/main/resources/onap/aai_schema/aai_schema_v12.xsd b/aai-schema/src/main/resources/onap/aai_schema/aai_schema_v12.xsd index 06bc2ae2..0495d68c 100644 --- a/aai-schema/src/main/resources/onap/aai_schema/aai_schema_v12.xsd +++ b/aai-schema/src/main/resources/onap/aai_schema/aai_schema_v12.xsd @@ -1,8 +1,8 @@ diff --git a/aai-schema/src/main/resources/onap/aai_schema/aai_schema_v13.xsd b/aai-schema/src/main/resources/onap/aai_schema/aai_schema_v13.xsd index 21b90e3f..d5ce7b4b 100644 --- a/aai-schema/src/main/resources/onap/aai_schema/aai_schema_v13.xsd +++ b/aai-schema/src/main/resources/onap/aai_schema/aai_schema_v13.xsd @@ -1,8 +1,8 @@ diff --git a/aai-schema/src/main/resources/onap/aai_schema/aai_schema_v14.xsd b/aai-schema/src/main/resources/onap/aai_schema/aai_schema_v14.xsd index 43f281d2..24357d9c 100644 --- a/aai-schema/src/main/resources/onap/aai_schema/aai_schema_v14.xsd +++ b/aai-schema/src/main/resources/onap/aai_schema/aai_schema_v14.xsd @@ -1,8 +1,8 @@ diff --git a/aai-schema/src/main/resources/onap/aai_schema/aai_schema_v15.xsd b/aai-schema/src/main/resources/onap/aai_schema/aai_schema_v15.xsd index e731fee3..4855ad65 100644 --- a/aai-schema/src/main/resources/onap/aai_schema/aai_schema_v15.xsd +++ b/aai-schema/src/main/resources/onap/aai_schema/aai_schema_v15.xsd @@ -1,8 +1,8 @@ diff --git a/aai-schema/src/main/resources/onap/aai_schema/aai_schema_v16.xsd b/aai-schema/src/main/resources/onap/aai_schema/aai_schema_v16.xsd index 62aa7ed7..a33e28a2 100644 --- a/aai-schema/src/main/resources/onap/aai_schema/aai_schema_v16.xsd +++ b/aai-schema/src/main/resources/onap/aai_schema/aai_schema_v16.xsd @@ -1,8 +1,8 @@ diff --git a/aai-schema/src/main/resources/onap/aai_schema/aai_schema_v17.xsd b/aai-schema/src/main/resources/onap/aai_schema/aai_schema_v17.xsd index f635601a..4fad94db 100644 --- a/aai-schema/src/main/resources/onap/aai_schema/aai_schema_v17.xsd +++ b/aai-schema/src/main/resources/onap/aai_schema/aai_schema_v17.xsd @@ -1,8 +1,8 @@ diff --git a/aai-schema/src/main/resources/onap/aai_schema/aai_schema_v18.xsd b/aai-schema/src/main/resources/onap/aai_schema/aai_schema_v18.xsd index 6f6c1486..73c3ea51 100644 --- a/aai-schema/src/main/resources/onap/aai_schema/aai_schema_v18.xsd +++ b/aai-schema/src/main/resources/onap/aai_schema/aai_schema_v18.xsd @@ -1,8 +1,8 @@ diff --git a/aai-schema/src/main/resources/onap/aai_schema/aai_schema_v19.xsd b/aai-schema/src/main/resources/onap/aai_schema/aai_schema_v19.xsd index b06c0afc..5364280c 100644 --- a/aai-schema/src/main/resources/onap/aai_schema/aai_schema_v19.xsd +++ b/aai-schema/src/main/resources/onap/aai_schema/aai_schema_v19.xsd @@ -1,8 +1,8 @@ diff --git a/aai-schema/src/main/resources/onap/aai_schema/aai_schema_v20.xsd b/aai-schema/src/main/resources/onap/aai_schema/aai_schema_v20.xsd index 7dd1d8f0..d8565088 100644 --- a/aai-schema/src/main/resources/onap/aai_schema/aai_schema_v20.xsd +++ b/aai-schema/src/main/resources/onap/aai_schema/aai_schema_v20.xsd @@ -1,8 +1,8 @@ diff --git a/aai-schema/src/main/resources/onap/aai_schema/aai_schema_v21.xsd b/aai-schema/src/main/resources/onap/aai_schema/aai_schema_v21.xsd index 06a62f1d..a0df2d5f 100644 --- a/aai-schema/src/main/resources/onap/aai_schema/aai_schema_v21.xsd +++ b/aai-schema/src/main/resources/onap/aai_schema/aai_schema_v21.xsd @@ -1,8 +1,8 @@ diff --git a/aai-schema/src/main/resources/onap/aai_schema/aai_schema_v22.xsd b/aai-schema/src/main/resources/onap/aai_schema/aai_schema_v22.xsd index 9a9d3d37..1ca9334e 100644 --- a/aai-schema/src/main/resources/onap/aai_schema/aai_schema_v22.xsd +++ b/aai-schema/src/main/resources/onap/aai_schema/aai_schema_v22.xsd @@ -1,8 +1,8 @@ diff --git a/aai-schema/src/main/resources/onap/aai_schema/aai_schema_v23.xsd b/aai-schema/src/main/resources/onap/aai_schema/aai_schema_v23.xsd index 6671cdee..6914b58c 100644 --- a/aai-schema/src/main/resources/onap/aai_schema/aai_schema_v23.xsd +++ b/aai-schema/src/main/resources/onap/aai_schema/aai_schema_v23.xsd @@ -1,8 +1,8 @@ diff --git a/aai-schema/src/main/resources/onap/aai_schema/aai_schema_v24.xsd b/aai-schema/src/main/resources/onap/aai_schema/aai_schema_v24.xsd index f616f882..5bf0bf02 100644 --- a/aai-schema/src/main/resources/onap/aai_schema/aai_schema_v24.xsd +++ b/aai-schema/src/main/resources/onap/aai_schema/aai_schema_v24.xsd @@ -1,8 +1,8 @@ diff --git a/aai-schema/src/main/resources/onap/aai_schema/aai_schema_v25.xsd b/aai-schema/src/main/resources/onap/aai_schema/aai_schema_v25.xsd index 8b3958af..47468603 100644 --- a/aai-schema/src/main/resources/onap/aai_schema/aai_schema_v25.xsd +++ b/aai-schema/src/main/resources/onap/aai_schema/aai_schema_v25.xsd @@ -1,8 +1,8 @@ diff --git a/aai-schema/src/main/resources/onap/aai_schema/aai_schema_v26.xsd b/aai-schema/src/main/resources/onap/aai_schema/aai_schema_v26.xsd index 56a0ef97..675caac2 100644 --- a/aai-schema/src/main/resources/onap/aai_schema/aai_schema_v26.xsd +++ b/aai-schema/src/main/resources/onap/aai_schema/aai_schema_v26.xsd @@ -1,8 +1,8 @@ diff --git a/aai-schema/src/main/resources/onap/aai_schema/aai_schema_v27.xsd b/aai-schema/src/main/resources/onap/aai_schema/aai_schema_v27.xsd index 689ad51d..23d53f96 100644 --- a/aai-schema/src/main/resources/onap/aai_schema/aai_schema_v27.xsd +++ b/aai-schema/src/main/resources/onap/aai_schema/aai_schema_v27.xsd @@ -1,8 +1,8 @@ diff --git a/aai-schema/src/main/resources/onap/aai_schema/aai_schema_v28.xsd b/aai-schema/src/main/resources/onap/aai_schema/aai_schema_v28.xsd index 58389aca..b910cfef 100644 --- a/aai-schema/src/main/resources/onap/aai_schema/aai_schema_v28.xsd +++ b/aai-schema/src/main/resources/onap/aai_schema/aai_schema_v28.xsd @@ -1,8 +1,8 @@ diff --git a/aai-schema/src/main/resources/onap/aai_schema/aai_schema_v29.xsd b/aai-schema/src/main/resources/onap/aai_schema/aai_schema_v29.xsd index 2932e705..c909f331 100644 --- a/aai-schema/src/main/resources/onap/aai_schema/aai_schema_v29.xsd +++ b/aai-schema/src/main/resources/onap/aai_schema/aai_schema_v29.xsd @@ -1,8 +1,8 @@ diff --git a/aai-schema/src/main/resources/onap/aai_schema/aai_schema_v30.xsd b/aai-schema/src/main/resources/onap/aai_schema/aai_schema_v30.xsd index e1052122..5f51a914 100644 --- a/aai-schema/src/main/resources/onap/aai_schema/aai_schema_v30.xsd +++ b/aai-schema/src/main/resources/onap/aai_schema/aai_schema_v30.xsd @@ -1,8 +1,8 @@ diff --git a/aai-schema/src/main/resources/onap/aai_schema/aai_schema_v9.xsd b/aai-schema/src/main/resources/onap/aai_schema/aai_schema_v9.xsd index 4c7aa6de..da533941 100644 --- a/aai-schema/src/main/resources/onap/aai_schema/aai_schema_v9.xsd +++ b/aai-schema/src/main/resources/onap/aai_schema/aai_schema_v9.xsd @@ -1,8 +1,8 @@ diff --git a/aai-schema/src/main/xjb/bindings-onap.xjb b/aai-schema/src/main/xjb/bindings-onap.xjb index 8d25f99b..8e78d8db 100644 --- a/aai-schema/src/main/xjb/bindings-onap.xjb +++ b/aai-schema/src/main/xjb/bindings-onap.xjb @@ -1,7 +1,7 @@ diff --git a/aai-schema/src/test/java/org/onap/aai/schema/ValidateEdgeRulesTest.java b/aai-schema/src/test/java/org/onap/aai/schema/ValidateEdgeRulesTest.java index c09aae27..9b873d84 100644 --- a/aai-schema/src/test/java/org/onap/aai/schema/ValidateEdgeRulesTest.java +++ b/aai-schema/src/test/java/org/onap/aai/schema/ValidateEdgeRulesTest.java @@ -26,7 +26,6 @@ import java.io.File; import java.io.FileReader; import java.io.IOException; import java.nio.file.Path; -import java.nio.file.Paths; import java.util.*; import java.util.stream.Collectors; @@ -53,7 +52,7 @@ public class ValidateEdgeRulesTest { @Test public void testOnlyOneDefaultPerEdgeRuleBetweenTwoNodetypes() throws IOException, ParseException { - Path currentRelativePath = Paths.get("../aai-schema/src/main/resources/").toAbsolutePath(); + Path currentRelativePath = Path.of("../aai-schema/src/main/resources/").toAbsolutePath(); List subDirs = Arrays.asList(currentRelativePath.toFile().listFiles(File::isDirectory)); List multipleDefaultsPerList = new ArrayList<>(); @@ -147,7 +146,7 @@ public class ValidateEdgeRulesTest { to = temp; } - String edgeInfo = String.format("%s%s%s[%s]%s", from, + String edgeInfo = "%s%s%s[%s]%s".formatted(from, ((direction.equals("OUT")) ? "->" : "<-"), to, label, isDefault); if ("false".equals(isDefault)) { diff --git a/aai-schema/src/test/java/org/onap/aai/schema/ValidateOXMTest.java b/aai-schema/src/test/java/org/onap/aai/schema/ValidateOXMTest.java index 60619f18..f255de0d 100644 --- a/aai-schema/src/test/java/org/onap/aai/schema/ValidateOXMTest.java +++ b/aai-schema/src/test/java/org/onap/aai/schema/ValidateOXMTest.java @@ -25,7 +25,6 @@ import static org.junit.jupiter.api.Assertions.fail; import java.io.*; import java.nio.file.Path; -import java.nio.file.Paths; import java.util.*; import java.util.stream.Collectors; @@ -476,7 +475,7 @@ public class ValidateOXMTest { @Test public void testSchemaValidationAgainstEdgeRules() throws XPathExpressionException, IOException, SAXException, ParserConfigurationException, ParseException { - Path currentRelativePath = Paths.get("../aai-schema/src/main/resources/").toAbsolutePath(); + Path currentRelativePath = Path.of("../aai-schema/src/main/resources/").toAbsolutePath(); List subDirs = Arrays.asList(currentRelativePath.toFile().listFiles(File::isDirectory)); boolean success = true; @@ -777,7 +776,7 @@ public class ValidateOXMTest { } private List getFiles() { - Path currentRelativePath = Paths.get("../aai-schema/src/main/resources/").toAbsolutePath(); + Path currentRelativePath = Path.of("../aai-schema/src/main/resources/").toAbsolutePath(); return FileUtils .listFiles(currentRelativePath.toFile(), new RegexFileFilter(".*\\.xml"), DirectoryFileFilter.DIRECTORY) @@ -788,7 +787,7 @@ public class ValidateOXMTest { private List getOxmSchemaFiles() { - Path currentRelativePath = Paths.get("../aai-schema/src/main/resources/").toAbsolutePath(); + Path currentRelativePath = Path.of("../aai-schema/src/main/resources/").toAbsolutePath(); return FileUtils .listFiles(currentRelativePath.toFile(), new RegexFileFilter(".*\\.xml"), DirectoryFileFilter.DIRECTORY) @@ -801,7 +800,7 @@ public class ValidateOXMTest { private List getOnapOxmSchemaFiles() { - Path currentRelativePath = Paths.get("../aai-schema/src/main/resources/").toAbsolutePath(); + Path currentRelativePath = Path.of("../aai-schema/src/main/resources/").toAbsolutePath(); return FileUtils .listFiles(currentRelativePath.toFile(), new RegexFileFilter(".*\\.xml"), DirectoryFileFilter.DIRECTORY) @@ -812,7 +811,7 @@ public class ValidateOXMTest { } private List getAaiSchemaOxmFiles() { - Path currentRelativePath = Paths.get("../aai-schema/src/main/resources/").toAbsolutePath(); + Path currentRelativePath = Path.of("../aai-schema/src/main/resources/").toAbsolutePath(); return FileUtils .listFiles(currentRelativePath.toFile(), new RegexFileFilter(".*\\.xml"), DirectoryFileFilter.DIRECTORY) @@ -822,7 +821,7 @@ public class ValidateOXMTest { } private List getDbEdgeRulesFiles() { - Path currentRelativePath = Paths.get("../aai-schema/src/main/resources/").toAbsolutePath(); + Path currentRelativePath = Path.of("../aai-schema/src/main/resources/").toAbsolutePath(); return FileUtils .listFiles(currentRelativePath.toFile(), new RegexFileFilter(".*\\.json"), DirectoryFileFilter.DIRECTORY) @@ -839,7 +838,7 @@ public class ValidateOXMTest { private List getLatestDbEdgeRulesFiles(String fileDirectory) { List latest = new ArrayList<>(); String currentRelativePath = - Paths.get("../aai-schema/src/main/resources/" + fileDirectory + "/dbedgerules") + Path.of("../aai-schema/src/main/resources/" + fileDirectory + "/dbedgerules") .toAbsolutePath().toString(); File[] oxms = new File(currentRelativePath).listFiles(File::isDirectory); Arrays.stream(oxms).map(File::getAbsolutePath).max(new Comparator() { @@ -869,7 +868,7 @@ public class ValidateOXMTest { */ private List getLatestFiles() { List latest = new ArrayList<>(); - Path currentRelativePath = Paths.get("../aai-schema/src/main/resources/").toAbsolutePath(); + Path currentRelativePath = Path.of("../aai-schema/src/main/resources/").toAbsolutePath(); List subDirs = Arrays.asList(currentRelativePath.toFile().listFiles(File::isDirectory)); for (File subDir : subDirs) { @@ -904,7 +903,7 @@ public class ValidateOXMTest { private List getLatestFiles(String fileDirectory) { List latest = new ArrayList<>(); String currentRelativePath = - Paths.get("../aai-schema/src/main/resources/" + fileDirectory + "/oxm").toAbsolutePath() + Path.of("../aai-schema/src/main/resources/" + fileDirectory + "/oxm").toAbsolutePath() .toString(); File[] oxms = new File(currentRelativePath).listFiles(File::isDirectory); Arrays.stream(oxms).map(File::getAbsolutePath).max(new Comparator() { diff --git a/pom.xml b/pom.xml index 56ffff3e..242a089c 100644 --- a/pom.xml +++ b/pom.xml @@ -21,16 +21,17 @@ --> + xmlns="http://maven.apache.org/POM/4.0.0" + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> 4.0.0 org.onap.aai.aai-common aai-parent - 1.15.5 + 1.16.1 org.onap.aai.schema-service schema-service - 1.13.0-SNAPSHOT + 1.13.1-SNAPSHOT aai-schema-service pom @@ -46,34 +47,35 @@ Ideally this can be overwritten at runtime per internal environment specific values at runtime --> https://nexus.onap.org - /content/sites/site/org/onap/aai/resources/${project.artifactId}/${project.version} + + /content/sites/site/org/onap/aai/resources/${project.artifactId}/${project.version} /content/repositories/releases/ /content/repositories/snapshots/ ${project.version} false - 1.15.5 - 2021.0.9 + 1.16.1 + org.eclipse.persistence eclipselink - 2.7.15 + 4.0.7 org.eclipse.persistence org.eclipse.persistence.moxy - 2.7.15 + 4.0.7 - + @@ -230,4 +232,4 @@ dav:${nexusproxy}${site.path} - + \ No newline at end of file diff --git a/version.properties b/version.properties index 3dda49fc..ddff0da1 100644 --- a/version.properties +++ b/version.properties @@ -4,7 +4,7 @@ # because they are used in Jenkins, whose plug-in doesn't support major_version=1 minor_version=13 -patch_version=0 +patch_version=1 base_version=${major_version}.${minor_version}.${patch_version} # Release must be completed with GIT information # in Jenkins -- 2.16.6