You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@servicecomb.apache.org by ni...@apache.org on 2017/12/23 08:26:19 UTC
[incubator-servicecomb-java-chassis] 01/04: JAV-582 load
ResponseTypeProcessor by SPI mechanism
This is an automated email from the ASF dual-hosted git repository.
ningjiang pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-servicecomb-java-chassis.git
commit d53cd8526a07bc0fce74774db137b0d6690e98d1
Author: wujimin <wu...@huawei.com>
AuthorDate: Thu Dec 21 11:16:44 2017 +0800
JAV-582 load ResponseTypeProcessor by SPI mechanism
---
.../swagger/generator/core/AbstractSwaggerGeneratorContext.java | 4 +++-
.../io/servicecomb/swagger/generator/core/ResponseTypeProcessor.java | 2 ++
.../core/processor/response/DefaultResponseTypeProcessor.java | 5 +++++
3 files changed, 10 insertions(+), 1 deletion(-)
diff --git a/swagger/swagger-generator/generator-core/src/main/java/io/servicecomb/swagger/generator/core/AbstractSwaggerGeneratorContext.java b/swagger/swagger-generator/generator-core/src/main/java/io/servicecomb/swagger/generator/core/AbstractSwaggerGeneratorContext.java
index e835bfa..922624c 100644
--- a/swagger/swagger-generator/generator-core/src/main/java/io/servicecomb/swagger/generator/core/AbstractSwaggerGeneratorContext.java
+++ b/swagger/swagger-generator/generator-core/src/main/java/io/servicecomb/swagger/generator/core/AbstractSwaggerGeneratorContext.java
@@ -140,7 +140,9 @@ public abstract class AbstractSwaggerGeneratorContext implements SwaggerGenerato
}
protected void initResponseTypeProcessorMgr() {
-
+ SPIServiceUtils.getAllService(ResponseTypeProcessor.class).forEach(p -> {
+ responseTypeProcessorMgr.register(p.getResponseType(), p);
+ });
}
public void setDefaultParamProcessor(DefaultParameterProcessor defaultParamProcessor) {
diff --git a/swagger/swagger-generator/generator-core/src/main/java/io/servicecomb/swagger/generator/core/ResponseTypeProcessor.java b/swagger/swagger-generator/generator-core/src/main/java/io/servicecomb/swagger/generator/core/ResponseTypeProcessor.java
index 2537da0..bb0369b 100644
--- a/swagger/swagger-generator/generator-core/src/main/java/io/servicecomb/swagger/generator/core/ResponseTypeProcessor.java
+++ b/swagger/swagger-generator/generator-core/src/main/java/io/servicecomb/swagger/generator/core/ResponseTypeProcessor.java
@@ -19,6 +19,8 @@ package io.servicecomb.swagger.generator.core;
import io.swagger.models.properties.Property;
public interface ResponseTypeProcessor {
+ Class<?> getResponseType();
+
// void的场景,不会到processor中来处理
Property process(OperationGenerator operationGenerator);
}
diff --git a/swagger/swagger-generator/generator-core/src/main/java/io/servicecomb/swagger/generator/core/processor/response/DefaultResponseTypeProcessor.java b/swagger/swagger-generator/generator-core/src/main/java/io/servicecomb/swagger/generator/core/processor/response/DefaultResponseTypeProcessor.java
index 6dba022..cac3e0c 100644
--- a/swagger/swagger-generator/generator-core/src/main/java/io/servicecomb/swagger/generator/core/processor/response/DefaultResponseTypeProcessor.java
+++ b/swagger/swagger-generator/generator-core/src/main/java/io/servicecomb/swagger/generator/core/processor/response/DefaultResponseTypeProcessor.java
@@ -25,6 +25,11 @@ import io.swagger.converter.ModelConverters;
import io.swagger.models.properties.Property;
public class DefaultResponseTypeProcessor implements ResponseTypeProcessor {
+ @Override
+ public Class<?> getResponseType() {
+ // not care for this.
+ return null;
+ }
@Override
public Property process(OperationGenerator operationGenerator) {
--
To stop receiving notification emails like this one, please contact
"commits@servicecomb.apache.org" <co...@servicecomb.apache.org>.