001: package org.apache.ojb.tools.mapping.reversedb.gui.actions;
002:
003: /* Copyright 2002-2005 The Apache Software Foundation
004: *
005: * Licensed under the Apache License, Version 2.0 (the "License");
006: * you may not use this file except in compliance with the License.
007: * You may obtain a copy of the License at
008: *
009: * http://www.apache.org/licenses/LICENSE-2.0
010: *
011: * Unless required by applicable law or agreed to in writing, software
012: * distributed under the License is distributed on an "AS IS" BASIS,
013: * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
014: * See the License for the specific language governing permissions and
015: * limitations under the License.
016: */
017:
018: /**
019: *
020: * @author <a href="mailto:bfl@florianbruckner.com">Florian Bruckner</a>
021: * @version $Id: SaveXMLAction.java,v 1.1.2.1 2005/12/21 22:32:06 tomdz Exp $
022: */
023: public class SaveXMLAction extends javax.swing.AbstractAction {
024: org.apache.ojb.tools.mapping.reversedb.gui.JFrmMainFrame mainFrame;
025:
026: /** Creates a new instance of SaveXMLAction */
027: public SaveXMLAction(
028: org.apache.ojb.tools.mapping.reversedb.gui.JFrmMainFrame pmainFrame) {
029: super ();
030: mainFrame = pmainFrame;
031: this .putValue(NAME, "Save XML");
032: }
033:
034: public void actionPerformed(java.awt.event.ActionEvent actionEvent) {
035: // 1. Open a Filechooser dialog to get the path for the XML file to
036: // generate
037: javax.swing.JFileChooser fileChooser = new javax.swing.JFileChooser();
038: int rc = fileChooser.showSaveDialog(mainFrame);
039: if (rc == javax.swing.JFileChooser.APPROVE_OPTION) {
040: java.io.File f = fileChooser.getSelectedFile();
041: try {
042: if (!f.exists())
043: f.createNewFile();
044: if (f.canWrite()) {
045: java.io.PrintWriter pw = new java.io.PrintWriter(
046: new java.io.FileOutputStream(f));
047: mainFrame.getDBMeta().writeXML(pw);
048: pw.close();
049: }
050: } catch (java.io.FileNotFoundException fnfe) {
051: fnfe.printStackTrace();
052: } catch (java.io.IOException ioex) {
053: ioex.printStackTrace();
054: }
055: }
056: }
057:
058: }
059:
060: /***************************** Changelog *****************************
061: // $Log: SaveXMLAction.java,v $
062: // Revision 1.1.2.1 2005/12/21 22:32:06 tomdz
063: // Updated license
064: //
065: // Revision 1.1 2004/05/05 16:38:25 arminw
066: // fix fault
067: // wrong package structure used:
068: // org.apache.ojb.tools.reversdb
069: // org.apache.ojb.tools.reversdb2
070: //
071: // instead of
072: // org.apache.ojb.tools.mapping.reversdb
073: // org.apache.ojb.tools.mapping.reversdb2
074: //
075: // Revision 1.1 2004/05/04 13:44:59 arminw
076: // move reverseDB stuff
077: //
078: // Revision 1.7 2004/04/05 12:16:24 tomdz
079: // Fixed/updated license in files leftover from automatic license transition
080: //
081: // Revision 1.6 2004/04/04 23:53:42 brianm
082: // Fixed initial copyright dates to match cvs repository
083: //
084: // Revision 1.5 2004/03/11 18:16:23 brianm
085: // ASL 2.0
086: //
087: // Revision 1.4 2003/06/21 10:40:06 florianbruckner
088: // improve error reporting; use writeXML(PrintWriter) instead of getXML()
089: //
090: // Revision 1.3 2002/11/08 13:47:38 brj
091: // corrected some compiler warnings
092: //
093: // Revision 1.2 2002/06/17 19:34:34 jvanzyl
094: // Correcting all the package references.
095: // PR:
096: // Obtained from:
097: // Submitted by:
098: // Reviewed by:
099: //
100: // Revision 1.1.1.1 2002/06/17 18:16:54 jvanzyl
101: // Initial OJB import
102: //
103: // Revision 1.2 2002/05/16 11:47:09 florianbruckner
104: // fix CR/LF issue, change license to ASL
105: //
106: // Revision 1.1 2002/04/18 11:44:16 mpoeschl
107: //
108: // move files to new location
109: //
110: // Revision 1.1 2002/03/04 17:19:33 thma
111: // initial checking for Florians Reverse engineering tool
112: //
113: // Revision 1.1.1.1 2002/02/20 13:35:25 Administrator
114: // initial import
115: //
116: /***************************** Changelog *****************************/
|