private void collectFromDb(ModelRepository repository) throws IOException, SQLException {
LOG.info("データベース\"{}\"からテーブルの定義を読み込んでいます",
configuration.getJdbcUrl());
DatabaseSource source = new DatabaseSource(
configuration.getJdbcDriver(),
configuration.getJdbcUrl(),
configuration.getJdbcUser(),
configuration.getJdbcPassword(),
configuration.getDatabaseName());
try {
List<ModelDescription> collected = source.collectTables(
configuration.getMatcher());
for (ModelDescription model : collected) {
LOG.info("データベースから読み込んだテーブルモデル{}を登録しています",
model.getReference());
repository.add(model);
}
LOG.info("データベースから{}個のテーブルモデルを登録しました", collected.size());
} finally {
source.close();
}
}