swagger-api/swagger-codegen

Not All Model Classnames Properly Capitalized When ModelNamePrefix Present

Open

#3828 aperta il 19 set 2016

Vedi su GitHub
 (7 commenti) (0 reazioni) (0 assegnatari)HTML (5474 fork)batch import
Client: JavaIssue: Bughelp wanted

Metriche repository

Star
 (12.701 star)
Metriche merge PR
 (Nessuna PR mergiata in 30 g)

Descrizione

Description

When specifying a model name prefix in a custom codegen class, some of the generated classes do not have proper capitalization of the original class name. For instance a model name of "account" and a model name prefix of "generated" will produce a class named "Generatedaccount" in file "Generatedaccount.java" when they should be named "GeneratedAccount" and "GeneratedAccount.java", respectively.

Swagger-codegen version

Using 2.2.1

Custom Swagger Codegen Class
import io.swagger.codegen.languages.JavaClientCodegen;

/**
 * Custom Java codegen class
 */
public class JavaUapiCodegen extends JavaClientCodegen {

  public JavaUapiCodegen() {
    super();
    setModelNamePrefix("generated");
  }

}
Suggest a Fix

In class DefaultCodegen.java:

    public String toModelName(final String name) {
        return initialCaps(modelNamePrefix)
            + initialCaps(name) + modelNameSuffix;
    }

Guida contributor