
dk.eobjects.metamodel.schema.CompositeSchema Maven / Gradle / Ivy
The newest version!
package dk.eobjects.metamodel.schema;
import java.util.Collection;
import java.util.HashSet;
import java.util.Set;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
public class CompositeSchema extends Schema {
private static final long serialVersionUID = -4018186004438335133L;
private final Log _log = LogFactory.getLog(getClass());
public CompositeSchema(String name, Collection extends Schema> delegates) {
super(name);
for (Schema delegate : delegates) {
Table[] tables = delegate.getTables();
for (Table table : tables) {
if (_log.isInfoEnabled()) {
_log.info("Adding to composite schema: " + table);
}
_tables.add(table);
}
}
if (_log.isWarnEnabled()) {
Set names = new HashSet();
for (Table table : _tables) {
if (names.contains(table.getName())) {
_log.warn("Name-clash detected for Table "
+ table.getName() + ".");
_log.warn("getTableByName(\"" + table.getName()
+ "\") will return just the first table.");
} else {
names.add(table.getName());
}
}
}
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy