Revision: 6125
http://squirrel-sql.svn.sourceforge.net/squirrel-sql/?rev=6125&view=rev
Author: manningr
Date: 2011-01-02 22:33:59 +0000 (Sun, 02 Jan 2011)
Log Message:
-----------
Allow PluginResources implementation to be injected. Modifed test to support new plugin tests.
Modified Paths:
--------------
trunk/sql12/plugins/sqlbookmark/src/main/java/net/sourceforge/squirrel_sql/plugins/sqlbookmark/AddBookmarkAction.java
trunk/sql12/plugins/sqlbookmark/src/main/java/net/sourceforge/squirrel_sql/plugins/sqlbookmark/CompleteBookmarkAction.java
trunk/sql12/plugins/sqlbookmark/src/main/java/net/sourceforge/squirrel_sql/plugins/sqlbookmark/EditBookmarksAction.java
trunk/sql12/plugins/sqlbookmark/src/main/java/net/sourceforge/squirrel_sql/plugins/sqlbookmark/RunBookmarkAction.java
trunk/sql12/plugins/sqlbookmark/src/main/java/net/sourceforge/squirrel_sql/plugins/sqlbookmark/SQLBookmarkPlugin.java
trunk/sql12/plugins/sqlbookmark/src/test/java/net/sourceforge/squirrel_sql/plugins/sqlbookmark/SQLBookmarkPluginTest.java
Modified: trunk/sql12/plugins/sqlbookmark/src/main/java/net/sourceforge/squirrel_sql/plugins/sqlbookmark/AddBookmarkAction.java
===================================================================
--- trunk/sql12/plugins/sqlbookmark/src/main/java/net/sourceforge/squirrel_sql/plugins/sqlbookmark/AddBookmarkAction.java 2011-01-02 22:33:31 UTC (rev 6124)
+++ trunk/sql12/plugins/sqlbookmark/src/main/java/net/sourceforge/squirrel_sql/plugins/sqlbookmark/AddBookmarkAction.java 2011-01-02 22:33:59 UTC (rev 6125)
@@ -26,7 +26,7 @@
import net.sourceforge.squirrel_sql.client.session.ISQLPanelAPI;
import net.sourceforge.squirrel_sql.client.session.ISession;
import net.sourceforge.squirrel_sql.client.session.action.ISQLPanelAction;
-import net.sourceforge.squirrel_sql.fw.util.Resources;
+import net.sourceforge.squirrel_sql.fw.util.IResources;
/**
* Prompt for name and add a new bookmark into the system.
@@ -40,11 +40,11 @@
transient private ISession session;
transient private SQLBookmarkPlugin plugin;
- public AddBookmarkAction(IApplication app, Resources rsrc,
+ public AddBookmarkAction(IApplication app, IResources resources,
SQLBookmarkPlugin plugin)
throws IllegalArgumentException
{
- super(app, rsrc);
+ super(app, resources);
if (plugin == null)
{
throw new IllegalArgumentException("null IPlugin passed");
Modified: trunk/sql12/plugins/sqlbookmark/src/main/java/net/sourceforge/squirrel_sql/plugins/sqlbookmark/CompleteBookmarkAction.java
===================================================================
--- trunk/sql12/plugins/sqlbookmark/src/main/java/net/sourceforge/squirrel_sql/plugins/sqlbookmark/CompleteBookmarkAction.java 2011-01-02 22:33:31 UTC (rev 6124)
+++ trunk/sql12/plugins/sqlbookmark/src/main/java/net/sourceforge/squirrel_sql/plugins/sqlbookmark/CompleteBookmarkAction.java 2011-01-02 22:33:59 UTC (rev 6125)
@@ -17,19 +17,17 @@
*/
package net.sourceforge.squirrel_sql.plugins.sqlbookmark;
+import java.awt.Color;
+import java.awt.event.ActionEvent;
+
import net.sourceforge.squirrel_sql.client.IApplication;
import net.sourceforge.squirrel_sql.client.action.SquirrelAction;
-import net.sourceforge.squirrel_sql.client.plugin.PluginResources;
import net.sourceforge.squirrel_sql.client.session.ISQLEntryPanel;
-import net.sourceforge.squirrel_sql.client.session.ISession;
import net.sourceforge.squirrel_sql.fw.completion.CompletionInfo;
import net.sourceforge.squirrel_sql.fw.completion.Completor;
import net.sourceforge.squirrel_sql.fw.completion.CompletorListener;
+import net.sourceforge.squirrel_sql.fw.util.IResources;
-import javax.swing.text.JTextComponent;
-import java.awt.event.ActionEvent;
-import java.awt.*;
-
public class CompleteBookmarkAction extends SquirrelAction
{
private ISQLEntryPanel _sqlEntryPanel;
@@ -37,9 +35,9 @@
private SQLBookmarkPlugin _plugin;
- public CompleteBookmarkAction(IApplication app, PluginResources rsrc, ISQLEntryPanel sqlEntryPanel, SQLBookmarkPlugin plugin)
+ public CompleteBookmarkAction(IApplication app, IResources resources, ISQLEntryPanel sqlEntryPanel, SQLBookmarkPlugin plugin)
{
- super(app, rsrc);
+ super(app, resources);
_sqlEntryPanel = sqlEntryPanel;
_plugin = plugin;
Modified: trunk/sql12/plugins/sqlbookmark/src/main/java/net/sourceforge/squirrel_sql/plugins/sqlbookmark/EditBookmarksAction.java
===================================================================
--- trunk/sql12/plugins/sqlbookmark/src/main/java/net/sourceforge/squirrel_sql/plugins/sqlbookmark/EditBookmarksAction.java 2011-01-02 22:33:31 UTC (rev 6124)
+++ trunk/sql12/plugins/sqlbookmark/src/main/java/net/sourceforge/squirrel_sql/plugins/sqlbookmark/EditBookmarksAction.java 2011-01-02 22:33:59 UTC (rev 6125)
@@ -1,27 +1,27 @@
package net.sourceforge.squirrel_sql.plugins.sqlbookmark;
+import java.awt.event.ActionEvent;
+
+import net.sourceforge.squirrel_sql.client.IApplication;
import net.sourceforge.squirrel_sql.client.action.SquirrelAction;
+import net.sourceforge.squirrel_sql.client.preferences.GlobalPreferencesSheet;
+import net.sourceforge.squirrel_sql.client.session.ISession;
import net.sourceforge.squirrel_sql.client.session.action.ISessionAction;
-import net.sourceforge.squirrel_sql.client.session.ISession;
+import net.sourceforge.squirrel_sql.client.session.event.SQLPanelAdapter;
import net.sourceforge.squirrel_sql.client.session.event.SQLPanelEvent;
-import net.sourceforge.squirrel_sql.client.session.event.SQLPanelAdapter;
-import net.sourceforge.squirrel_sql.client.IApplication;
-import net.sourceforge.squirrel_sql.client.preferences.GlobalPreferencesSheet;
-import net.sourceforge.squirrel_sql.fw.util.Resources;
+import net.sourceforge.squirrel_sql.fw.util.IResources;
-import java.awt.event.ActionEvent;
-
public class EditBookmarksAction extends SquirrelAction
implements ISessionAction
{
private SQLBookmarkPlugin _plugin;
private ISession _session;
- public EditBookmarksAction(IApplication app, Resources rsrc,
+ public EditBookmarksAction(IApplication app, IResources resources,
SQLBookmarkPlugin plugin)
throws IllegalArgumentException
{
- super(app, rsrc);
+ super(app, resources);
if (plugin == null)
{
throw new IllegalArgumentException("null IPlugin passed");
Modified: trunk/sql12/plugins/sqlbookmark/src/main/java/net/sourceforge/squirrel_sql/plugins/sqlbookmark/RunBookmarkAction.java
===================================================================
--- trunk/sql12/plugins/sqlbookmark/src/main/java/net/sourceforge/squirrel_sql/plugins/sqlbookmark/RunBookmarkAction.java 2011-01-02 22:33:31 UTC (rev 6124)
+++ trunk/sql12/plugins/sqlbookmark/src/main/java/net/sourceforge/squirrel_sql/plugins/sqlbookmark/RunBookmarkAction.java 2011-01-02 22:33:59 UTC (rev 6125)
@@ -31,7 +31,7 @@
import net.sourceforge.squirrel_sql.client.session.ISQLPanelAPI;
import net.sourceforge.squirrel_sql.client.session.ISession;
import net.sourceforge.squirrel_sql.client.session.action.ISQLPanelAction;
-import net.sourceforge.squirrel_sql.fw.util.Resources;
+import net.sourceforge.squirrel_sql.fw.util.IResources;
/**
* Initiates execution of a bookmark when user clicks on a bookmark
@@ -54,11 +54,11 @@
*/
transient private SQLBookmarkPlugin plugin;
- public RunBookmarkAction(IApplication app, Resources rsrc,
+ public RunBookmarkAction(IApplication app, IResources resources,
SQLBookmarkPlugin plugin)
throws IllegalArgumentException
{
- super(app, rsrc);
+ super(app, resources);
if (plugin == null)
{
throw new IllegalArgumentException("null IPlugin passed");
Modified: trunk/sql12/plugins/sqlbookmark/src/main/java/net/sourceforge/squirrel_sql/plugins/sqlbookmark/SQLBookmarkPlugin.java
===================================================================
--- trunk/sql12/plugins/sqlbookmark/src/main/java/net/sourceforge/squirrel_sql/plugins/sqlbookmark/SQLBookmarkPlugin.java 2011-01-02 22:33:31 UTC (rev 6124)
+++ trunk/sql12/plugins/sqlbookmark/src/main/java/net/sourceforge/squirrel_sql/plugins/sqlbookmark/SQLBookmarkPlugin.java 2011-01-02 22:33:59 UTC (rev 6125)
@@ -35,17 +35,18 @@
import net.sourceforge.squirrel_sql.client.IApplication;
import net.sourceforge.squirrel_sql.client.action.ActionCollection;
-import net.sourceforge.squirrel_sql.client.action.SquirrelAction;
import net.sourceforge.squirrel_sql.client.gui.session.ObjectTreeInternalFrame;
import net.sourceforge.squirrel_sql.client.gui.session.SQLInternalFrame;
import net.sourceforge.squirrel_sql.client.plugin.DefaultSessionPlugin;
+import net.sourceforge.squirrel_sql.client.plugin.IPluginResourcesFactory;
import net.sourceforge.squirrel_sql.client.plugin.PluginException;
-import net.sourceforge.squirrel_sql.client.plugin.PluginResources;
+import net.sourceforge.squirrel_sql.client.plugin.PluginResourcesFactory;
import net.sourceforge.squirrel_sql.client.plugin.PluginSessionCallback;
import net.sourceforge.squirrel_sql.client.preferences.IGlobalPreferencesPanel;
import net.sourceforge.squirrel_sql.client.session.ISQLPanelAPI;
import net.sourceforge.squirrel_sql.client.session.ISession;
import net.sourceforge.squirrel_sql.fw.gui.GUIUtils;
+import net.sourceforge.squirrel_sql.fw.util.IResources;
import net.sourceforge.squirrel_sql.fw.util.log.ILogger;
import net.sourceforge.squirrel_sql.fw.util.log.LoggerController;
@@ -84,8 +85,18 @@
private static ILogger logger =
LoggerController.createLogger(SQLBookmarkPlugin.class);
- private PluginResources resources;
+ private IResources _resources;
+ private IPluginResourcesFactory _resourcesFactory = new PluginResourcesFactory();
+ /**
+ * @param resourcesFactory the resourcesFactory to set
+ */
+ public void setResourcesFactory(IPluginResourcesFactory resourcesFactory)
+ {
+ _resourcesFactory = resourcesFactory;
+ }
+
+
/**
* The bookmark menu
*/
@@ -180,9 +191,9 @@
*
* @return plugin resources.
*/
- protected PluginResources getResources()
+ protected IResources getResources()
{
- return resources;
+ return _resources;
}
/**
@@ -193,7 +204,7 @@
*/
protected String getResourceString(String name)
{
- return resources.getString(name);
+ return _resources.getString(name);
}
/**
@@ -232,7 +243,7 @@
IApplication app = getApplication();
// Load resources such as menu items, etc...
- resources = new SQLBookmarkResources(RESOURCE_PATH, this);
+ _resources = _resourcesFactory.createResource(RESOURCE_PATH, this);
bookmarkManager = new BookmarkManager(this);
// Load plugin preferences.
@@ -249,9 +260,9 @@
}
ActionCollection coll = app.getActionCollection();
- coll.add(new AddBookmarkAction(app, resources, this));
- coll.add(new EditBookmarksAction(app, resources, this));
- coll.add(new RunBookmarkAction(app, resources, this));
+ coll.add(new AddBookmarkAction(app, _resources, this));
+ coll.add(new EditBookmarksAction(app, _resources, this));
+ coll.add(new RunBookmarkAction(app, _resources, this));
createMenu();
rebuildMenu();
@@ -284,11 +295,11 @@
sqlInternalFrame.addToToolsPopUp("bookmarkedit", coll.get(EditBookmarksAction.class));
ISQLPanelAPI sqlPaneAPI = sqlInternalFrame.getSQLPanelAPI();
- CompleteBookmarkAction cba = new CompleteBookmarkAction(sess.getApplication(), resources, sqlPaneAPI.getSQLEntryPanel(), SQLBookmarkPlugin.this);
+ CompleteBookmarkAction cba = new CompleteBookmarkAction(sess.getApplication(), _resources, sqlPaneAPI.getSQLEntryPanel(), SQLBookmarkPlugin.this);
JMenuItem item = sqlPaneAPI.addToSQLEntryAreaMenu(cba);
- resources.configureMenuItem(cba, item);
+ _resources.configureMenuItem(cba, item);
JComponent comp = sqlPaneAPI.getSQLEntryPanel().getTextComponent();
- comp.registerKeyboardAction(cba, resources.getKeyStroke(cba), JComponent.WHEN_ANCESTOR_OF_FOCUSED_COMPONENT);
+ comp.registerKeyboardAction(cba, _resources.getKeyStroke(cba), JComponent.WHEN_ANCESTOR_OF_FOCUSED_COMPONENT);
sqlInternalFrame.addToToolsPopUp("bookmarkselect", cba);
}
@@ -311,14 +322,14 @@
ISQLPanelAPI sqlPaneAPI = session.getSessionInternalFrame().getSQLPanelAPI();
CompleteBookmarkAction cba =
new CompleteBookmarkAction(session.getApplication(),
- resources,
+ _resources,
sqlPaneAPI.getSQLEntryPanel(),
SQLBookmarkPlugin.this);
JMenuItem item = sqlPaneAPI.addToSQLEntryAreaMenu(cba);
- resources.configureMenuItem(cba, item);
+ _resources.configureMenuItem(cba, item);
JComponent comp = sqlPaneAPI.getSQLEntryPanel().getTextComponent();
comp.registerKeyboardAction(cba,
- resources.getKeyStroke(cba),
+ _resources.getKeyStroke(cba),
JComponent.WHEN_ANCESTOR_OF_FOCUSED_COMPONENT);
session.getSessionInternalFrame().addToToolsPopUp("bookmarkselect", cba);
}
@@ -331,7 +342,7 @@
ActionCollection coll = getApplication().getActionCollection();
menu.removeAll();
- resources.addToMenu(coll.get(AddBookmarkAction.class), menu);
+ _resources.addToMenu(coll.get(AddBookmarkAction.class), menu);
menu.add(new JSeparator());
for (Iterator<Bookmark> i = bookmarkManager.iterator(); i.hasNext();)
@@ -367,7 +378,7 @@
{
IApplication app = getApplication();
- menu = resources.createMenu(IMenuResourceKeys.BOOKMARKS);
+ menu = _resources.createMenu(IMenuResourceKeys.BOOKMARKS);
app.addToMenu(IApplication.IMenuIDs.SESSION_MENU, menu);
}
@@ -382,10 +393,7 @@
IApplication app = getApplication();
ActionCollection coll = app.getActionCollection();
- SquirrelAction action =
- (SquirrelAction) coll.get(RunBookmarkAction.class);
-
- JMenuItem item = new JMenuItem(action);
+ JMenuItem item = new JMenuItem(coll.get(RunBookmarkAction.class));
item.setText(bookmark.getName());
menu.add(item);
Modified: trunk/sql12/plugins/sqlbookmark/src/test/java/net/sourceforge/squirrel_sql/plugins/sqlbookmark/SQLBookmarkPluginTest.java
===================================================================
--- trunk/sql12/plugins/sqlbookmark/src/test/java/net/sourceforge/squirrel_sql/plugins/sqlbookmark/SQLBookmarkPluginTest.java 2011-01-02 22:33:31 UTC (rev 6124)
+++ trunk/sql12/plugins/sqlbookmark/src/test/java/net/sourceforge/squirrel_sql/plugins/sqlbookmark/SQLBookmarkPluginTest.java 2011-01-02 22:33:59 UTC (rev 6125)
@@ -18,26 +18,20 @@
*/
package net.sourceforge.squirrel_sql.plugins.sqlbookmark;
-import net.sourceforge.squirrel_sql.client.plugin.AbstractPluginTest;
+import net.sourceforge.squirrel_sql.client.plugin.AbstractSessionPluginTest;
import net.sourceforge.squirrel_sql.client.plugin.DatabaseProductVersionData;
-import net.sourceforge.squirrel_sql.plugins.sqlbookmark.SQLBookmarkPlugin;
+import net.sourceforge.squirrel_sql.client.plugin.IPlugin;
-import org.junit.After;
-import org.junit.Before;
+public class SQLBookmarkPluginTest extends AbstractSessionPluginTest implements DatabaseProductVersionData
+{
-public class SQLBookmarkPluginTest extends AbstractPluginTest implements DatabaseProductVersionData
-{
- @Before
- public void setUp() throws Exception
+ @Override
+ protected IPlugin getPluginToTest() throws Exception
{
- classUnderTest = new SQLBookmarkPlugin();
- }
+ SQLBookmarkPlugin result = new SQLBookmarkPlugin();
+ result.setResourcesFactory(mockIPluginResourcesFactory);
+ return result;
+ }
- @After
- public void tearDown() throws Exception
- {
- classUnderTest = null;
- }
-
}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|