replace fromOperation with postProcessOperations

This commit is contained in:
wing328 2018-04-09 01:27:28 +08:00
parent 9d1ae0dd29
commit adbde2fb61

View File

@ -14,6 +14,7 @@ import org.openapitools.codegen.SupportingFile;
import java.io.File; import java.io.File;
import java.util.Arrays; import java.util.Arrays;
import java.util.Iterator; import java.util.Iterator;
import java.util.List;
import java.util.Map; import java.util.Map;
import io.swagger.v3.oas.models.OpenAPI; import io.swagger.v3.oas.models.OpenAPI;
@ -262,8 +263,10 @@ public class RubyClientCodegen extends DefaultCodegen implements CodegenConfig {
} }
@Override @Override
public CodegenOperation fromOperation(String path, String httpMethod, Operation operation, Map<String, Schema> schemas, OpenAPI openAPI) { public Map<String, Object> postProcessOperations(Map<String, Object> objs) {
CodegenOperation op = super.fromOperation(path, httpMethod, operation, schemas, openAPI); Map<String, Object> operations = (Map<String, Object>) objs.get("operations");
List<CodegenOperation> operationList = (List<CodegenOperation>) operations.get("operation");
for (CodegenOperation op : operationList) {
// Set vendor-extension to be used in template: // Set vendor-extension to be used in template:
// x-codegen-hasMoreRequired // x-codegen-hasMoreRequired
// x-codegen-hasMoreOptional // x-codegen-hasMoreOptional
@ -277,6 +280,7 @@ public class RubyClientCodegen extends DefaultCodegen implements CodegenConfig {
lastOptional = p; lastOptional = p;
} }
} }
for (CodegenParameter p : op.allParams) { for (CodegenParameter p : op.allParams) {
if (p == lastRequired) { if (p == lastRequired) {
p.vendorExtensions.put("x-codegen-hasMoreRequired", false); p.vendorExtensions.put("x-codegen-hasMoreRequired", false);
@ -288,7 +292,10 @@ public class RubyClientCodegen extends DefaultCodegen implements CodegenConfig {
} }
} }
op.vendorExtensions.put("x-codegen-hasRequiredParams", lastRequired != null); op.vendorExtensions.put("x-codegen-hasRequiredParams", lastRequired != null);
return op;
}
return objs;
} }
@Override @Override