Skip to content

Commit 632e0e7

Browse files
authored
Merge pull request #651 from swagger-api/codegen-issue-10187
find referenced schemas for schema type method
2 parents 5ce9a6c + 94df2c2 commit 632e0e7

File tree

1 file changed

+14
-0
lines changed

1 file changed

+14
-0
lines changed

src/main/java/io/swagger/codegen/v3/generators/dotnet/CSharpClientCodegen.java

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@
1010
import io.swagger.codegen.v3.CodegenProperty;
1111
import io.swagger.codegen.v3.CodegenType;
1212
import io.swagger.codegen.v3.SupportingFile;
13+
import io.swagger.codegen.v3.generators.util.OpenAPIUtil;
1314
import io.swagger.v3.oas.models.media.Schema;
1415
import org.slf4j.Logger;
1516
import org.slf4j.LoggerFactory;
@@ -491,6 +492,19 @@ public Map<String, Object> postProcessOperations(Map<String, Object> objs) {
491492
return objs;
492493
}
493494

495+
@Override
496+
public String getSchemaType(Schema schema) {
497+
String schemaType = super.getSchemaType(schema);
498+
499+
if (schema.get$ref() != null) {
500+
final Schema refSchema = OpenAPIUtil.getSchemaFromName(schemaType, this.openAPI);
501+
if (refSchema != null && !isObjectSchema(refSchema) && (refSchema.getEnum() == null || refSchema.getEnum().isEmpty())) {
502+
schemaType = super.getSchemaType(refSchema);
503+
}
504+
}
505+
return schemaType;
506+
}
507+
494508
@Override
495509
public CodegenType getTag() {
496510
return CodegenType.CLIENT;

0 commit comments

Comments
 (0)