[Squirrel-sql-commits] sql12/plugins/hibernate/src/net/sourceforge/squirrel_sql/plugins/hibernate
A Java SQL client for any JDBC compliant database
Brought to you by:
colbell,
gerdwagner
Update of /cvsroot/squirrel-sql/sql12/plugins/hibernate/src/net/sourceforge/squirrel_sql/plugins/hibernate In directory sc8-pr-cvs8.sourceforge.net:/tmp/cvs-serv11152/plugins/hibernate/src/net/sourceforge/squirrel_sql/plugins/hibernate Modified Files: HibernatePlugin.java HibernateTabController.java Added Files: HibernatePrefsListener.java Log Message: Open Hibernate config from within a Session Index: HibernatePlugin.java =================================================================== RCS file: /cvsroot/squirrel-sql/sql12/plugins/hibernate/src/net/sourceforge/squirrel_sql/plugins/hibernate/HibernatePlugin.java,v retrieving revision 1.10 retrieving revision 1.11 diff -C2 -d -r1.10 -r1.11 *** HibernatePlugin.java 30 Aug 2007 23:13:07 -0000 1.10 --- HibernatePlugin.java 7 Sep 2007 03:49:19 -0000 1.11 *************** *** 23,26 **** --- 23,27 ---- private HibernatePluginResources _resources; private HashMap<IIdentifier, HibernateTabController> _hqlTabControllerBySessionID = new HashMap<IIdentifier, HibernateTabController>(); + private HibernatePrefsListener _curHibernatePrefsListener; public String getInternalName() *************** *** 101,107 **** session.getSessionSheet().insertMainTab(hibernateTabController, 2, false); - //initCodeCompletion(hibernateTabController); - - return new PluginSessionCallback() { --- 102,105 ---- *************** *** 129,131 **** --- 127,142 ---- return _resources; } + + public void setHibernatePrefsListener(HibernatePrefsListener hibernatePrefsListener) + { + _curHibernatePrefsListener = hibernatePrefsListener; + } + + public HibernatePrefsListener removeHibernatePrefsListener() + { + HibernatePrefsListener buf = _curHibernatePrefsListener; + _curHibernatePrefsListener = null; + return buf; + + } } Index: HibernateTabController.java =================================================================== RCS file: /cvsroot/squirrel-sql/sql12/plugins/hibernate/src/net/sourceforge/squirrel_sql/plugins/hibernate/HibernateTabController.java,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** HibernateTabController.java 30 Aug 2007 23:13:07 -0000 1.1 --- HibernateTabController.java 7 Sep 2007 03:49:19 -0000 1.2 *************** *** 13,17 **** import net.sourceforge.squirrel_sql.plugins.hibernate.configuration.HibernateConfigController; import net.sourceforge.squirrel_sql.plugins.hibernate.configuration.HibernateConfigPanel; - import net.sourceforge.squirrel_sql.plugins.hibernate.configuration.HibernatePrefsTab; import net.sourceforge.squirrel_sql.plugins.hibernate.mapping.MappedObjectPanelManager; --- 13,16 ---- *************** *** 114,120 **** --- 113,142 ---- private void onOpenConfigs() { + _plugin.setHibernatePrefsListener(new HibernatePrefsListener() + { + public void configurationChanged(ArrayList<HibernateConfiguration> changedCfgs) + { + onConfigurationChanged(changedCfgs); + } + + public HibernateConfiguration getPreselectedCfg() + { + return onGetPreselectedCfg(); + } + }); GlobalPreferencesSheet.showSheet(_plugin.getApplication(), HibernateConfigPanel.class); } + private HibernateConfiguration onGetPreselectedCfg() + { + return (HibernateConfiguration) _panel.cboConfigurations.getSelectedItem(); + } + + private void onConfigurationChanged(ArrayList<HibernateConfiguration> changedCfgs) + { + HibernateConfiguration selCfg = (HibernateConfiguration) _panel.cboConfigurations.getSelectedItem(); + loadConfigs(changedCfgs, selCfg.getName()); + } + private void loadConfigsFromXml() *************** *** 124,145 **** File pluginUserSettingsFolder = _plugin.getPluginUserSettingsFolder(); - File xmlFile = new File(pluginUserSettingsFolder.getPath(), HibernateConfigController.HIBERNATE_CONFIGS_XML_FILE); ! if(xmlFile.exists()) ! { ! reader.load(xmlFile, _plugin.getClass().getClassLoader()); ! HashMap cfgByName = new HashMap(); ! for (Object o : reader) ! { ! HibernateConfiguration cfg = (HibernateConfiguration) o; ! cfgByName.put(cfg.getName(), cfg); ! _panel.cboConfigurations.addItem(cfg); ! } ! _panel.cboConfigurations.setSelectedItem(cfgByName.get(Preferences.userRoot().get(PREF_KEY_LAST_SELECTED_CONFIG, null))); } } --- 146,174 ---- File pluginUserSettingsFolder = _plugin.getPluginUserSettingsFolder(); File xmlFile = new File(pluginUserSettingsFolder.getPath(), HibernateConfigController.HIBERNATE_CONFIGS_XML_FILE); ! if (xmlFile.exists()) ! { ! reader.load(xmlFile, _plugin.getClass().getClassLoader()); ! loadConfigs(reader, Preferences.userRoot().get(PREF_KEY_LAST_SELECTED_CONFIG, null)); ! } ! } + private void loadConfigs(Iterable reader, String cfgNameToSelect) + { + _panel.cboConfigurations.removeAllItems(); ! HashMap<String, HibernateConfiguration> cfgByName = new HashMap<String, HibernateConfiguration>(); ! for (Object o : reader) ! { ! HibernateConfiguration cfg = (HibernateConfiguration) o; ! cfgByName.put(cfg.getName(), cfg); ! _panel.cboConfigurations.addItem(cfg); ! } ! if(null != cfgNameToSelect) ! { ! _panel.cboConfigurations.setSelectedItem(cfgByName.get(cfgNameToSelect)); } } --- NEW FILE: HibernatePrefsListener.java --- package net.sourceforge.squirrel_sql.plugins.hibernate; import net.sourceforge.squirrel_sql.plugins.hibernate.configuration.HibernateConfiguration; import java.util.ArrayList; public interface HibernatePrefsListener { void configurationChanged(ArrayList<HibernateConfiguration> changedCfg); HibernateConfiguration getPreselectedCfg(); } |