You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by ff...@apache.org on 2020/01/24 20:58:42 UTC
[camel] branch master updated: [CAMEL-14439]camel-openapi-java:
OasInfo may miss parent pointer
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 <fr...@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());