Skip to content

Commit

Permalink
Add mapping features to Julia generators (#16370)
Browse files Browse the repository at this point in the history
* add mapping features to julia generators

* additional changes required for mapped names (#16383)

---------

Co-authored-by: Tanmay Mohapatra <tanmaykm@gmail.com>
  • Loading branch information
wing328 and tanmaykm committed Aug 24, 2023
1 parent 7e67e3a commit 91fc151
Show file tree
Hide file tree
Showing 16 changed files with 880 additions and 4 deletions.
8 changes: 6 additions & 2 deletions bin/configs/julia-client-petstore-new.yaml
Original file line number Diff line number Diff line change
@@ -1,9 +1,13 @@
generatorName: julia-client
outputDir: samples/client/petstore/julia
inputSpec: modules/openapi-generator/src/test/resources/3_0/petstore.yaml
inputSpec: modules/openapi-generator/src/test/resources/3_0/julia/petstore.yaml
templateDir: modules/openapi-generator/src/main/resources/julia-client
additionalProperties:
hideGenerationTimestamp: "true"
packageName: OpenAPIGenPetStoreClient
exportOperations: "true"
exportModels: "true"
exportModels: "true"
modelNameMappings:
another_model: MappedModel
nameMappings:
another_property: mappedProperty
4 changes: 2 additions & 2 deletions bin/configs/julia-server-petstore-new.yaml
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
generatorName: julia-server
outputDir: samples/server/petstore/julia
inputSpec: modules/openapi-generator/src/test/resources/3_0/petstore.yaml
inputSpec: modules/openapi-generator/src/test/resources/3_0/julia/petstore.yaml
templateDir: modules/openapi-generator/src/main/resources/julia-server
additionalProperties:
hideGenerationTimestamp: "true"
packageName: OpenAPIGenPetStoreServer
exportOperations: "true"
exportModels: "true"
exportModels: "true"
Original file line number Diff line number Diff line change
Expand Up @@ -209,6 +209,11 @@ public String toModelFilename(String name) {
return "model_" + toModelName(name);
}

@Override
public String toModelDocFilename(String name) {
return toModelName(name);
}

@Override
public String toApiFilename(String name) {
name = name.replaceAll("-", "_");
Expand All @@ -226,6 +231,12 @@ public String toApiName(String name) {

@Override
public String toParamName(String name) {
// obtain the name from parameterNameMapping directly if provided
if (parameterNameMapping.containsKey(name)) {
return parameterNameMapping.get(name);
}

name = toVarName(name);
CamelizeOption camelizeOption = CamelizeOption.UPPERCASE_FIRST_CHAR;
name = camelize(sanitizeName(name), camelizeOption);
name = CaseFormat.LOWER_CAMEL.to(CaseFormat.LOWER_UNDERSCORE, name);
Expand All @@ -242,7 +253,13 @@ public String toApiVarName(String name) {

@Override
public String toVarName(String name) {
// obtain the name from nameMapping directly if provided
if (nameMapping.containsKey(name)) {
return nameMapping.get(name);
}

return name;

}

/**
Expand Down Expand Up @@ -288,6 +305,11 @@ protected boolean needsVarEscape(String name) {
*/
@Override
public String toModelName(final String name) {
// obtain the name from modelNameMapping directly if provided
if (modelNameMapping.containsKey(name)) {
return modelNameMapping.get(name);
}

String result = sanitizeName(name);

// remove dollar sign
Expand Down
Loading

0 comments on commit 91fc151

Please sign in to comment.