优化: 格式化代码

master
曹世达 6 months ago
parent e593d2415b
commit 5ea54ca168

@ -7,7 +7,10 @@ import space.caoshd.otone.entity.ContextInfo;
import space.caoshd.otone.entity.OutputInfo;
import space.caoshd.otone.entity.TableInfo;
import space.caoshd.otone.tool.PropTools;
import space.caoshd.otone.util.*;
import space.caoshd.otone.util.CfgUtils;
import space.caoshd.otone.util.FileUtils;
import space.caoshd.otone.util.PathConsts;
import space.caoshd.otone.util.VelocityUtils;
import java.util.Arrays;
import java.util.Collections;
@ -20,16 +23,17 @@ public class SourceBuilder {
private static final Logger LOGGER = LoggerFactory.getLogger(SourceBuilder.class);
private static final PropTools CONFIG = new PropTools(PathConsts.CONFIG_PROPERTIES_PATH);
private final Map<String, Object> extra = new HashMap<>();
private TableInfo tableInfo;
private OutputInfo outputInfo;
private List<TableInfo> tableInfoList;
private List<OutputInfo> outputInfoList;
private final Map<String, Object> extra = new HashMap<>();
private static ClassInfo buildClassInfo(TableInfo tableInfo, OutputInfo outputInfo) {
return new InfoClsBuilder().setTableName(tableInfo.getTableName())
.setPackageName(outputInfo.getPackageName())
.build();
}
public SourceBuilder setTableInfo(TableInfo tableInfo) {
this.tableInfo = tableInfo;
@ -88,9 +92,9 @@ public class SourceBuilder {
}
private void build(TableInfo tableInfo, OutputInfo outputInfo) {
// 创建数据文件夹
FileUtils.mkdir(outputInfo.getPackagePath());
// 创建上下文环境信息
ContextInfo contextInfo = new ContextInfo();
// 设置表信息
@ -99,42 +103,40 @@ public class SourceBuilder {
ClassInfo classInfo = buildClassInfo(tableInfo, outputInfo);
contextInfo.setConfigInfo(classInfo);
// 获取输出文件路径
// 完善输出信息 计算输出路径
enhanceOutputInfo(outputInfo, classInfo);
String outputPath = outputInfo.getOutputPath();
// 获取模板文件路径
String templatePath = outputInfo.getTemplatePath();
// 判断输出文件是否已存在
if (!FileUtils.exists(outputPath)) {
if (!FileUtils.exists(outputInfo.getOutputPath())) {
// 输出文件不存在 直接生成
VelocityUtils.render(templatePath, outputPath, contextInfo);
VelocityUtils.render(
outputInfo.getTemplatePath(),
outputInfo.getOutputPath(),
contextInfo
);
}
// 输出文件存在 判断是否可以覆盖
if (CONFIG.getBoolean(CfgUtils.OUTPUT_COVER_IF_EXIST)) {
// 配置可以执行覆盖 覆盖生成
VelocityUtils.render(templatePath, outputPath, contextInfo);
VelocityUtils.render(
outputInfo.getTemplatePath(),
outputInfo.getOutputPath(),
contextInfo
);
} else {
// 配置不可以执行覆盖 提示错误消息
LOGGER.warn("output file already exists: {}, " + "please remove it or enable auto " + "cover exist file,"
LOGGER.warn(
"output file already exists: {}, " + "please remove it or enable auto "
+ "cover exist file,"
+ " config.properties should like [output.cover_if_exists=true]",
outputPath
outputInfo.getOutputPath()
);
}
}
private void enhanceOutputInfo(OutputInfo outputInfo, ClassInfo classInfo) {
new InfoOutBuilder()
.init(outputInfo)
.setClassName(classInfo.getClassName())
.build();
}
private static ClassInfo buildClassInfo(TableInfo tableInfo, OutputInfo outputInfo) {
return new InfoClsBuilder()
.setTableName(tableInfo.getTableName())
.setPackageName(outputInfo.getPackageName())
.build();
new InfoOutBuilder().init(outputInfo).setClassName(classInfo.getClassName()).build();
}
private void build(TableInfo tableInfo, List<OutputInfo> outputInfoList) {

Loading…
Cancel
Save