This commit is contained in:
William Cheng 2021-09-19 13:10:12 +08:00
commit 14758dbb0b
4 changed files with 29 additions and 4 deletions

View File

@ -34,6 +34,10 @@ import java.util.Map;
import java.util.Set; import java.util.Set;
public interface CodegenConfig { public interface CodegenConfig {
String getFilesMetadataFilename();
String getVersionMetadataFilename();
GeneratorMetadata getGeneratorMetadata(); GeneratorMetadata getGeneratorMetadata();
CodegenType getTag(); CodegenType getTag();

View File

@ -152,6 +152,8 @@ public class DefaultCodegen implements CodegenConfig {
protected String modelNamePrefix = "", modelNameSuffix = ""; protected String modelNamePrefix = "", modelNameSuffix = "";
protected String apiNamePrefix = "", apiNameSuffix = "Api"; protected String apiNamePrefix = "", apiNameSuffix = "Api";
protected String testPackage = ""; protected String testPackage = "";
protected String filesMetadataFilename = "FILES";
protected String versionMetadataFilename = "VERSION";
/* /*
apiTemplateFiles are for API outputs only (controllers/handlers). apiTemplateFiles are for API outputs only (controllers/handlers).
API templates may be written multiple times; APIs are grouped by tag and the file is written once per tag group. API templates may be written multiple times; APIs are grouped by tag and the file is written once per tag group.
@ -1177,6 +1179,24 @@ public class DefaultCodegen implements CodegenConfig {
this.inputSpec = inputSpec; this.inputSpec = inputSpec;
} }
@Override
public String getFilesMetadataFilename() {
return filesMetadataFilename;
}
public void setFilesMetadataFilename(String filesMetadataFilename) {
this.filesMetadataFilename = filesMetadataFilename;
}
@Override
public String getVersionMetadataFilename() {
return versionMetadataFilename;
}
public void setVersionMetadataFilename(String versionMetadataFilename) {
this.versionMetadataFilename = versionMetadataFilename;
}
public void setTemplateDir(String templateDir) { public void setTemplateDir(String templateDir) {
this.templateDir = templateDir; this.templateDir = templateDir;
} }

View File

@ -1427,7 +1427,7 @@ public class DefaultGenerator implements Generator {
* @param files The list tracking generated files * @param files The list tracking generated files
*/ */
private void generateVersionMetadata(List<File> files) { private void generateVersionMetadata(List<File> files) {
String versionMetadata = config.outputFolder() + File.separator + METADATA_DIR + File.separator + "VERSION"; String versionMetadata = config.outputFolder() + File.separator + METADATA_DIR + File.separator + config.getVersionMetadataFilename();
if (generateMetadata) { if (generateMetadata) {
File versionMetadataFile = new File(versionMetadata); File versionMetadataFile = new File(versionMetadata);
try { try {
@ -1495,7 +1495,7 @@ public class DefaultGenerator implements Generator {
} }
}); });
String targetFile = config.outputFolder() + File.separator + METADATA_DIR + File.separator + "FILES"; String targetFile = config.outputFolder() + File.separator + METADATA_DIR + File.separator + config.getFilesMetadataFilename();
File filesFile = this.templateProcessor.writeToFile(targetFile, sb.toString().getBytes(StandardCharsets.UTF_8)); File filesFile = this.templateProcessor.writeToFile(targetFile, sb.toString().getBytes(StandardCharsets.UTF_8));
if (filesFile != null) { if (filesFile != null) {

View File

@ -395,8 +395,9 @@ public class RustServerCodegen 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)) {
camelizedName = "Model" + camelizedName; final String modelName = "Model" + camelizedName;
LOGGER.warn("{} (reserved word) cannot be used as model name. Renamed to {}", camelizedName, camelizedName); LOGGER.warn("{} (reserved word) cannot be used as model name. Renamed to {}", camelizedName, modelName);
return modelName;
} }
// model name starts with number // model name starts with number