diff --git a/modules/swagger-codegen/src/main/java/io/swagger/codegen/languages/Rails5ServerCodegen.java b/modules/swagger-codegen/src/main/java/io/swagger/codegen/languages/Rails5ServerCodegen.java index 2c9d087927c1..0e978ce7d154 100644 --- a/modules/swagger-codegen/src/main/java/io/swagger/codegen/languages/Rails5ServerCodegen.java +++ b/modules/swagger-codegen/src/main/java/io/swagger/codegen/languages/Rails5ServerCodegen.java @@ -259,7 +259,9 @@ public class Rails5ServerCodegen extends DefaultCodegen implements CodegenConfig public String toModelName(String name) { // model name cannot use reserved keyword, e.g. return if (isReservedWord(name)) { - throw new RuntimeException(name + " (reserved word) cannot be used as a model name"); + String modelName = camelize("Model" + name); + LOGGER.warn(name + " (reserved word) cannot be used as model name. Renamed to " + modelName); + return modelName; } // camelize the model name @@ -271,7 +273,9 @@ public class Rails5ServerCodegen extends DefaultCodegen implements CodegenConfig public String toModelFilename(String name) { // model name cannot use reserved keyword, e.g. return if (isReservedWord(name)) { - throw new RuntimeException(name + " (reserved word) cannot be used as a model name"); + String filename = underscore("model_" + name); + LOGGER.warn(name + " (reserved word) cannot be used as model filename. Renamed to " + filename); + return filename; } // underscore the model file name @@ -301,7 +305,9 @@ public class Rails5ServerCodegen extends DefaultCodegen implements CodegenConfig public String toOperationId(String operationId) { // method name cannot use reserved keyword, e.g. return if (isReservedWord(operationId)) { - throw new RuntimeException(operationId + " (reserved word) cannot be used as method name"); + String newOperationId = underscore("call_" + operationId); + LOGGER.warn(operationId + " (reserved word) cannot be used as method name. Renamed to " + newOperationId); + return newOperationId; } return underscore(operationId);