Created by: tomvangreen
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: master
,3.1.x
,4.0.x
. Default:master
. -
Copied the technical committee to review the pull request if your PR is targeting a particular programming language.
Description of the PR
I introduced a modelSuffix
and modelFileSuffix
parameter in order to add suffixes to the generated models and model file names. Taking the samples from the sample, with this setting you could for example change the model Pet
in the file pet.ts
to PetVm
in the file pet.vm.ts
by defining the model suffix Vm
and the model file suffix .vm
.
The motivation behind this change is to have a clear distincation between generated models and models that are created by a developer. Having the ability to add a suffix to the generated models makes it immediatly obvious of what kind a model is.
I currently see one issue and that is that the class suffix gets also appended to enumeration types. The StatusEnum
in the Pet
class will become StatusVmEnum
if I set the modelSuffix
option to Vm
. I will have a look if I find how I can avoid that.
@TiFu @taxpon @sebastianhaas @kenisteward @Vrolijkx @macjohnny