package com.quantum.actions;
+import com.quantum.ImageStore;
import com.quantum.Messages;
-import com.quantum.QuantumPlugin;
-import com.quantum.adapters.AdapterFactory;
import com.quantum.adapters.DatabaseAdapter;
-import com.quantum.model.Bookmark;
-import com.quantum.sql.SQLResults;
-import com.quantum.view.ViewHelper;
import com.quantum.view.bookmark.EntityNode;
-import com.quantum.view.tableview.TableView;
import org.eclipse.ui.IViewPart;
* @param view
*/
public NextSequenceAction(IViewPart view) {
- super(Messages.getString(NextSequenceAction.class.getName() + ".text"), view);
- setImageDescriptor(QuantumPlugin.getImageDescriptor("append.gif"));
+ super(Messages.getString(NextSequenceAction.class, "text"), view);
+ setImageDescriptor(ImageStore.getImageDescriptor(ImageStore.APPEND));
}
- public void run() {
- EntityNode node = getEntityNode();
- String name = null;
- if (node.isSequence()) {
- EntityNode sequence = (EntityNode) node;
- Bookmark bookmark = sequence.getBookmark();
- DatabaseAdapter adapter = AdapterFactory.getInstance().getAdapter(bookmark.getType());
- if (adapter == null) return;
- name = sequence.getName();
- String query = adapter.getNextValue(name, sequence.getEntity().getSchema());
-
- SQLResults results = ViewHelper.tryGetResults(view, getConnection(), query);
- if (results != null && ! results.isError())
- TableView.getInstance().loadQuery(bookmark, results);
- }
+ /**
+ * @param sequence
+ * @param name
+ * @param adapter
+ * @return
+ */
+ protected String getQuery(EntityNode sequence, String name, DatabaseAdapter adapter) {
+ return adapter.getNextValue(name, sequence.getEntity().getSchema());
}
}