use model instead of object for reserved keyword model name

This commit is contained in:
wing328 2016-03-07 21:08:52 +08:00
parent bf32820223
commit e7725a9f45
14 changed files with 74 additions and 36 deletions

View File

@ -497,7 +497,7 @@ public abstract class AbstractCSharpCodegen extends DefaultCodegen implements Co
// model name cannot use reserved keyword, e.g. return // model name cannot use reserved keyword, e.g. return
if (isReservedWord(name)) { if (isReservedWord(name)) {
LOGGER.warn(name + " (reserved word) cannot be used as model name. Renamed to " + camelize("model_" + name)); LOGGER.warn(name + " (reserved word) cannot be used as model name. Renamed to " + camelize("model_" + name));
name = "model_" + name; // e.g. return => ObjectReturn (after camelize) name = "model_" + name; // e.g. return => ModelReturn (after camelize)
} }
// camelize the model name // camelize the model name

View File

@ -134,7 +134,7 @@ public abstract class AbstractTypeScriptClientCodegen extends DefaultCodegen imp
// model name cannot use reserved keyword, e.g. return // model name cannot use reserved keyword, e.g. return
if (isReservedWord(name)) { if (isReservedWord(name)) {
String modelName = camelize("object_" + name); String modelName = camelize("model_" + name);
LOGGER.warn(name + " (reserved word) cannot be used as model name. Renamed to " + modelName); LOGGER.warn(name + " (reserved word) cannot be used as model name. Renamed to " + modelName);
return modelName; return modelName;
} }

View File

@ -185,13 +185,22 @@ public class AndroidClientCodegen extends DefaultCodegen implements CodegenConfi
@Override @Override
public String toModelName(String name) { public String toModelName(String name) {
// add prefix, suffix if needed
if (!StringUtils.isEmpty(modelNamePrefix)) {
name = modelNamePrefix + "_" + name;
}
if (!StringUtils.isEmpty(modelNameSuffix)) {
name = name + "_" + modelNameSuffix;
}
// camelize the model name // camelize the model name
// phone_number => PhoneNumber // phone_number => PhoneNumber
name = camelize(sanitizeName(modelNamePrefix + name + modelNameSuffix)); name = camelize(sanitizeName(name));
// model name cannot use reserved keyword, e.g. return // model name cannot use reserved keyword, e.g. return
if (isReservedWord(name)) { if (isReservedWord(name)) {
String modelName = "Object" + name; String modelName = "Model" + name;
LOGGER.warn(name + " (reserved word) cannot be used as model name. Renamed to " + modelName); LOGGER.warn(name + " (reserved word) cannot be used as model name. Renamed to " + modelName);
return modelName; return modelName;
} }

View File

@ -287,9 +287,20 @@ public class FlashClientCodegen extends DefaultCodegen implements CodegenConfig
@Override @Override
public String toModelName(String name) { public String toModelName(String name) {
if (!StringUtils.isEmpty(modelNamePrefix)) {
name = modelNamePrefix + "_" + name;
}
if (!StringUtils.isEmpty(modelNameSuffix)) {
name = name + "_" + modelNameSuffix;
}
name = sanitizeName(name);
// model name cannot use reserved keyword, e.g. return // model name cannot use reserved keyword, e.g. return
if (isReservedWord(name)) { if (isReservedWord(name)) {
throw new RuntimeException(name + " (reserved word) cannot be used as a model name"); LOGGER.warn(name + " (reserved word) cannot be used as model name. Renamed to " + camelize("model_" + name));
name = "model_" + name; // e.g. return => ModelReturn (after camelize)
} }
// camelize the model name // camelize the model name
@ -299,14 +310,8 @@ public class FlashClientCodegen extends DefaultCodegen implements CodegenConfig
@Override @Override
public String toModelFilename(String name) { public String toModelFilename(String name) {
// model name cannot use reserved keyword, e.g. return // leverage toModelName
if (isReservedWord(name)) { return dropDots(toModelName(name));
throw new RuntimeException(name + " (reserved word) cannot be used as a model name");
}
// underscore the model file name
// PhoneNumber => phone_number
return camelize(dropDots(name));
} }
@Override @Override
@ -344,7 +349,8 @@ public class FlashClientCodegen extends DefaultCodegen implements CodegenConfig
// method name cannot use reserved keyword, e.g. return // method name cannot use reserved keyword, e.g. return
if (isReservedWord(operationId)) { if (isReservedWord(operationId)) {
throw new RuntimeException(operationId + " (reserved word) cannot be used as method name"); LOGGER.warn(operationId + " (reserved word) cannot be used as method name. Renamed to " + underscore(sanitizeName("call_" + operationId)));
operationId = "call_" + operationId;
} }
return underscore(operationId); return underscore(operationId);

View File

@ -192,9 +192,21 @@ public class GoClientCodegen extends DefaultCodegen implements CodegenConfig {
@Override @Override
public String toModelName(String name) { public String toModelName(String name) {
if (!StringUtils.isEmpty(modelNamePrefix)) {
name = modelNamePrefix + "_" + name;
}
if (!StringUtils.isEmpty(modelNameSuffix)) {
name = name + "_" + modelNameSuffix;
}
name = sanitizeName(name);
// model name cannot use reserved keyword, e.g. return // model name cannot use reserved keyword, e.g. return
if(isReservedWord(name)) if (isReservedWord(name)) {
throw new RuntimeException(name + " (reserved word) cannot be used as a model name"); LOGGER.warn(name + " (reserved word) cannot be used as model name. Renamed to " + camelize("model_" + name));
name = "model_" + name; // e.g. return => ModelReturn (after camelize)
}
// camelize the model name // camelize the model name
// phone_number => PhoneNumber // phone_number => PhoneNumber
@ -257,8 +269,10 @@ public class GoClientCodegen extends DefaultCodegen implements CodegenConfig {
@Override @Override
public String toOperationId(String operationId) { public String toOperationId(String operationId) {
// method name cannot use reserved keyword, e.g. return // method name cannot use reserved keyword, e.g. return
if(isReservedWord(operationId)) if (isReservedWord(operationId)) {
throw new RuntimeException(operationId + " (reserved word) cannot be used as method name"); LOGGER.warn(operationId + " (reserved word) cannot be used as method name. Renamed to " + camelize(sanitizeName("call_" + operationId)));
operationId = "call_" + operationId;
}
return camelize(operationId); return camelize(operationId);
} }

View File

@ -388,7 +388,7 @@ public class JavaClientCodegen extends DefaultCodegen implements CodegenConfig {
// model name cannot use reserved keyword, e.g. return // model name cannot use reserved keyword, e.g. return
if (isReservedWord(camelizedName)) { if (isReservedWord(camelizedName)) {
final String modelName = "Object" + camelizedName; final String modelName = "Model" + camelizedName;
LOGGER.warn(camelizedName + " (reserved word) cannot be used as model name. Renamed to " + modelName); LOGGER.warn(camelizedName + " (reserved word) cannot be used as model name. Renamed to " + modelName);
return modelName; return modelName;
} }

View File

@ -308,7 +308,7 @@ public class JavascriptClientCodegen extends DefaultCodegen implements CodegenCo
// model name cannot use reserved keyword, e.g. return // model name cannot use reserved keyword, e.g. return
if (isReservedWord(name)) { if (isReservedWord(name)) {
String modelName = "Object" + name; String modelName = "Model" + name;
LOGGER.warn(name + " (reserved word) cannot be used as model name. Renamed to " + modelName); LOGGER.warn(name + " (reserved word) cannot be used as model name. Renamed to " + modelName);
return modelName; return modelName;
} }

View File

@ -128,10 +128,19 @@ public class JavascriptClosureAngularClientCodegen extends DefaultCodegen implem
@Override @Override
public String toModelName(String name) { public String toModelName(String name) {
if (!StringUtils.isEmpty(modelNamePrefix)) {
name = modelNamePrefix + "_" + name;
}
if (!StringUtils.isEmpty(modelNameSuffix)) {
name = name + "_" + modelNameSuffix;
}
// model name cannot use reserved keyword, e.g. return // model name cannot use reserved keyword, e.g. return
if (isReservedWord(name)) if (isReservedWord(name)) {
throw new RuntimeException(name LOGGER.warn(name + " (reserved word) cannot be used as model name. Renamed to " + camelize("model_" + name));
+ " (reserved word) cannot be used as a model name"); name = "model_" + name; // e.g. return => ModelReturn (after camelize)
}
// camelize the model name // camelize the model name
// phone_number => PhoneNumber // phone_number => PhoneNumber

View File

@ -316,8 +316,8 @@ public class ObjcClientCodegen extends DefaultCodegen implements CodegenConfig {
public String toModelName(String type) { public String toModelName(String type) {
// model name cannot use reserved keyword // model name cannot use reserved keyword
if (reservedWords.contains(type)) { if (reservedWords.contains(type)) {
LOGGER.warn(type+ " (reserved word) cannot be used as model name. Renamed to " + ("object_" + type) + " before further processing"); LOGGER.warn(type+ " (reserved word) cannot be used as model name. Renamed to " + ("model_" + type) + " before further processing");
type = "object_" + type; // e.g. return => ObjectReturn (after camelize) type = "model_" + type; // e.g. return => ModelReturn (after camelize)
} }
return toModelNameWithoutReservedWordCheck(type); return toModelNameWithoutReservedWordCheck(type);

View File

@ -222,8 +222,8 @@ public class PerlClientCodegen extends DefaultCodegen implements CodegenConfig {
// model name cannot use reserved keyword // model name cannot use reserved keyword
if (isReservedWord(name)) { if (isReservedWord(name)) {
LOGGER.warn(name + " (reserved word) cannot be used as model name. Renamed to " + camelize("object_" + name)); LOGGER.warn(name + " (reserved word) cannot be used as model name. Renamed to " + camelize("model_" + name));
name = "object_" + name; name = "model_" + name;
} }
// add prefix/suffic to model name // add prefix/suffic to model name

View File

@ -369,8 +369,8 @@ public class PhpClientCodegen extends DefaultCodegen implements CodegenConfig {
// model name cannot use reserved keyword // model name cannot use reserved keyword
if (isReservedWord(name)) { if (isReservedWord(name)) {
LOGGER.warn(name + " (reserved word) cannot be used as model name. Renamed to " + camelize("object_" + name)); LOGGER.warn(name + " (reserved word) cannot be used as model name. Renamed to " + camelize("model_" + name));
name = "object_" + name; // e.g. return => ObjectReturn (after camelize) name = "model_" + name; // e.g. return => ModelReturn (after camelize)
} }
// add prefix and/or suffic only if name does not start wth \ (e.g. \DateTime) // add prefix and/or suffic only if name does not start wth \ (e.g. \DateTime)

View File

@ -218,8 +218,8 @@ public class PythonClientCodegen extends DefaultCodegen implements CodegenConfig
// model name cannot use reserved keyword, e.g. return // model name cannot use reserved keyword, e.g. return
if (isReservedWord(name)) { if (isReservedWord(name)) {
LOGGER.warn(name + " (reserved word) cannot be used as model name. Renamed to " + camelize("object_" + name)); LOGGER.warn(name + " (reserved word) cannot be used as model name. Renamed to " + camelize("model_" + name));
name = "object_" + name; // e.g. return => ObjectReturn (after camelize) name = "model_" + name; // e.g. return => ModelReturn (after camelize)
} }
if (!StringUtils.isEmpty(modelNamePrefix)) { if (!StringUtils.isEmpty(modelNamePrefix)) {
@ -243,8 +243,8 @@ public class PythonClientCodegen extends DefaultCodegen implements CodegenConfig
// model name cannot use reserved keyword, e.g. return // model name cannot use reserved keyword, e.g. return
if (isReservedWord(name)) { if (isReservedWord(name)) {
LOGGER.warn(name + " (reserved word) cannot be used as model filename. Renamed to " + underscore(dropDots("object_" + name))); LOGGER.warn(name + " (reserved word) cannot be used as model filename. Renamed to " + underscore(dropDots("model_" + name)));
name = "object_" + name; // e.g. return => ObjectReturn (after camelize) name = "model_" + name; // e.g. return => ModelReturn (after camelize)
} }
if (!StringUtils.isEmpty(modelNamePrefix)) { if (!StringUtils.isEmpty(modelNamePrefix)) {

View File

@ -381,7 +381,7 @@ public class RubyClientCodegen extends DefaultCodegen implements CodegenConfig {
// model name cannot use reserved keyword, e.g. return // model name cannot use reserved keyword, e.g. return
if (isReservedWord(name)) { if (isReservedWord(name)) {
String modelName = camelize("object_" + name); String modelName = camelize("Model" + name);
LOGGER.warn(name + " (reserved word) cannot be used as model name. Renamed to " + modelName); LOGGER.warn(name + " (reserved word) cannot be used as model name. Renamed to " + modelName);
return modelName; return modelName;
} }
@ -404,7 +404,7 @@ public class RubyClientCodegen extends DefaultCodegen implements CodegenConfig {
} }
// model name cannot use reserved keyword, e.g. return // model name cannot use reserved keyword, e.g. return
if (isReservedWord(name)) { if (isReservedWord(name)) {
String filename = underscore("object_" + name); String filename = underscore("model_" + name);
LOGGER.warn(name + " (reserved word) cannot be used as model filename. Renamed to " + filename); LOGGER.warn(name + " (reserved word) cannot be used as model filename. Renamed to " + filename);
return filename; return filename;
} }

View File

@ -263,7 +263,7 @@ public class SwiftCodegen extends DefaultCodegen implements CodegenConfig {
// model name cannot use reserved keyword, e.g. return // model name cannot use reserved keyword, e.g. return
if (isReservedWord(name)) { if (isReservedWord(name)) {
String modelName = "Object" + name; String modelName = "Model" + name;
LOGGER.warn(name + " (reserved word) cannot be used as model name. Renamed to " + modelName); LOGGER.warn(name + " (reserved word) cannot be used as model name. Renamed to " + modelName);
return modelName; return modelName;
} }