Changes inner enum data types to be Classname.Enumname so it can be used everywhere.
Adds CodegenProperty isInnerEnum so we know if we need to append the classname to the datatype in other contexts.
When the property name matches the classname, changes the underscore prefix to a suffix of Property. The reason for this is that in C#, objects with names starting with an underscore indicate a private field. Using an underscore to start the name of anything else is unusual.
Changes the model and operation sorting. First we sort by name. Then we sort by both isNullable and has default value for models, and required or default value for operations.
Moves test instructions to a mustache file.
Patches model properties to fix incorrect data types. There is an issue open regarding this.
Adds nonNullableVars to CodegenModel.
Adds the return CodegenProperty to the CodegenOperation.
Removes compulsory method from CodegenParameter and CodegenProperty. I added this recently, but it was not needed.
Changes composed schemas so that allOf is no longer always nullable.
Lots of changes here, but this work gets me to a place where I can generate a usable API wrapper.
PR checklist
-
Read the contribution guidelines. -
Pull Request title clearly describes the work in the pull request and Pull Request description provides details about how to validate the work. Missing information here may result in delayed response from the community. -
Run the following to build the project and update samples: ./mvnw clean package ./bin/generate-samples.sh ./bin/utils/export_docs_generators.sh
./bin/generate-samples.sh bin/configs/java*
. For Windows users, please run the script in Git BASH. -
If your PR is targeting a particular programming language, @mention the technical committee members, so they are more likely to review the pull request.
@mandrean (2017/08) @frankyjuang (2019/09) @shibayan (2020/02) @Blackclaws (2021/03) @lucamazzanti (2021/05)