This is an automated email from the ASF dual-hosted git repository. ffang pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/camel.git
The following commit(s) were added to refs/heads/master by this push: new 40d6f58 [CAMEL-14439]camel-openapi-java: OasInfo may miss parent pointer 40d6f58 is described below commit 40d6f58d03e1e8e54ccfc0356fcdce973c5e18fd Author: Freeman Fang <freeman.f...@gmail.com> AuthorDate: Fri Jan 24 15:58:27 2020 -0500 [CAMEL-14439]camel-openapi-java: OasInfo may miss parent pointer --- .../src/main/java/org/apache/camel/openapi/BeanConfig.java | 12 ++++++++++-- .../java/org/apache/camel/openapi/RestOpenApiReaderTest.java | 6 ++++++ 2 files changed, 16 insertions(+), 2 deletions(-) diff --git a/components/camel-openapi-java/src/main/java/org/apache/camel/openapi/BeanConfig.java b/components/camel-openapi-java/src/main/java/org/apache/camel/openapi/BeanConfig.java index b59b4fe..a439106 100644 --- a/components/camel-openapi-java/src/main/java/org/apache/camel/openapi/BeanConfig.java +++ b/components/camel-openapi-java/src/main/java/org/apache/camel/openapi/BeanConfig.java @@ -122,7 +122,11 @@ public class BeanConfig { } private void configureOas30(Oas30Document openApi) { - openApi.info = info; + if (info != null) { + openApi.info = info; + info._ownerDocument = openApi; + info._parent = openApi; + } Server server = openApi.createServer(); String serverUrl = new StringBuilder().append(this.schemes[0]).append("://").append(this.host).append(this.basePath).toString(); server.url = serverUrl; @@ -138,7 +142,11 @@ public class BeanConfig { openApi.schemes.add(scheme); } } - openApi.info = info; + if (info != null) { + openApi.info = info; + info._ownerDocument = openApi; + info._parent = openApi; + } openApi.host = host; openApi.basePath = basePath; } diff --git a/components/camel-openapi-java/src/test/java/org/apache/camel/openapi/RestOpenApiReaderTest.java b/components/camel-openapi-java/src/test/java/org/apache/camel/openapi/RestOpenApiReaderTest.java index 3152e0b..192ab0f 100644 --- a/components/camel-openapi-java/src/test/java/org/apache/camel/openapi/RestOpenApiReaderTest.java +++ b/components/camel-openapi-java/src/test/java/org/apache/camel/openapi/RestOpenApiReaderTest.java @@ -21,6 +21,8 @@ import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.databind.SerializationFeature; import io.apicurio.datamodels.Library; import io.apicurio.datamodels.openapi.models.OasDocument; +import io.apicurio.datamodels.openapi.v2.models.Oas20Info; +import io.apicurio.datamodels.openapi.v3.models.Oas30Info; import org.apache.camel.BindToRegistry; import org.apache.camel.builder.RouteBuilder; import org.apache.camel.impl.engine.DefaultClassResolver; @@ -55,6 +57,8 @@ public class RestOpenApiReaderTest extends CamelTestSupport { config.setHost("localhost:8080"); config.setSchemes(new String[] {"http"}); config.setBasePath("/api"); + Oas20Info info = new Oas20Info(); + config.setInfo(info); config.setVersion("2.0"); RestOpenApiReader reader = new RestOpenApiReader(); @@ -92,6 +96,8 @@ public class RestOpenApiReaderTest extends CamelTestSupport { config.setHost("localhost:8080"); config.setSchemes(new String[] {"http"}); config.setBasePath("/api"); + Oas30Info info = new Oas30Info(); + config.setInfo(info); RestOpenApiReader reader = new RestOpenApiReader(); OasDocument openApi = reader.read(context.getRestDefinitions(), null, config, context.getName(), new DefaultClassResolver());