forked from loafle/openapi-generator-original
[feature #1255] prefix and suffix for model names.
This implements the command line arguments `--model-name-prefix` and `--model-name-suffix` for all languages which do not override `DefaultCodegen.toModelName()`. This fixes most of swagger-api/swagger-codegen#1255. Connection to the maven plugin works with additional-properties, a more explicit parameter waits for swagger-api/swagger-codegen#2168.
This commit is contained in:
parent
98c5e70f7c
commit
a6f3914a92
@ -73,6 +73,12 @@ public class Generate implements Runnable {
|
||||
@Option(name = {"--model-package"}, title = "model package", description = CodegenConstants.MODEL_PACKAGE_DESC)
|
||||
private String modelPackage;
|
||||
|
||||
@Option(name = {"--model-name-prefix"}, title = "model name prefix", description = CodegenConstants.MODEL_NAME_PREFIX_DESC)
|
||||
private String modelNamePrefix;
|
||||
|
||||
@Option(name = {"--model-name-suffix"}, title = "model name suffix", description = CodegenConstants.MODEL_NAME_SUFFIX_DESC)
|
||||
private String modelNameSuffix;
|
||||
|
||||
@Option(name = {"--instantiation-types"}, title = "instantiation types", description = "sets instantiation type mappings in the format of type=instantiatedType,type=instantiatedType." +
|
||||
"For example (in Java): array=ArrayList,map=HashMap. In other words array types will get instantiated as ArrayList in generated code.")
|
||||
private String instantiationTypes;
|
||||
@ -156,6 +162,14 @@ public class Generate implements Runnable {
|
||||
configurator.setModelPackage(modelPackage);
|
||||
}
|
||||
|
||||
if(isNotEmpty(modelNamePrefix)){
|
||||
configurator.setModelNamePrefix(modelNamePrefix);
|
||||
}
|
||||
|
||||
if(isNotEmpty(modelNameSuffix)){
|
||||
configurator.setModelNameSuffix(modelNameSuffix);
|
||||
}
|
||||
|
||||
if(isNotEmpty(invokerPackage)) {
|
||||
configurator.setInvokerPackage(invokerPackage);
|
||||
}
|
||||
|
@ -108,6 +108,14 @@ public class DefaultCodegen {
|
||||
this.setEnsureUniqueParams(Boolean.valueOf(additionalProperties
|
||||
.get(CodegenConstants.ENSURE_UNIQUE_PARAMS).toString()));
|
||||
}
|
||||
|
||||
if(additionalProperties.containsKey(CodegenConstants.MODEL_NAME_PREFIX)){
|
||||
this.setModelNamePrefix((String) additionalProperties.get(CodegenConstants.MODEL_NAME_PREFIX));
|
||||
}
|
||||
|
||||
if(additionalProperties.containsKey(CodegenConstants.MODEL_NAME_SUFFIX)){
|
||||
this.setModelNameSuffix((String) additionalProperties.get(CodegenConstants.MODEL_NAME_SUFFIX));
|
||||
}
|
||||
}
|
||||
|
||||
// override with any special post-processing for all models
|
||||
@ -284,6 +292,14 @@ public class DefaultCodegen {
|
||||
this.modelPackage = modelPackage;
|
||||
}
|
||||
|
||||
public void setModelNamePrefix(String modelNamePrefix){
|
||||
this.modelNamePrefix = modelNamePrefix;
|
||||
}
|
||||
|
||||
public void setModelNameSuffix(String modelNameSuffix){
|
||||
this.modelNameSuffix = modelNameSuffix;
|
||||
}
|
||||
|
||||
public void setApiPackage(String apiPackage) {
|
||||
this.apiPackage = apiPackage;
|
||||
}
|
||||
|
@ -320,6 +320,8 @@ public class CodegenConfigurator {
|
||||
checkAndSetAdditionalProperty(artifactId, CodegenConstants.ARTIFACT_ID);
|
||||
checkAndSetAdditionalProperty(artifactVersion, CodegenConstants.ARTIFACT_VERSION);
|
||||
checkAndSetAdditionalProperty(templateDir, toAbsolutePathStr(templateDir), CodegenConstants.TEMPLATE_DIR);
|
||||
checkAndSetAdditionalProperty(modelNamePrefix, CodegenConstants.MODEL_NAME_PREFIX);
|
||||
checkAndSetAdditionalProperty(modelNameSuffix, CodegenConstants.MODEL_NAME_SUFFIX);
|
||||
|
||||
handleDynamicProperties(config);
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user