Diff for /FM2SQL/Attic/FM2SQL.java between versions 1.5 and 1.13

version 1.5, 2003/12/16 12:45:01 version 1.13, 2004/01/19 08:24:37
Line 2  import javax.swing.*; Line 2  import javax.swing.*;
 import javax.swing.event.*;  import javax.swing.event.*;
 import javax.swing.table.TableModel;  import javax.swing.table.TableModel;
   
 import Convert.DataBase;  
   
 import java.awt.event.*;  import java.awt.event.*;
 import java.awt.Dimension;  import java.awt.Dimension;
 import java.awt.FlowLayout;  
 import java.awt.*;  import java.awt.*;
 import java.sql.*;  import java.sql.*;
 import java.util.*;  import java.util.*;
Line 20  import java.io.*; Line 17  import java.io.*;
  * <br>   * <br>
  * The Database access is made over DBBean class   * The Database access is made over DBBean class
  * all other classes are just for the visualization of the data   * all other classes are just for the visualization of the data
  *  @version 0.2( first stable release)   *  @version 0.3( first stable release)
  *  @author rogo   *  @author rogo
  *   *
  */   */
 public class FM2SQL extends JFrame implements ActionListener, TableModelListener  public class FM2SQL extends JFrame implements ActionListener, TableModelListener
 {  {
     private JCheckBoxMenuItem convertItem;
     private JCheckBoxMenuItem appendItem;
     private JCheckBoxMenuItem updateItem;
     int mode = -1;
   /**    /**
   * The database Bean instance.    * The database Bean instance.
   *    *
Line 548  public class FM2SQL extends JFrame imple Line 549  public class FM2SQL extends JFrame imple
       {        {
       }        }
     }      }
       if (command == "Convert Mode")
       {
         System.out.println("Convert Mode selected");
               convert.setText("Convert Tables");
               convert.setActionCommand("Convert Tables");
         mode = Convert.DataBase.CONVERT_MODE;
       }
       if (command == "Append Mode")
       {
         System.out.println("Append Mode selected");
               convert.setText("Append Tables");
               convert.setActionCommand("Append Tables");
         mode = Convert.DataBase.APPEND_MODE; 
       }
       if (command == "Update Mode")
       {
         System.out.println("Update Mode selected");
               convert.setText("Update Tables");
               convert.setActionCommand("Update Tables");
         mode = Convert.DataBase.UPDATE_MODE; 
       }
    //writing config     //writing config
     if (command.equals("export XML Config"))      if (command.equals("save XML Config"))
     {      {
       if (configExportFileChooser == null)        if (configExportFileChooser == null)
       {        {
Line 583  public class FM2SQL extends JFrame imple Line 605  public class FM2SQL extends JFrame imple
       configExportFileChooser.showDialog(fmInstance, " Save ");        configExportFileChooser.showDialog(fmInstance, " Save ");
         
     }      }
     if (command.equals("import XML Config"))      if (command.equals("open XML Config"))
     {      {
       if (configImportFileChooser == null)        if (configImportFileChooser == null)
       {        {
Line 619  public class FM2SQL extends JFrame imple Line 641  public class FM2SQL extends JFrame imple
     }      }
               
             
     if (command.equals("Convert Tables"))      if (command.equals("Convert Tables")||command.equals("Append Tables"))
     {      {
   
       Thread thread = new Thread()        Thread thread = new Thread()
Line 634  public class FM2SQL extends JFrame imple Line 656  public class FM2SQL extends JFrame imple
       };        };
       thread.start();        thread.start();
     }      }
           if (command.equals("Update Tables"))
            {
   
                Thread thread = new Thread()
                {
                    public void run()
                    {
                        setEnabled(false);
                        update();
                        setEnabled(true);
                    }
   
                };
                thread.start();
            }
   
     if (command.equals("show Tables"))      if (command.equals("show Tables"))
     {      {
       Thread thread = new Thread()        Thread thread = new Thread()
Line 681  public class FM2SQL extends JFrame imple Line 719  public class FM2SQL extends JFrame imple
       };        };
       thread.start();        thread.start();
     }      }
     if(command.equals("Quit"))
      {
        fmInstance.dispose();
        System.exit(0);
     
      }
      
     }
       /**
        * Updates the content of source to destination and makes new table if necessary
        */
   
     public void update() 
     {
       Vector vectors[] = getListFromTable();
       Convert.user = bean.user;
       Convert.passwd = bean.passwd;
       Convert.userDest = destBean.user;
       Convert.passwdDest = destBean.passwd;
       try
       {
         fmInstance.setCursor(Cursor.getPredefinedCursor(Cursor.WAIT_CURSOR));
         fmInstance.setEnabled(false);
         Convert.update(bean.url, box4.getSelectedItem().toString(), vectors[0], vectors[1], vectors[2], vectors[3],vectors[4], mode);
   
         destBean.setConnection((String) box4.getSelectedItem());
         DefaultListModel model = new DefaultListModel();
         tables = destBean.getTableNames();
         for (int j = 0; j < tables.size(); ++j)
           model.addElement(tables.get(j));
         if (debug)
           System.out.println("hallo" + tables + " ");
         tListDest.setModel(model);
         fmInstance.setCursor(Cursor.getPredefinedCursor(Cursor.DEFAULT_CURSOR));
       } catch (Exception e4)
       {
         ByteArrayOutputStream b = new ByteArrayOutputStream();
         PrintStream stream = new PrintStream(b);
         e4.printStackTrace(stream);
         showErrorDialog(b.toString(), "Conversion of table failed");
         fmInstance.setEnabled(true);
       }
   
   }    }
   /**    /**
    * Copys the content of source to destination and makes new table if necessary     * Copys the content of source to destination and makes new table if necessary
Line 697  public class FM2SQL extends JFrame imple Line 778  public class FM2SQL extends JFrame imple
     {      {
       fmInstance.setCursor(Cursor.getPredefinedCursor(Cursor.WAIT_CURSOR));        fmInstance.setCursor(Cursor.getPredefinedCursor(Cursor.WAIT_CURSOR));
       fmInstance.setEnabled(false);        fmInstance.setEnabled(false);
       Convert.convert(bean.url, box4.getSelectedItem().toString(), vectors[0], vectors[1],vectors[2],vectors[3]);        Convert.convert(bean.url, box4.getSelectedItem().toString(), vectors[0], vectors[1],vectors[2],vectors[3],mode);
   
       destBean.setConnection((String) box4.getSelectedItem());        destBean.setConnection((String) box4.getSelectedItem());
       DefaultListModel model = new DefaultListModel();        DefaultListModel model = new DefaultListModel();
Line 723  public class FM2SQL extends JFrame imple Line 804  public class FM2SQL extends JFrame imple
     fmInstance.setEnabled(false);      fmInstance.setEnabled(false);
   
     Vector vectors[] = getListFromTable();      Vector vectors[] = getListFromTable();
     Convert.DataBase source = new Convert.DataBase(bean,vectors[0],vectors[1],vectors[2],vectors[3]);      if(convertItem.isSelected()) mode = Convert.DataBase.CONVERT_MODE;
     Convert.DataBase destination = new Convert.DataBase(destBean,new Vector(),new Vector(),new Vector(),new Vector());      else
           if(appendItem.isSelected()) mode = Convert.DataBase.APPEND_MODE;
           else
           if(updateItem.isSelected()) mode = Convert.DataBase.UPDATE_MODE;
       // TODO add id vector in table and write it out
       Convert.DataBase source = new Convert.DataBase(bean,vectors[0],vectors[1],vectors[2],vectors[3],vectors[4],mode);
       Convert.DataBase destination = new Convert.DataBase(destBean,new Vector(),new Vector(),new Vector(),new Vector(),new Vector(),-1);
         
     try      try
     {      {
Line 752  public class FM2SQL extends JFrame imple Line 839  public class FM2SQL extends JFrame imple
       fmInstance.setCursor(Cursor.getPredefinedCursor(Cursor.WAIT_CURSOR));        fmInstance.setCursor(Cursor.getPredefinedCursor(Cursor.WAIT_CURSOR));
       fmInstance.setEnabled(false);        fmInstance.setEnabled(false);
       Vector databases = Convert.getXMLConfig(file);        Vector databases = Convert.getXMLConfig(file);
       DataBase destBase = (DataBase) databases.lastElement();        Convert.DataBase destBase = (Convert.DataBase) databases.lastElement();
       //destBase.bean.getConnection();        //destBase.bean.getConnection();
       noUserUpdate = true;        noUserUpdate = true;
       destBean=destBase.bean;        destBean=destBase.bean;
Line 764  public class FM2SQL extends JFrame imple Line 851  public class FM2SQL extends JFrame imple
       for (Iterator iter = databases.iterator(); iter.hasNext();)        for (Iterator iter = databases.iterator(); iter.hasNext();)
       {        {
         Convert.DataBase database = (Convert.DataBase) iter.next();          Convert.DataBase database = (Convert.DataBase) iter.next();
           
           if (database.mode == Convert.DataBase.CONVERT_MODE)
           {
             convertItem.setSelected(true);
             convert.setText("Convert Tables");
             convert.setActionCommand("Convert Tables");
             mode = Convert.DataBase.CONVERT_MODE;
           } else if (database.mode == Convert.DataBase.APPEND_MODE)
           {
             appendItem.setSelected(true);
             convert.setText("Append Tables");
             convert.setActionCommand("Append Tables");
             mode = Convert.DataBase.APPEND_MODE;
           } else if (database.mode == Convert.DataBase.UPDATE_MODE)
           {
             updateItem.setSelected(true);
             convert.setText("Update Tables");
             convert.setActionCommand("Update Tables");
             mode = Convert.DataBase.UPDATE_MODE;
           }
         database.bean.getConnection();          database.bean.getConnection();
           
         bean = database.bean;          bean = database.bean;
         Object obj =bean.url;          Object obj =bean.url;
         ((DefaultComboBoxModel) box3.getModel()).removeElement(obj);          ((DefaultComboBoxModel) box3.getModel()).removeElement(obj);
Line 781  public class FM2SQL extends JFrame imple Line 889  public class FM2SQL extends JFrame imple
           if(index<0) throw new RuntimeException("Error table \""+table+"\" does no longer exist\n at server "+bean.url +"\n or you mispelled the tablename.");            if(index<0) throw new RuntimeException("Error table \""+table+"\" does no longer exist\n at server "+bean.url +"\n or you mispelled the tablename.");
           noDBUpdate = true;            noDBUpdate = true;
           tC.tableModel.setValueAt(new TableComponent.SQLCommand(database.selects.get(i).toString()),index,2);            tC.tableModel.setValueAt(new TableComponent.SQLCommand(database.selects.get(i).toString()),index,2);
                       
           String create =database.creates.get(i).toString();            String create =database.creates.get(i).toString();
           tC.tableModel.setValueAt(new TableComponent.SQLCommand(create.equals("") ? create:"           "+create),index,3);            tC.tableModel.setValueAt(new TableComponent.SQLCommand(create.equals("") ? create:"           "+create),index,3);
                       tC.tableModel.setValueAt(new TableComponent.SQLCommand(bean.ids.get(i).toString()),index,4);
   
           Object comboBox=tC.tableModel.getValueAt(index,1);            Object comboBox=tC.tableModel.getValueAt(index,1);
           indices[i] = index;            indices[i] = index;
           if(comboBox!=null) ((JComboBox)comboBox).setSelectedItem(database.layouts.get(i));              if(comboBox!=null) ((JComboBox)comboBox).setSelectedItem(database.layouts.get(i));  
Line 1059  public class FM2SQL extends JFrame imple Line 1170  public class FM2SQL extends JFrame imple
   {    {
     JMenuBar menubar = new JMenuBar();      JMenuBar menubar = new JMenuBar();
     JMenu menu = new JMenu("File");      JMenu menu = new JMenu("File");
        menu.setMnemonic('F');
       JMenuItem item = new JMenuItem("open XML Config");
           item.setToolTipText("opens a XML config file for batch conversion");
       item.setMnemonic('i');
       item.setAccelerator(KeyStroke.getKeyStroke('O',InputEvent.CTRL_DOWN_MASK));
         
     JMenuItem item = new JMenuItem("import XML Config");  
     item.addActionListener(fm);      item.addActionListener(fm);
     menu.add(item);      menu.add(item);
     item = new JMenuItem("export XML Config");      item = new JMenuItem("save XML Config");
           item.setToolTipText("saves the current selections in an XML config file for batch conversion");
       item.setAccelerator(KeyStroke.getKeyStroke('S',InputEvent.CTRL_DOWN_MASK));
       item.setMnemonic('x');
      
       item.addActionListener(fm);
       menu.add(item);
       item = new JMenuItem("Quit");
       item.setMnemonic('Q');
           item.setToolTipText("Quits the application");
       item.setAccelerator(KeyStroke.getKeyStroke('Q',InputEvent.CTRL_DOWN_MASK));
     item.addActionListener(fm);      item.addActionListener(fm);
     menu.add(item);      menu.add(item);
    
     menubar.add(menu);      menubar.add(menu);
     menu = new JMenu("Options");      menu = new JMenu("Options");
       menu.setMnemonic('O');
       
     item = new JMenuItem("show Driver features");      item = new JMenuItem("show Driver features");
           item.setToolTipText("shows the features of the selected driver");
     item.addActionListener(fm);      item.addActionListener(fm);
     menu.add(item);      menu.add(item);
     menubar.add(menu);      menubar.add(menu);
       
       ButtonGroup bgrp = new ButtonGroup();
       convertItem = new JCheckBoxMenuItem("Convert Mode");
           convertItem.setToolTipText("Normal table conversion  existing table will be deleted");
           convertItem.addActionListener(fm);
       
       bgrp.add(convertItem);
       
       menu.add(convertItem);
       menubar.add(menu);
    
           appendItem = new JCheckBoxMenuItem("Append Mode");
           appendItem.setToolTipText("Appends data to an existing table");
           appendItem.addActionListener(fm);
   
           bgrp.add(appendItem);
   
       menu.add(appendItem);
       menubar.add(menu);
   
           updateItem = new JCheckBoxMenuItem("Update Mode");
           updateItem.setToolTipText("Updates data in an existing table");
           updateItem.addActionListener(fm);
   
           bgrp.add(updateItem);
   
           menu.add(updateItem);
           menubar.add(menu);
     
     item.addActionListener(fm);      item.addActionListener(fm);
     menu.add(item);      menu.add(item);
       
Line 1081  public class FM2SQL extends JFrame imple Line 1237  public class FM2SQL extends JFrame imple
       
     menu.setBackground(fm.getBackground());      menu.setBackground(fm.getBackground());
     menubar.setBackground(fm.getBackground());      menubar.setBackground(fm.getBackground());
       convertItem.doClick();
     setJMenuBar(menubar);      setJMenuBar(menubar);
   }    }
   /**    /**
Line 1298  public class FM2SQL extends JFrame imple Line 1455  public class FM2SQL extends JFrame imple
     data[1].add("Layouts");      data[1].add("Layouts");
         data[1].add("select");          data[1].add("select");
     data[1].add("create");      data[1].add("create");
          data[1].add(" id ");
      // TODO add id vector DBBean
     data[0] = new Vector();      data[0] = new Vector();
   
     for (int i = 0; i < tableNames.size(); i++)      for (int i = 0; i < tableNames.size(); i++)
     {      {
       String name = tableNames.get(i).toString();        String name = tableNames.get(i).toString();
Line 1321  public class FM2SQL extends JFrame imple Line 1478  public class FM2SQL extends JFrame imple
       dataRow.add(new TableComponent.SQLCommand("select * from "+bean.getQC()+name+bean.getQC()));        dataRow.add(new TableComponent.SQLCommand("select * from "+bean.getQC()+name+bean.getQC()));
             
         data[0].add(dataRow);          data[0].add(dataRow);
       
       // create row
       dataRow.add(new TableComponent.SQLCommand(""));
       // id row
     dataRow.add(new TableComponent.SQLCommand(""));      dataRow.add(new TableComponent.SQLCommand(""));
           bean.ids.add("");
       //System.out.println(dataRow);        //System.out.println(dataRow);
     }      }
     tC.tableModel.setDataVector(data[0], data[1]);      tC.tableModel.setDataVector(data[0], data[1]);
Line 1332  public class FM2SQL extends JFrame imple Line 1494  public class FM2SQL extends JFrame imple
   }    }
   public Vector[] getListFromTable()    public Vector[] getListFromTable()
   {    {
     Vector[] vec = new Vector[4];      Vector[] vec = new Vector[5];
     vec[0] = new Vector();      vec[0] = new Vector();
     vec[1] = new Vector();      vec[1] = new Vector();
         vec[2] = new Vector();          vec[2] = new Vector();
     vec[3] = new Vector();      vec[3] = new Vector();
       vec[4] = new Vector();
     int[] rows = tC.table.getSelectedRows();      int[] rows = tC.table.getSelectedRows();
     for (int i = 0; i < rows.length; i++)      for (int i = 0; i < rows.length; i++)
     {      {
Line 1347  public class FM2SQL extends JFrame imple Line 1510  public class FM2SQL extends JFrame imple
       vec[1].add(layoutName);        vec[1].add(layoutName);
       vec[2].add(tC.tableModel.getValueAt(rows[i], 2).toString());        vec[2].add(tC.tableModel.getValueAt(rows[i], 2).toString());
       vec[3].add(tC.tableModel.getValueAt(rows[i], 3).toString());        vec[3].add(tC.tableModel.getValueAt(rows[i], 3).toString());
               vec[4].add(tC.tableModel.getValueAt(rows[i], 4).toString());
       
     }      }
     return vec;      return vec;

Removed from v.1.5  
changed lines
  Added in v.1.13


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>