use of org.hibernate.eclipse.console.workbench.TableContainer in project jbosstools-hibernate by jbosstools.
the class TableFilterView method toggle.
protected void toggle(boolean exclude) {
ConsoleConfiguration cc = getConsoleConfiguration();
if (cc == null)
return;
ISelection selection = viewer.getSelection();
if (!selection.isEmpty()) {
StructuredSelection ss = (StructuredSelection) selection;
Iterator<?> iterator = ss.iterator();
while (iterator.hasNext()) {
Object sel = iterator.next();
ITableFilter filter = null;
if (sel instanceof ITable) {
ITable table = (ITable) sel;
filter = revEngDef.createTableFilter(cc);
if (StringHelper.isNotEmpty(table.getName())) {
filter.setMatchName(table.getName());
}
if (StringHelper.isNotEmpty(table.getCatalog())) {
filter.setMatchCatalog(table.getCatalog());
}
if (StringHelper.isNotEmpty(table.getSchema())) {
filter.setMatchSchema(table.getSchema());
}
filter.setExclude(Boolean.valueOf(exclude));
} else if (sel instanceof TableContainer) {
// assume its a
// schema!
TableContainer tc = (TableContainer) sel;
filter = revEngDef.createTableFilter(cc);
String schema = tc.getName();
if (schema == null || "".equals(schema)) {
// $NON-NLS-1$
// $NON-NLS-1$
filter.setMatchCatalog(".*");
// $NON-NLS-1$
filter.setMatchSchema(".*");
} else {
// fake catalog handling
String catalog = StringHelper.qualifier(schema);
schema = StringHelper.unqualify(schema);
// $NON-NLS-1$ //$NON-NLS-2$
filter.setMatchCatalog("".equals(catalog) ? ".*" : catalog);
// $NON-NLS-1$ //$NON-NLS-2$
filter.setMatchSchema("".equals(schema) ? ".*" : schema);
}
// $NON-NLS-1$
filter.setMatchName(".*");
filter.setExclude(Boolean.valueOf(exclude));
} else if (sel instanceof IColumn) {
// we ignore column since at the moment we dont know which table is there.
return;
} else {
filter = revEngDef.createTableFilter(cc);
filter.setExclude(Boolean.valueOf(exclude));
}
if (filter != null)
revEngDef.addTableFilter(filter);
}
} else {
ITableFilter filter = revEngDef.createTableFilter(cc);
// $NON-NLS-1$
filter.setMatchName(".*");
filter.setExclude(Boolean.valueOf(exclude));
revEngDef.addTableFilter(filter);
}
}
Aggregations