File tree Expand file tree Collapse file tree 1 file changed +22
-1
lines changed
modules/swagger-codegen/src/main/java/io/swagger/codegen/v3 Expand file tree Collapse file tree 1 file changed +22
-1
lines changed Original file line number Diff line number Diff line change 4
4
import io .swagger .v3 .oas .models .media .Discriminator ;
5
5
6
6
import java .util .ArrayList ;
7
- import java .util .HashMap ;
8
7
import java .util .List ;
9
8
import java .util .Map ;
10
9
import java .util .Objects ;
@@ -509,4 +508,26 @@ public boolean getIsComposedModel() {
509
508
public void setIsComposedModel (boolean isComposedModel ) {
510
509
this .isComposedModel = isComposedModel ;
511
510
}
511
+
512
+ /**
513
+ * Get the subtype name from the interface model
514
+ * @return name : the name assigned to the class by the discriminator mapping or classname if mapping not found
515
+ */
516
+ public String getSubtypeName () {
517
+ if (getInterfaceModels ()!=null ) {
518
+ for (CodegenModel interfaceModel : getInterfaceModels ()) {
519
+ if (interfaceModel .getDiscriminator () != null && interfaceModel .getDiscriminator ().getMapping () != null ) {
520
+ String subTypeName = interfaceModel .getDiscriminator ().getMapping ().get (classname );
521
+ if (subTypeName !=null ) {
522
+ return subTypeName ;
523
+ }
524
+ }
525
+ }
526
+ }
527
+ if (getParentModel ()!=null && getParentModel ().getDiscriminator ()!=null && getParentModel ().getDiscriminator ().getMapping ()!=null ) {
528
+ String subTypeName = getParentModel ().getDiscriminator ().getMapping ().get (classname );
529
+ return subTypeName !=null ?subTypeName :name ;
530
+ }
531
+ return name ;
532
+ }
512
533
}
You can’t perform that action at this time.
0 commit comments