Skip to content
GitLab
Projects Groups Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in / Register
  • O openapi-generator
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 3,476
    • Issues 3,476
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 402
    • Merge requests 402
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Packages and registries
    • Packages and registries
    • Package Registry
    • Infrastructure Registry
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • OpenAPI Tools
  • openapi-generator
  • Merge requests
  • !4454

Support models with multi-level hierarchy

  • Review changes

  • Download
  • Email patches
  • Plain diff
Closed Administrator requested to merge github/fork/roxspring/feature/multi-level-model-hierarchy into master Nov 11, 2019
  • Overview 0
  • Commits 5
  • Pipelines 0
  • Changes 791+

Created by: roxspring

  • Introduced BigCat extending Cat (which extends Animal) to the petstore-with-fake-endpoints spec.
  • ModelUtils.getAllParentsName() gains optional ability to include ancestor names, not just immediate parents.
  • ModelUtils considers composed interface a parent if it has a discriminator OR inherits one.
  • Discriminator mapped models includes all descendants, not just immediate ones.

Fixes #4423 (closed), #1685 (closed), #2928 (closed), #3058 (closed)

Primarily for the attention of core team: @wing328 @jimschubert @cbornet @ackintosh @jmini @etherealjoy

Generator teams may also be interested - I've focused on checking the Java code myself.

PR checklist

  • Read the contribution guidelines.
  • If contributing template-only or documentation-only changes which will change sample output, build the project before.
  • Run the shell script(s) under ./bin/ (or Windows batch scripts under.\bin\windows) to update Petstore samples related to your fix. This is important, as CI jobs will verify all generator outputs of your HEAD commit, and these must match the expectations made by your contribution. You only need to run ./bin/{LANG}-petstore.sh, ./bin/openapi3/{LANG}-petstore.sh if updating the code or mustache templates for a language ({LANG}) (e.g. php, ruby, python, etc). (actually ran java -jar modules/openapi-generator-cli/target/openapi-generator-cli.jar batch --includes-base-dir pwd --fail-fast -- bin/ci/* as recommended by @jimschubert)
  • File the PR against the correct branch: master, 4.3.x, 5.0.x. Default: master.
  • Copy the technical committee to review the pull request if your PR is targeting a particular programming language.
Assignee
Assign to
Reviewers
Request review from
Time tracking
Source branch: github/fork/roxspring/feature/multi-level-model-hierarchy