class DbTableMetadata {

    public DbColumnMetadata getColumn(String name) {

        DbColumnMetadata column = columnsByName.get(name);
        if (column == null) {
            throw new IllegalArgumentException("Column named '" + name + "' does not exist in table '" + this.name + "'");
        }

        return column;
    }

    public  DbTableMetadata(TableFQName name, DbColumnMetadata[] columns);

}