01: package net.sourceforge.squirrel_sql.plugins.exportconfig.action;
02:
03: /*
04: * Copyright (C) 2003 Colin Bell
05: * colbell@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 java.awt.event.ActionEvent;
22:
23: import net.sourceforge.squirrel_sql.fw.util.Resources;
24:
25: import net.sourceforge.squirrel_sql.client.IApplication;
26: import net.sourceforge.squirrel_sql.client.action.SquirrelAction;
27:
28: import net.sourceforge.squirrel_sql.plugins.exportconfig.ExportConfigPlugin;
29:
30: /**
31: * This <TT>Action</TT> will allow the user to export configuration information
32: * to the file system.
33: *
34: * @author <A HREF="mailto:colbell@users.sourceforge.net">Colin Bell</A>
35: */
36: public class ExportConfigurationAction extends SquirrelAction {
37: /** Application API. */
38: private final IApplication _app;
39:
40: /** Current plugin. */
41: private final ExportConfigPlugin _plugin;
42:
43: /**
44: * Ctor.
45: *
46: * @param app Application API.
47: * @param rsrc Plugins resources.
48: * @param plugin This plugin.
49: *
50: * @throws IllegalArgumentException
51: * Thrown if a <TT>null</TT> <TT>IApplication</TT>,
52: * <TT>Resources</TT> or <TT>ExportConfigPlugin</TT> passed.
53: */
54: public ExportConfigurationAction(IApplication app, Resources rsrc,
55: ExportConfigPlugin plugin) {
56: super (app, rsrc);
57: if (app == null) {
58: throw new IllegalArgumentException("IApplication == null");
59: }
60: if (rsrc == null) {
61: throw new IllegalArgumentException("Resources == null");
62: }
63: if (plugin == null) {
64: throw new IllegalArgumentException(
65: "ExportConfigPlugin == null");
66: }
67:
68: _app = app;
69: _plugin = plugin;
70: }
71:
72: public void actionPerformed(ActionEvent evt) {
73: // try
74: // {
75: new ExportConfigurationCommand(getParentFrame(evt), _plugin)
76: .execute();
77: // }
78: // catch (BaseException ex)
79: // {
80: // _app.showErrorDialog("Error exporting", ex);
81: // }
82: }
83: }
|