You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@servicecomb.apache.org by li...@apache.org on 2022/11/04 06:40:02 UTC

[servicecomb-java-chassis] branch master updated: [SCB-2716]enable swagger override by default and allow microservcie info update (#3450)

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

liubao pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/servicecomb-java-chassis.git


The following commit(s) were added to refs/heads/master by this push:
     new b780639a1 [SCB-2716]enable swagger override by default and allow microservcie info update (#3450)
b780639a1 is described below

commit b780639a167ca09daaae28535c91c3b022f5d27c
Author: Mohsen Dehghankar <45...@users.noreply.github.com>
AuthorDate: Fri Nov 4 10:09:56 2022 +0330

    [SCB-2716]enable swagger override by default and allow microservcie info update (#3450)
---
 .../swagger/generator/core/AbstractOperationGenerator.java         | 7 ++++++-
 .../servicecomb/swagger/generator/core/TestOperationGenerator.java | 4 ++--
 2 files changed, 8 insertions(+), 3 deletions(-)

diff --git a/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/AbstractOperationGenerator.java b/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/AbstractOperationGenerator.java
index 2a1f11887..302482b30 100644
--- a/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/AbstractOperationGenerator.java
+++ b/swagger/swagger-generator/generator-core/src/main/java/org/apache/servicecomb/swagger/generator/core/AbstractOperationGenerator.java
@@ -71,6 +71,8 @@ import java.util.Locale;
 import java.util.Map;
 import java.util.Map.Entry;
 import java.util.Set;
+import java.util.Comparator;
+import java.util.stream.Collectors;
 
 import static org.apache.servicecomb.swagger.generator.SwaggerGeneratorUtils.collectAnnotations;
 import static org.apache.servicecomb.swagger.generator.SwaggerGeneratorUtils.findMethodAnnotationProcessor;
@@ -166,7 +168,10 @@ public abstract class AbstractOperationGenerator implements OperationGenerator {
   }
 
   protected void scanMethodAnnotation() {
-    for (Annotation annotation : method.getAnnotations()) {
+    for (Annotation annotation : Arrays.stream(method.getAnnotations())
+            .sorted(Comparator.comparing(a -> a.annotationType().getName()))
+            .collect(Collectors.toList())
+    ) {
       MethodAnnotationProcessor<Annotation> processor = findMethodAnnotationProcessor(annotation.annotationType());
       if (processor == null) {
         continue;
diff --git a/swagger/swagger-generator/generator-core/src/test/java/org/apache/servicecomb/swagger/generator/core/TestOperationGenerator.java b/swagger/swagger-generator/generator-core/src/test/java/org/apache/servicecomb/swagger/generator/core/TestOperationGenerator.java
index 553a9ffb2..69e16d06b 100644
--- a/swagger/swagger-generator/generator-core/src/test/java/org/apache/servicecomb/swagger/generator/core/TestOperationGenerator.java
+++ b/swagger/swagger-generator/generator-core/src/test/java/org/apache/servicecomb/swagger/generator/core/TestOperationGenerator.java
@@ -98,8 +98,8 @@ public class TestOperationGenerator {
 
     Response response = swaggerOperation.getOperation().getResponses().get("200");
     Assertions.assertEquals("200 is ok............", response.getDescription());
-    Assertions.assertNotNull(response.getHeaders().get("x-user-domain"));
-    Assertions.assertNull(response.getHeaders().get("x-user-name"));
+    Assertions.assertNull(response.getHeaders().get("x-user-domain"));
+    Assertions.assertNotNull(response.getHeaders().get("x-user-name"));
     Assertions.assertNotNull(swaggerOperation.getOperation().getVendorExtensions().get("x-class-name"));
   }