[Squirrel-sql-commits] sql12/plugins/sqlparam/src/net/sourceforge/squirrel_sql/plugins/sqlparam SQ
A Java SQL client for any JDBC compliant database
Brought to you by:
colbell,
gerdwagner
From: Rob M. <man...@us...> - 2007-05-05 13:53:48
|
Update of /cvsroot/squirrel-sql/sql12/plugins/sqlparam/src/net/sourceforge/squirrel_sql/plugins/sqlparam In directory sc8-pr-cvs8.sourceforge.net:/tmp/cvs-serv4603/plugins/sqlparam/src/net/sourceforge/squirrel_sql/plugins/sqlparam Modified Files: SQLParamPlugin.java Log Message: Unregister sql execution listeners on unload. Index: SQLParamPlugin.java =================================================================== RCS file: /cvsroot/squirrel-sql/sql12/plugins/sqlparam/src/net/sourceforge/squirrel_sql/plugins/sqlparam/SQLParamPlugin.java,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** SQLParamPlugin.java 24 Apr 2007 20:41:30 -0000 1.1 --- SQLParamPlugin.java 5 May 2007 13:53:45 -0000 1.2 *************** *** 17,20 **** --- 17,21 ---- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ + import java.util.HashMap; import java.util.Hashtable; import java.util.Map; *************** *** 28,31 **** --- 29,33 ---- import net.sourceforge.squirrel_sql.client.session.ISQLPanelAPI; import net.sourceforge.squirrel_sql.client.session.ISession; + import net.sourceforge.squirrel_sql.client.session.event.ISQLExecutionListener; import net.sourceforge.squirrel_sql.fw.gui.GUIUtils; import net.sourceforge.squirrel_sql.fw.util.log.ILogger; *************** *** 46,49 **** --- 48,58 ---- Map<String, String> cache; + /** + * Remember which sqlpanelapis we've registered listeners with so that we + * can unregister them when it's time to unload. + */ + HashMap<ISQLPanelAPI, ISQLExecutionListener> panelListenerMap = + new HashMap<ISQLPanelAPI, ISQLExecutionListener>(); + /** * Return the internal name of this plugin. *************** *** 155,159 **** public void unload() { ! /* Nothing to do to unload */ } --- 164,170 ---- public void unload() { ! for (ISQLPanelAPI api : panelListenerMap.keySet()) { ! api.removeSQLExecutionListener(panelListenerMap.get(api)); ! } } *************** *** 226,231 **** { log.info("Adding SQL execution listener."); ! sqlPaneAPI.addSQLExecutionListener(new SQLParamExecutionListener(plugin, session)); ! } --- 237,244 ---- { log.info("Adding SQL execution listener."); ! ISQLExecutionListener listener = ! new SQLParamExecutionListener(plugin, session); ! sqlPaneAPI.addSQLExecutionListener(listener); ! panelListenerMap.put(sqlPaneAPI, listener); } |