package com.quantum.wizards;
-import com.quantum.Messages;
-import com.quantum.adapters.AdapterFactory;
-import com.quantum.adapters.DatabaseAdapter;
-import com.quantum.model.Bookmark;
-import com.quantum.model.Entity;
-
import org.eclipse.swt.SWT;
import org.eclipse.swt.events.ModifyEvent;
import org.eclipse.swt.events.ModifyListener;
import org.eclipse.swt.widgets.Label;
import org.eclipse.swt.widgets.Text;
+import com.quantum.Messages;
+import com.quantum.adapters.DatabaseAdapter;
+import com.quantum.model.Bookmark;
+import com.quantum.model.Column;
+import com.quantum.model.Entity;
+
public class DeleteRowPage extends BaseSQLPage implements SQLPage {
String[] columnNames;
Text[] values;
whereValues[i] = new Button(container, SWT.CHECK);
whereValues[i].setText(Messages.getString("DeleteRowPage.WhereClause")); //$NON-NLS-1$
// we check if it's a primary key to select it in the WHERE clause
- if (entity != null && entity.getColumn(columnNames[i]).isPrimaryKey()) {
- whereValues[i].setSelection(true);
- } else {
- whereValues[i].setSelection(false);
- }
+ Column column = getColumn(entity, columnNames[i]);
+ whereValues[i].setSelection(column == null ? false : column.isPrimaryKey());
whereValues[i].addSelectionListener(new SelectionListener() {
public void widgetDefaultSelected(SelectionEvent e) {
}
StringBuffer whereClause = new StringBuffer();
Bookmark bookmark = row.getBookmark();
Entity entity = row.getEntity();
- DatabaseAdapter adapter = AdapterFactory.getInstance().getAdapter(bookmark.getType());
+ DatabaseAdapter adapter = bookmark.getAdapter();
int numSelected = 0;
for (int i = 0; i < columnNames.length; i++) {