You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cxf.apache.org by re...@apache.org on 2019/01/30 23:33:10 UTC
[cxf] branch master updated: Followup on CXF-7957,
adding the comment to clarify the changes in Swagger
This is an automated email from the ASF dual-hosted git repository.
reta pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/cxf.git
The following commit(s) were added to refs/heads/master by this push:
new 74e7684 Followup on CXF-7957, adding the comment to clarify the changes in Swagger
74e7684 is described below
commit 74e7684b76dfa03310f30a0dc520f61b4a6fa1b3
Author: reta <dr...@gmail.com>
AuthorDate: Wed Jan 30 18:32:52 2019 -0500
Followup on CXF-7957, adding the comment to clarify the changes in Swagger
---
.../cxf/jaxrs/swagger/openapi/SwaggerToOpenApiConversionFilter.java | 6 ++++--
.../java/org/apache/cxf/jaxrs/swagger/parse/SwaggerParseUtils.java | 2 ++
2 files changed, 6 insertions(+), 2 deletions(-)
diff --git a/rt/rs/description-swagger/src/main/java/org/apache/cxf/jaxrs/swagger/openapi/SwaggerToOpenApiConversionFilter.java b/rt/rs/description-swagger/src/main/java/org/apache/cxf/jaxrs/swagger/openapi/SwaggerToOpenApiConversionFilter.java
index 3aa7c97..503b14d 100644
--- a/rt/rs/description-swagger/src/main/java/org/apache/cxf/jaxrs/swagger/openapi/SwaggerToOpenApiConversionFilter.java
+++ b/rt/rs/description-swagger/src/main/java/org/apache/cxf/jaxrs/swagger/openapi/SwaggerToOpenApiConversionFilter.java
@@ -57,8 +57,10 @@ public final class SwaggerToOpenApiConversionFilter implements ContainerRequestF
@Override
public void filter(ContainerRequestContext reqCtx, ContainerResponseContext respCtx) throws IOException {
if (Boolean.TRUE == reqCtx.getProperty(OPEN_API_PROPERTY)) {
- String swaggerJson = respCtx.getEntity() instanceof String ? (String)respCtx.getEntity()
- : Json.pretty(respCtx.getEntity());
+ final Object entity = respCtx.getEntity();
+ // Right before 1.5.18, the entity was always a String but became a model object
+ // (io.swagger.models.Swagger) after. For now, let us serialize it to JSON manually.
+ String swaggerJson = entity instanceof String ? (String)entity : Json.pretty(entity);
String openApiJson = SwaggerToOpenApiConversionUtils.getOpenApiFromSwaggerJson(
createMessageContext(), swaggerJson, openApiConfig);
respCtx.setEntity(openApiJson);
diff --git a/rt/rs/description-swagger/src/main/java/org/apache/cxf/jaxrs/swagger/parse/SwaggerParseUtils.java b/rt/rs/description-swagger/src/main/java/org/apache/cxf/jaxrs/swagger/parse/SwaggerParseUtils.java
index 50284c1..cecec16 100644
--- a/rt/rs/description-swagger/src/main/java/org/apache/cxf/jaxrs/swagger/parse/SwaggerParseUtils.java
+++ b/rt/rs/description-swagger/src/main/java/org/apache/cxf/jaxrs/swagger/parse/SwaggerParseUtils.java
@@ -131,6 +131,8 @@ public final class SwaggerParseUtils {
userOp.setVerb(operEntry.getKey().toUpperCase());
Map<String, Object> oper = CastUtils.cast((Map<?, ?>)operEntry.getValue());
+ // The operation could be null, the particular HTTP verb may not contain any
+ // operations but Swagger may still include it.
if (oper != null) {
userOp.setPath(operPath);