01: package net.sourceforge.squirrel_sql.client.session.mainpanel;
02:
03: /*
04: * Copyright (C) 2003 Jason Height
05: * jmheight@users.sourceforge.net
06: *
07: * This library is free software; you can redistribute it and/or
08: * modify it under the terms of the GNU Lesser General Public
09: * License as published by the Free Software Foundation; either
10: * version 2.1 of the License, or (at your option) any later version.
11: *
12: * This library is distributed in the hope that it will be useful,
13: * but WITHOUT ANY WARRANTY; without even the implied warranty of
14: * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15: * Lesser General Public License for more details.
16: *
17: * You should have received a copy of the GNU Lesser General Public
18: * License along with this library; if not, write to the Free Software
19: * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
20: */
21: import javax.swing.JComponent;
22:
23: import net.sourceforge.squirrel_sql.client.session.ISQLEntryPanel;
24: import net.sourceforge.squirrel_sql.client.session.ISQLPanelAPI;
25: import net.sourceforge.squirrel_sql.client.session.ISession;
26:
27: /**
28: * This is the interface that can store executors for SQL.
29: *
30: */
31: public interface ISQLResultExecuter {
32: /** The factory interface that will create ISQLResultExecuter objects
33: * that will be attached to SQLPanels. The factory is required because
34: * there will be potentially many sqlpanels for a session each with their own
35: * set of resultexecuters
36: */
37: public static interface ISQLResultExecuterFactory {
38: public ISQLResultExecuter createSQLResultExecuter(
39: ISession session, ISQLPanelAPI sqlpanel);
40: }
41:
42: /** Returns the title of this executor.*/
43: public String getTitle();
44:
45: public JComponent getComponent();
46:
47: public void execute(ISQLEntryPanel parent);
48:
49: /**
50: * Returns the currently selected ResultTab.
51: * @return
52: */
53: public IResultTab getSelectedResultTab();
54: }
|