Repository: cxf
Updated Branches:
  refs/heads/master a7f8a6325 -> 1542c8d62


[CXF-6446] More updates


Project: http://git-wip-us.apache.org/repos/asf/cxf/repo
Commit: http://git-wip-us.apache.org/repos/asf/cxf/commit/1542c8d6
Tree: http://git-wip-us.apache.org/repos/asf/cxf/tree/1542c8d6
Diff: http://git-wip-us.apache.org/repos/asf/cxf/diff/1542c8d6

Branch: refs/heads/master
Commit: 1542c8d62cb69109a4717c81409b6d2fc4f740b8
Parents: a7f8a63
Author: Sergey Beryozkin <sberyoz...@talend.com>
Authored: Fri Jun 12 13:07:41 2015 +0100
Committer: Sergey Beryozkin <sberyoz...@talend.com>
Committed: Fri Jun 12 13:07:41 2015 +0100

----------------------------------------------------------------------
 .../cxf/jaxrs/model/wadl/JavaDocProvider.java   |  15 ++---
 .../jaxrs/model/wadl/JavaDocProviderTest.java   |  47 +++++++++++----
 .../cxf/jaxrs/model/wadl/petstore/PetStore.java |  60 ++++++++++---------
 .../resources/javadocs/pet-store-javadoc16.jar  | Bin 5068 -> 3569 bytes
 .../resources/javadocs/pet-store-javadoc17.jar  | Bin 5024 -> 3601 bytes
 .../resources/javadocs/pet-store-javadoc18.jar  | Bin 4046 -> 3873 bytes
 6 files changed, 75 insertions(+), 47 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cxf/blob/1542c8d6/rt/rs/description/src/main/java/org/apache/cxf/jaxrs/model/wadl/JavaDocProvider.java
----------------------------------------------------------------------
diff --git 
a/rt/rs/description/src/main/java/org/apache/cxf/jaxrs/model/wadl/JavaDocProvider.java
 
b/rt/rs/description/src/main/java/org/apache/cxf/jaxrs/model/wadl/JavaDocProvider.java
index bcfd5be..17162bc 100644
--- 
a/rt/rs/description/src/main/java/org/apache/cxf/jaxrs/model/wadl/JavaDocProvider.java
+++ 
b/rt/rs/description/src/main/java/org/apache/cxf/jaxrs/model/wadl/JavaDocProvider.java
@@ -189,12 +189,13 @@ public class JavaDocProvider implements 
DocumentationProvider {
                 if (endOfOpSigIndex == startOfOpSigIndex && paramLen == 0) {
                     break;
                 } else if (endOfOpSigIndex > startOfOpSigIndex + 1) {
-                    
-                    String[] opBits = 
-                        classDoc.getClassDoc().substring(operMarkerIndex, 
endOfOpSigIndex)
-                            .split(getOperationParamSeparator());
-                    if (opBits.length == paramLen) {
-                        break;
+                    String paramSequence = 
classDoc.getClassDoc().substring(operMarkerIndex, endOfOpSigIndex);
+                    if (paramSequence.startsWith(operMarker)) {
+                        paramSequence = 
paramSequence.substring(operMarker.length());
+                        String[] opBits = 
paramSequence.split(getOperationParamSeparator());
+                        if (opBits.length == paramLen) {
+                            break;
+                        }
                     }
                 }
                 operMarkerIndex = classDoc.getClassDoc().indexOf(operMarker, 
@@ -301,7 +302,7 @@ public class JavaDocProvider implements 
DocumentationProvider {
         return javaDocsBuiltByVersion == JAVA_VERSION_18 ? "-" : "(";
     }
     protected String getOperationMarkerClose() {
-        return javaDocsBuiltByVersion == JAVA_VERSION_18 ? "-" : ")";
+        return javaDocsBuiltByVersion == JAVA_VERSION_18 ? "-\"" : ")";
     }
     protected String getOperationParamSeparator() {
         return javaDocsBuiltByVersion == JAVA_VERSION_18 ? "-" : ",";

http://git-wip-us.apache.org/repos/asf/cxf/blob/1542c8d6/rt/rs/description/src/test/java/org/apache/cxf/jaxrs/model/wadl/JavaDocProviderTest.java
----------------------------------------------------------------------
diff --git 
a/rt/rs/description/src/test/java/org/apache/cxf/jaxrs/model/wadl/JavaDocProviderTest.java
 
b/rt/rs/description/src/test/java/org/apache/cxf/jaxrs/model/wadl/JavaDocProviderTest.java
index 486e7f1..f8f675e 100644
--- 
a/rt/rs/description/src/test/java/org/apache/cxf/jaxrs/model/wadl/JavaDocProviderTest.java
+++ 
b/rt/rs/description/src/test/java/org/apache/cxf/jaxrs/model/wadl/JavaDocProviderTest.java
@@ -18,7 +18,6 @@
  */
 package org.apache.cxf.jaxrs.model.wadl;
 
-import org.apache.cxf.common.util.StringUtils;
 import org.apache.cxf.jaxrs.model.ClassResourceInfo;
 import org.apache.cxf.jaxrs.model.OperationResourceInfo;
 import org.apache.cxf.jaxrs.model.wadl.petstore.PetStore;
@@ -51,32 +50,58 @@ public class JavaDocProviderTest extends Assert {
         String classDoc = p.getClassDoc(cri);
         assertEquals("The Pet Store", classDoc);
         
-        boolean getStatusTested = false;
+        boolean getStatus1Tested = false;
+        boolean getStatus2Tested = false;
+        boolean getStatus3Tested = false;
         boolean noDocsTested = false;
         for (OperationResourceInfo ori : 
cri.getMethodDispatcher().getOperationResourceInfos()) {
-            if ("getStatus".equals(ori.getMethodToInvoke().getName())) {
-                testGetStatusJavaDocs(p, ori);
-                getStatusTested = true;
-            } else {
+            if ("getStatus1Param".equals(ori.getMethodToInvoke().getName())) {
+                testGetStatus1JavaDocs(p, ori);
+                getStatus1Tested = true;
+            } else if 
("getStatus2Params".equals(ori.getMethodToInvoke().getName())) {
+                testGetStatus2JavaDocs(p, ori);
+                getStatus2Tested = true;
+            } else if 
("getStatus3Params".equals(ori.getMethodToInvoke().getName())) {
+                testGetStatus3JavaDocs(p, ori);
+                getStatus3Tested = true;
+            } else if 
("getBaseStatus".equals(ori.getMethodToInvoke().getName())) {
                 testOperWithNoJavaDocs(p, ori);
                 noDocsTested = true;
             }
         }
-        assertTrue(getStatusTested);
+        assertTrue(getStatus1Tested);
+        assertTrue(getStatus2Tested);
+        assertTrue(getStatus3Tested);
         assertTrue(noDocsTested);
         assertTrue(true);
     }
 
     private void testOperWithNoJavaDocs(JavaDocProvider p, 
OperationResourceInfo ori) {
-        assertTrue(StringUtils.isEmpty(p.getMethodDoc(ori)));
-        assertTrue(StringUtils.isEmpty(p.getMethodResponseDoc(ori)));
+        assertEquals(0, ori.getParameters().size());
+        assertEquals("Return Pet Status with no params", p.getMethodDoc(ori));
+        assertEquals("status", p.getMethodResponseDoc(ori));
     }
     
-    private void testGetStatusJavaDocs(JavaDocProvider p, 
OperationResourceInfo ori) {
-        assertEquals("Return Pet Status", p.getMethodDoc(ori));
+    private void testGetStatus1JavaDocs(JavaDocProvider p, 
OperationResourceInfo ori) {
+        assertEquals("Return Pet Status With 1 Param", p.getMethodDoc(ori));
+        assertEquals(1, ori.getParameters().size());
+        assertEquals("status", p.getMethodResponseDoc(ori));
+        assertEquals("the pet id", p.getMethodParameterDoc(ori, 0));
+    }
+    private void testGetStatus2JavaDocs(JavaDocProvider p, 
OperationResourceInfo ori) {
+        assertEquals("Return Pet Status with 2 params", p.getMethodDoc(ori));
+        assertEquals(2, ori.getParameters().size());
+        assertEquals("status", p.getMethodResponseDoc(ori));
+        assertEquals("the pet id", p.getMethodParameterDoc(ori, 0));
+        assertEquals("the query", p.getMethodParameterDoc(ori, 1));
+    }
+    private void testGetStatus3JavaDocs(JavaDocProvider p, 
OperationResourceInfo ori) {
+        assertEquals("Return Pet Status With 3 Params", p.getMethodDoc(ori));
+        assertEquals(3, ori.getParameters().size());
         assertEquals("status", p.getMethodResponseDoc(ori));
         assertEquals("the pet id", p.getMethodParameterDoc(ori, 0));
         assertEquals("the query", p.getMethodParameterDoc(ori, 1));
+        assertEquals("the query2", p.getMethodParameterDoc(ori, 2));
     }
     
 }

http://git-wip-us.apache.org/repos/asf/cxf/blob/1542c8d6/rt/rs/description/src/test/java/org/apache/cxf/jaxrs/model/wadl/petstore/PetStore.java
----------------------------------------------------------------------
diff --git 
a/rt/rs/description/src/test/java/org/apache/cxf/jaxrs/model/wadl/petstore/PetStore.java
 
b/rt/rs/description/src/test/java/org/apache/cxf/jaxrs/model/wadl/petstore/PetStore.java
index 8804521..356e702 100644
--- 
a/rt/rs/description/src/test/java/org/apache/cxf/jaxrs/model/wadl/petstore/PetStore.java
+++ 
b/rt/rs/description/src/test/java/org/apache/cxf/jaxrs/model/wadl/petstore/PetStore.java
@@ -19,17 +19,12 @@
 
 package org.apache.cxf.jaxrs.model.wadl.petstore;
 
-import javax.ws.rs.Consumes;
 import javax.ws.rs.GET;
-import javax.ws.rs.POST;
 import javax.ws.rs.Path;
 import javax.ws.rs.PathParam;
 import javax.ws.rs.Produces;
 import javax.ws.rs.QueryParam;
-import javax.ws.rs.core.MediaType;
-import javax.ws.rs.core.MultivaluedMap;
 import javax.ws.rs.core.Response;
-import javax.xml.bind.annotation.XmlType;
 
 /**
  * The Pet Store
@@ -44,13 +39,19 @@ public class PetStore {
 
     @GET
     @Produces("text/plain")
+    /**
+     * Return Pet Status with no params
+     * 
+     * @return status 
+     * @throws Exception
+     */
     public Response getBaseStatus() throws Exception {
 
         return Response.ok(CLOSED).build();
     }
     
     /**
-     * Return Pet Status
+     * Return Pet Status with 2 params
      * @param petId the pet id
      * @param query the query
      * @return status 
@@ -59,42 +60,43 @@ public class PetStore {
     @GET
     @Path("/petstore/pets/{petId}/")
     @Produces("text/xml")
-    public Response getStatus(@PathParam("petId") String petId,
+    public Response getStatus2Params(@PathParam("petId") String petId,
                               @QueryParam("query") String query) throws 
Exception {
 
         return Response.ok(CLOSED).build();
     }
     
-    
+    /**
+     * Return Pet Status With 1 Param
+     * @param petId the pet id
+     * @return status 
+     * @throws Exception
+     */
     @GET
-    @Path("/petstore/jaxb/status/")
+    @Path("/petstore/pets/id/{petId}/")
     @Produces("text/xml")
-    public PetStoreStatus getJaxbStatus() {
+    public Response getStatus1Param(@PathParam("petId") String petId) throws 
Exception {
 
-        return new PetStoreStatus();
+        return Response.ok(CLOSED).build();
     }
     
     
+    /**
+     * Return Pet Status With 3 Params
+     * @param petId the pet id
+     * @param query the query
+     * @param query2 the query2
+     * @return status 
+     * @throws Exception
+     */
     @GET
-    @POST
-    @Path("/petstore/pets/")
-    @Consumes(MediaType.APPLICATION_FORM_URLENCODED)
+    @Path("/petstore/pets/{petId}/")
     @Produces("text/xml")
-    public Response updateStatus(MultivaluedMap<String, String> params) throws 
Exception {
-        return Response.ok(params.getFirst("status")).build();
-    }
-    
-    @XmlType(name = "status", namespace = "http://pets";)
-    public static class PetStoreStatus {
-        private String status = PetStore.CLOSED;
-
-        public String getStatus() {
-            return status;
-        }
+    public Response getStatus3Params(@PathParam("petId") String petId,
+                              @QueryParam("query") String query,
+                              @QueryParam("query2") String query2) throws 
Exception {
 
-        public void setStatus(String status) {
-            this.status = status;
-        }
-        
+        return Response.ok(CLOSED).build();
     }
+    
 }

http://git-wip-us.apache.org/repos/asf/cxf/blob/1542c8d6/rt/rs/description/src/test/resources/javadocs/pet-store-javadoc16.jar
----------------------------------------------------------------------
diff --git 
a/rt/rs/description/src/test/resources/javadocs/pet-store-javadoc16.jar 
b/rt/rs/description/src/test/resources/javadocs/pet-store-javadoc16.jar
index aab8cc6..b7f2cb6 100644
Binary files 
a/rt/rs/description/src/test/resources/javadocs/pet-store-javadoc16.jar and 
b/rt/rs/description/src/test/resources/javadocs/pet-store-javadoc16.jar differ

http://git-wip-us.apache.org/repos/asf/cxf/blob/1542c8d6/rt/rs/description/src/test/resources/javadocs/pet-store-javadoc17.jar
----------------------------------------------------------------------
diff --git 
a/rt/rs/description/src/test/resources/javadocs/pet-store-javadoc17.jar 
b/rt/rs/description/src/test/resources/javadocs/pet-store-javadoc17.jar
index 6d7ad99..d49a58d 100644
Binary files 
a/rt/rs/description/src/test/resources/javadocs/pet-store-javadoc17.jar and 
b/rt/rs/description/src/test/resources/javadocs/pet-store-javadoc17.jar differ

http://git-wip-us.apache.org/repos/asf/cxf/blob/1542c8d6/rt/rs/description/src/test/resources/javadocs/pet-store-javadoc18.jar
----------------------------------------------------------------------
diff --git 
a/rt/rs/description/src/test/resources/javadocs/pet-store-javadoc18.jar 
b/rt/rs/description/src/test/resources/javadocs/pet-store-javadoc18.jar
index 8a6bb65..24a8c63 100644
Binary files 
a/rt/rs/description/src/test/resources/javadocs/pet-store-javadoc18.jar and 
b/rt/rs/description/src/test/resources/javadocs/pet-store-javadoc18.jar differ

Reply via email to