swagger-codegen
swagger-codegen copied to clipboard
Add x-root-ancestor vendor extension boolean property to use inheritance w/o discriminator (see #6127).
PR checklist
[+] Read the contribution guidelines.
[+] Ran the shell script under ./bin/ to update Petstore sample so that CIs can verify the change. (For instance, only need to run ./bin/{LANG}-petstore.sh and ./bin/security/{LANG}-petstore.sh if updating the {LANG} (e.g. php, ruby, python, etc) code generator or {LANG} client's mustache templates). Windows batch files can be found in .\bin\windows\.
[+] Filed the PR against the correct branch: 3.0.0 branch for changes related to OpenAPI spec 3.0. Default: master.
[+] Copied the technical committee to review the pull request if your PR is targeting a particular programming language.
@bbdouglas @JFCote @sreeshas @jfiala @lukoyanov @cbornet @jeff9finger
cc: @wing328
Description of the PR
Add mechanism to support inheritance w/o discriminator. Vendor extension property x-root-ancestor: [true|false] should be used to annotate the root model of hierarchy:
Root:
x-root-ancestor: true
allOf:
- type: object
properties:
id:
type: string
Intermediate:
allOf:
- $ref: '#/definitions/Root'
- type: object
properties:
name:
type: string
Leaf:
allOf:
- $ref: '#/definitions/Intermediate'
- type: object
properties:
description:
type: string
This PR is related to #7593, and reimplemented according to requirements explained in comments there.
Any chance of getting this merged? I'm interested in #7060
Is there any news about the release of this feature? Thank you
This would really help with my Usecase, otherwise I can't use inheritance :-(
Any chance for it? Needed for #7060
Is there any news about this PR?
About the inheritance problem without using the discriminator, I found this workaround:
- https://github.com/swagger-api/swagger-codegen/issues/6127#issuecomment-931363427