You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by da...@apache.org on 2017/10/28 07:55:10 UTC

[camel] branch camel-2.20.x updated: CAMEL-11960: camel-swagger-java - Generated swagger doc should use primitive types

This is an automated email from the ASF dual-hosted git repository.

davsclaus pushed a commit to branch camel-2.20.x
in repository https://gitbox.apache.org/repos/asf/camel.git


The following commit(s) were added to refs/heads/camel-2.20.x by this push:
     new 0e4a0ff  CAMEL-11960: camel-swagger-java - Generated swagger doc should use primitive types
0e4a0ff is described below

commit 0e4a0ff8ff2ab00bad7ffdeaa8d7f3cad13fb56c
Author: Claus Ibsen <cl...@gmail.com>
AuthorDate: Sat Oct 28 09:54:33 2017 +0200

    CAMEL-11960: camel-swagger-java - Generated swagger doc should use primitive types
---
 .../apache/camel/swagger/RestSwaggerReader.java    | 23 +++++++++++++++++++++-
 .../camel/swagger/RestSwaggerReaderTest.java       |  4 +++-
 2 files changed, 25 insertions(+), 2 deletions(-)

diff --git a/components/camel-swagger-java/src/main/java/org/apache/camel/swagger/RestSwaggerReader.java b/components/camel-swagger-java/src/main/java/org/apache/camel/swagger/RestSwaggerReader.java
index 472b8c3..497a6cf 100644
--- a/components/camel-swagger-java/src/main/java/org/apache/camel/swagger/RestSwaggerReader.java
+++ b/components/camel-swagger-java/src/main/java/org/apache/camel/swagger/RestSwaggerReader.java
@@ -503,7 +503,28 @@ public class RestSwaggerReader {
 
         String ref = modelTypeAsRef(typeName, swagger);
 
-        Property prop = ref != null ? new RefProperty(ref) : new StringProperty(typeName);
+        Property prop;
+
+        if (ref != null) {
+            prop = new RefProperty(ref);
+        } else {
+            if ("java.lang.String".equals(typeName)) {
+                prop = new StringProperty();
+            } else if ("int".equals(typeName) || "java.lang.Integer".equals(typeName)) {
+                prop = new IntegerProperty();
+            } else if ("long".equals(typeName) || "java.lang.Long".equals(typeName)) {
+                prop = new LongProperty();
+            } else if ("float".equals(typeName) || "java.lang.Float".equals(typeName)) {
+                prop = new FloatProperty();
+            } else if ("double".equals(typeName) || "java.lang.Double".equals(typeName)) {
+                prop = new DoubleProperty();
+            } else if ("boolean".equals(typeName) || "java.lang.Boolean".equals(typeName)) {
+                prop = new BooleanProperty();
+            } else {
+                prop = new StringProperty(typeName);
+            }
+        }
+
         if (array) {
             return new ArrayProperty(prop);
         } else {
diff --git a/components/camel-swagger-java/src/test/java/org/apache/camel/swagger/RestSwaggerReaderTest.java b/components/camel-swagger-java/src/test/java/org/apache/camel/swagger/RestSwaggerReaderTest.java
index e1aa9e9..995f5e5 100644
--- a/components/camel-swagger-java/src/test/java/org/apache/camel/swagger/RestSwaggerReaderTest.java
+++ b/components/camel-swagger-java/src/test/java/org/apache/camel/swagger/RestSwaggerReaderTest.java
@@ -48,7 +48,7 @@ public class RestSwaggerReaderTest extends CamelTestSupport {
                             .to("log:hi")
                         .get("/bye/{name}").description("Saying bye")
                             .param().name("name").type(RestParamType.path).dataType("string").description("Who is it").endParam()
-                            .responseMessage().code(200).message("A reply message").endResponseMessage()
+                            .responseMessage().code(200).message("A reply number").responseModel(float.class).endResponseMessage()
                             .to("log:bye")
                         .post("/bye").description("To update the greeting message").consumes("application/xml").produces("application/xml")
                             .param().name("greeting").type(RestParamType.body).dataType("string").description("Message to use as greeting").endParam()
@@ -81,6 +81,8 @@ public class RestSwaggerReaderTest extends CamelTestSupport {
         assertTrue(json.contains("\"summary\" : \"To update the greeting message\""));
         assertTrue(json.contains("\"/hello/bye/{name}\""));
         assertTrue(json.contains("\"/hello/hi/{name}\""));
+        assertTrue(json.contains("\"type\" : \"number\""));
+        assertTrue(json.contains("\"format\" : \"float\""));
 
         context.stop();
     }

-- 
To stop receiving notification emails like this one, please contact
['"commits@camel.apache.org" <co...@camel.apache.org>'].