-
-
Notifications
You must be signed in to change notification settings - Fork 6.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Refactor InlineModelResolver #1788
Refactor InlineModelResolver #1788
Conversation
cc @OpenAPITools/generator-core-team |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This refactor looks good. I've never touched this file, so I'll let someone else merge. But the refactor seems easier to read, and I don't immediately notice any changes in logic.
openAPI.getComponents().addSchemas(modelName, model); | ||
} | ||
} | ||
} else if (model instanceof ArraySchema) { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Later we may need to do the same for MapSchema as well (not in this PR)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for the comment, I'm working on the issue. 💨
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for the refactoring, which looks good to me. The refactored code definitely looks a lot cleaner and better organized.
* Extract a method "flattenPaths" to reduce the scope of method * Tweak * Rename parameter name * Extract a method "flattenModels" to reduce the scope of method * Rename parameter name * Rename: models -> components * Delete comment * Extract a method "flattenRequestBody" to reduce the scope of method * Extract a method "flattenParameters" to reduce the scope of method * Extract a method "flattenResponses" to reduce the scope of method * Tweak types * Reduce indentation
PR checklist
./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\
.master
,. Default:3.4.x
,4.0.x
master
.Description of the PR
This PR is a step to refactor InlineModelResolver, extracts some methods from
flatten()
to reduce scope of variables.Previous PR: #1787