File output = configuration.getRecordLockDdlOutput();
if (output == null) {
return;
}
int count = 0;
RecordLockDdlEmitter generator = new RecordLockDdlEmitter();
for (TableModelDescription model : repository.allTables()) {
generator.addTable(model.getReference().getSimpleName());
count++;
}
if (count == 0) {
LOG.warn("レコードロック用のDDLを生成する対象のテーブルが一つもありません: {}", output);
return;
}
LOG.info("レコードロック用のDDLを生成しています: {}", output);
try {
FileOutputStream stream = FileUtils.openOutputStream(output);
try {
generator.appendTo(stream);
} finally {
stream.close();
}
} catch (IOException e) {
LOG.error("レコードロック用のDDL生成に失敗しました", e);