private boolean checkExports(List<OutputDescription> outputs) {
assert outputs != null;
boolean valid = true;
for (OutputDescription output : outputs) {
BulkLoadExporterDescription desc = extract(output);
Set<String> columns = Sets.from(desc.getColumnNames());
if (columns.containsAll(desc.getTargetColumnNames()) == false) {
getEnvironment().error(
"\"{0}\"の正常テーブルには全体の出力カラムに含まれないカラムが存在します: {1}",
desc.getClass().getName(),
diff(desc.getTargetColumnNames(), columns));
valid = false;
}
DuplicateRecordCheck dupCheck = desc.getDuplicateRecordCheck();
if (dupCheck != null) {
if (columns.containsAll(dupCheck.getColumnNames()) == false) {
getEnvironment().error(
"\"{0}\"の重複エラーテーブルには全体の出力カラムに含まれないカラムが存在します",
desc.getClass().getName(),
diff(dupCheck.getColumnNames(), columns));
valid = false;
}
if (columns.containsAll(dupCheck.getCheckColumnNames()) == false) {
getEnvironment().error(