Skip to content

Commit 51c45eb

Browse files
authored
[REQ] Added enumClassPrefix option to Go server generation (#7008)
* Added enumClassPrefix option to Go server generation * Using literal 'true' instead of string
1 parent c1b8c29 commit 51c45eb

File tree

3 files changed

+10
-2
lines changed

3 files changed

+10
-2
lines changed

docs/generators/go-server.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ sidebar_label: go-server
1111
|packageVersion|Go package version.| |1.0.0|
1212
|serverPort|The network port the generated server binds to| |8080|
1313
|sourceFolder|source folder for generated code| |go|
14+
|enumClassPrefix|Prefix enum with class name| |false|
1415

1516
## IMPORT MAPPING
1617

modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/GoServerCodegen.java

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -104,7 +104,7 @@ public GoServerCodegen() {
104104

105105
/*
106106
* Service templates. You can write services for each Api file with the apiTemplateFiles map.
107-
These services are skeletons built to implement the logic of your api using the
107+
These services are skeletons built to implement the logic of your api using the
108108
expected parameters and response.
109109
*/
110110
apiTemplateFiles.put(
@@ -185,6 +185,13 @@ public void processOpts() {
185185
additionalProperties.put("featureCORS", corsFeatureEnabled);
186186
}
187187

188+
if (additionalProperties.containsKey(CodegenConstants.ENUM_CLASS_PREFIX)) {
189+
setEnumClassPrefix(Boolean.parseBoolean(additionalProperties.get(CodegenConstants.ENUM_CLASS_PREFIX).toString()));
190+
if (enumClassPrefix) {
191+
additionalProperties.put(CodegenConstants.ENUM_CLASS_PREFIX, true);
192+
}
193+
}
194+
188195
modelPackage = packageName;
189196
apiPackage = packageName;
190197

modules/openapi-generator/src/main/resources/go-server/model.mustache

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ type {{{name}}} {{^format}}{{dataType}}{{/format}}{{#format}}{{{format}}}{{/form
1111
const (
1212
{{#allowableValues}}
1313
{{#enumVars}}
14-
{{name}} {{{classname}}} = {{{value}}}
14+
{{#enumClassPrefix}}{{{classname.toUpperCase}}}_{{/enumClassPrefix}}{{name}} {{{classname}}} = {{{value}}}
1515
{{/enumVars}}
1616
{{/allowableValues}}
1717
){{/isEnum}}{{^isEnum}}{{#description}}

0 commit comments

Comments
 (0)