Diff for /FM2SQL/Attic/Convert.java between versions 1.4 and 1.10

version 1.4, 2004/01/08 11:03:12 version 1.10, 2004/01/15 13:26:06
Line 61  class Convert Line 61  class Convert
    System.out.println("Finished!");     System.out.println("Finished!");
     //convert("jdbc:fmpro:http://141.14.237.74:8050","jdbc:postgresql://erebos/test",null,null);      //convert("jdbc:fmpro:http://141.14.237.74:8050","jdbc:postgresql://erebos/test",null,null);
   }    }
   public static void  convertBatch(DBBean source,DBBean destination,Vector names,Vector layouts,Vector selects,Vector creates) throws Exception    public static void  convertBatch(DBBean source,DBBean destination,Vector names,Vector layouts,Vector selects,Vector creates,int mode) throws Exception
   {    {
    /*FM2SQL.ProgressDialog dialog = new  FM2SQL.ProgressDialog(FM2SQL.fmInstance);     /*FM2SQL.ProgressDialog dialog = new  FM2SQL.ProgressDialog(FM2SQL.fmInstance);
    dialog.setTitle("Conversion running ...");     dialog.setTitle("Conversion running ...");
Line 139  class Convert Line 139  class Convert
         // System.out.println(beanDest.getTableNames(beanDest.getCatalogs().get(2).toString()));          // System.out.println(beanDest.getTableNames(beanDest.getCatalogs().get(2).toString()));
         stm = beanDest.getConnection().createStatement();          stm = beanDest.getConnection().createStatement();
         // System.exit(0);          // System.exit(0);
       if(true)         if(mode==Convert.DataBase.CONVERT_MODE) 
       {        {
         if(tables.indexOf(names.get(tbIndex))>=0)           if(tables.indexOf(names.get(tbIndex))>=0) 
         {          {
Line 307  class Convert Line 307  class Convert
   
   
   
   public static void  convert(String source,String destination,Vector names,Vector layouts,Vector selects,Vector creates) throws Exception    public static void  convert(String source,String destination,Vector names,Vector layouts,Vector selects,Vector creates,int mode) throws Exception
   {    {
    FM2SQL.ProgressDialog dialog = new  FM2SQL.ProgressDialog(FM2SQL.fmInstance);     FM2SQL.ProgressDialog dialog = new  FM2SQL.ProgressDialog(FM2SQL.fmInstance);
    dialog.setTitle("Conversion running ...");     dialog.setTitle("Conversion running ...");
Line 377  class Convert Line 377  class Convert
         // System.out.println(beanDest.getTableNames(beanDest.getCatalogs().get(2).toString()));          // System.out.println(beanDest.getTableNames(beanDest.getCatalogs().get(2).toString()));
         stm = beanDest.getConnection().createStatement();          stm = beanDest.getConnection().createStatement();
         // System.exit(0);          // System.exit(0);
       if(true)         if(mode==Convert.DataBase.CONVERT_MODE) 
       {        {
         if(tables.indexOf(names.get(tbIndex))>=0)           if(tables.indexOf(names.get(tbIndex))>=0) 
         {          {
Line 627  class Convert Line 627  class Convert
         alterMe.delete(j, j);           alterMe.delete(j, j); 
         length--;          length--;
       }        }
               else
               alterMe.setCharAt(j,'_');
     }      }
   
     ++j;      ++j;
Line 786  class Convert Line 788  class Convert
       Vector layouts = new Vector();        Vector layouts = new Vector();
       Vector selects = new Vector();        Vector selects = new Vector();
       Vector creates = new Vector();        Vector creates = new Vector();
               Vector ids     = new Vector();
         int mode = -1;
             
       try        try
       {        {
Line 801  class Convert Line 805  class Convert
           layouts = new Vector();            layouts = new Vector();
           selects = new Vector();            selects = new Vector();
           creates = new Vector();            creates = new Vector();
             ids     = new Vector();
          // parse dataBase           // parse dataBase
           Node node = root.find("convert/source/database/url", new int[] { 1, 1, i, 1 });            Node node = root.find("convert/source/database/url", new int[] { 1, 1, i, 1 });
           Node node1 = root.find("convert/source/database/user", new int[] { 1, 1, i, 1, 1 });            Node node1 = root.find("convert/source/database/user", new int[] { 1, 1, i, 1, 1 });
           Node node2 = root.find("convert/source/database/password", new int[] { 1, 1, i, 1, 1 });            Node node2 = root.find("convert/source/database/password", new int[] { 1, 1, i, 1, 1 });
           Node node3 = root.find("convert/source/database", new int[] { 1, 1, i});            Node node3 = root.find("convert/source/database", new int[] { 1, 1, i});
                   Node nodeMode = root.find("convert/source/database/mode/", new int[] {1, 1, i, 1,1});
   
           if(node3== null) throw new Error("parse error database tag missing");            if(node3== null) throw new Error("parse error database tag missing");
           if(node==null) throw new Error("parse error url tag missing");            if(node==null) throw new Error("parse error url tag missing");
           if(node1==null) throw new Error("parse error user tag missing");            if(node1==null) throw new Error("parse error user tag missing");
Line 819  class Convert Line 825  class Convert
           System.out.println(node.name + " " + node.getCharacters());            System.out.println(node.name + " " + node.getCharacters());
           System.out.println(node1.name + " " + node1.getCharacters());            System.out.println(node1.name + " " + node1.getCharacters());
           System.out.println(node2.name + " " + node2.getCharacters());            System.out.println(node2.name + " " + node2.getCharacters());
                    String modeString = "";
             if (nodeMode == null)
               modeString = "convert";
             else
               modeString = nodeMode.getCharacters();
             if (modeString.equals("convert"))
               mode = DataBase.CONVERT_MODE;
             else
               if (modeString.equals("append"))
                 mode = DataBase.APPEND_MODE;
               else
                 if (modeString.equals("update"))
                   mode = DataBase.UPDATE_MODE;
        //   if(node3!=null)         //   if(node3!=null)
          // System.out.println(node3.name);           // System.out.println(node3.name);
                       
Line 843  class Convert Line 861  class Convert
             // if(node6==null) throw new Error("parse error create tag missing");              // if(node6==null) throw new Error("parse error create tag missing");
             String name = (String)node4.attributes.get("name");              String name = (String)node4.attributes.get("name");
             String layout = (String)node4.attributes.get("layout");              String layout = (String)node4.attributes.get("layout");
               String id = (String)node4.attributes.get("id");
               System.out.println("id was "+id);
             if(name==null) throw new Error("parse error required table tag attribute name missing");              if(name==null) throw new Error("parse error required table tag attribute name missing");
             if(layout==null) layout ="";              if(layout==null) layout ="";
               if(id==null)  id = "";
             if(name.equals("")) throw new Error("parse error table tag attribute must not be empty");              if(name.equals("")) throw new Error("parse error table tag attribute must not be empty");
             tables.add(name);              tables.add(name);
             layouts.add(layout);              layouts.add(layout);
               ids.add(id);
             String query = (node5==null) ? "":node5.getCharacters();               String query = (node5==null) ? "":node5.getCharacters(); 
             if(query.equals("")) System.err.println("Warning empty select tag or  select tag missing !!");              if(query.equals("")) System.err.println("Warning empty select tag or  select tag missing !!");
             query = (query.equals("")) ? "select * from "+database.getQC()+name+database.getQC():query;              query = (query.equals("")) ? "select * from "+database.getQC()+name+database.getQC():query;
Line 857  class Convert Line 879  class Convert
               creates.add("");                creates.add("");
                           
           }            }
           databases.add(new DataBase(database, tables, layouts, selects,creates));            databases.add(new DataBase(database, tables, layouts, selects,creates,ids,mode));
         }          }
         DBBean database = new DBBean();          DBBean database = new DBBean();
         // parse dataBase          // parse dataBase
Line 874  class Convert Line 896  class Convert
        for (Iterator iter = databases.iterator(); iter.hasNext();)         for (Iterator iter = databases.iterator(); iter.hasNext();)
       {        {
         DataBase db = (DataBase) iter.next();          DataBase db = (DataBase) iter.next();
         convertBatch(db.bean,database,db.tables,db.layouts,db.selects,db.creates);          convertBatch(db.bean,database,db.tables,db.layouts,db.selects,db.creates,mode);
                   
       }        }
         // printContents(node3);          // printContents(node3);
Line 1003  class Convert Line 1025  class Convert
        Vector layouts = new Vector();         Vector layouts = new Vector();
        Vector selects = new Vector();         Vector selects = new Vector();
        Vector creates = new Vector();         Vector creates = new Vector();
          Vector ids     = new Vector();
             
          int mode = -1;
        try         try
        {         {
          Node tempNode = root.find("convert/source", new int[] { 1, 1 });           Node tempNode = root.find("convert/source", new int[] { 1, 1 });
Line 1018  class Convert Line 1042  class Convert
            layouts = new Vector();             layouts = new Vector();
            selects = new Vector();             selects = new Vector();
            creates = new Vector();             creates = new Vector();
              ids     = new Vector();
           // parse dataBase            // parse dataBase
            Node node = root.find("convert/source/database/url", new int[] { 1, 1, i, 1 });             Node node = root.find("convert/source/database/url", new int[] { 1, 1, i, 1 });
            Node node1 = root.find("convert/source/database/user", new int[] { 1, 1, i, 1, 1 });             Node node1 = root.find("convert/source/database/user", new int[] { 1, 1, i, 1, 1 });
            Node node2 = root.find("convert/source/database/password", new int[] { 1, 1, i, 1, 1 });             Node node2 = root.find("convert/source/database/password", new int[] { 1, 1, i, 1, 1 });
            Node node3 = root.find("convert/source/database", new int[] { 1, 1, i});             Node node3 = root.find("convert/source/database", new int[] { 1, 1, i});
              Node nodeMode = root.find("convert/source/database/mode", new int[] { 1, 1, i, 1, 1 });
              
            if(node3== null) throw new Error("parse error database tag missing");             if(node3== null) throw new Error("parse error database tag missing");
            if(node==null) throw new Error("parse error url tag missing");             if(node==null) throw new Error("parse error url tag missing");
            if(node1==null) throw new Error("parse error user tag missing");             if(node1==null) throw new Error("parse error user tag missing");
Line 1036  class Convert Line 1062  class Convert
            System.out.println(node.name + " " + node.getCharacters());             System.out.println(node.name + " " + node.getCharacters());
            System.out.println(node1.name + " " + node1.getCharacters());             System.out.println(node1.name + " " + node1.getCharacters());
            System.out.println(node2.name + " " + node2.getCharacters());             System.out.println(node2.name + " " + node2.getCharacters());
              String modeString = "";  
             if (nodeMode == null)
               modeString = "convert";
             else
               modeString = nodeMode.getCharacters();
             if (modeString.equals("convert"))
               mode = DataBase.CONVERT_MODE;
             else
               if (modeString.equals("append"))
                 mode = DataBase.APPEND_MODE;
               else
                 if (modeString.equals("update"))
                   mode = DataBase.UPDATE_MODE;
                
                 
         //   if(node3!=null)          //   if(node3!=null)
           // System.out.println(node3.name);            // System.out.println(node3.name);
Line 1060  class Convert Line 1100  class Convert
              // if(node6==null) throw new Error("parse error create tag missing");               // if(node6==null) throw new Error("parse error create tag missing");
              String name = (String)node4.attributes.get("name");               String name = (String)node4.attributes.get("name");
              String layout = (String)node4.attributes.get("layout");               String layout = (String)node4.attributes.get("layout");
                String id = (String)node4.attributes.get("id");
                System.out.println("id was "+id);
            
              if(name==null) throw new Error("parse error required table tag attribute name missing");               if(name==null) throw new Error("parse error required table tag attribute name missing");
              if(layout==null) layout ="";               if(layout==null) layout ="";
                if(id == null)  id="";
              if(name.equals("")) throw new Error("parse error table tag attribute must not be empty");               if(name.equals("")) throw new Error("parse error table tag attribute must not be empty");
              tables.add(name);               tables.add(name);
              layouts.add(layout);               layouts.add(layout);
                ids.add(id);
              String query = (node5==null) ? "":node5.getCharacters();                String query = (node5==null) ? "":node5.getCharacters(); 
              if(query.equals("")) System.err.println("Warning empty select tag or  select tag missing !!");               if(query.equals("")) System.err.println("Warning empty select tag or  select tag missing !!");
              query = (query.equals("")) ? "select * from "+database.getQC()+name+database.getQC():query;               query = (query.equals("")) ? "select * from "+database.getQC()+name+database.getQC():query;
Line 1074  class Convert Line 1119  class Convert
                creates.add("");                 creates.add("");
                           
            }             }
            databases.add(new DataBase(database, tables, layouts, selects,creates));             databases.add(new DataBase(database, tables, layouts, selects,creates,ids,mode));
          }           }
          DBBean database = new DBBean();           DBBean database = new DBBean();
          // parse dataBase           // parse dataBase
Line 1087  class Convert Line 1132  class Convert
          System.out.println(url);           System.out.println(url);
          database.setURL(url.trim());           database.setURL(url.trim());
          database.setUserAndPasswd(user.trim(), password.trim());           database.setUserAndPasswd(user.trim(), password.trim());
          databases.add(new DataBase(database,null,null,null,null));           databases.add(new DataBase(database,null,null,null,null,null,0));
          //databases.add(database);           //databases.add(database);
     /*    for (Iterator iter = databases.iterator(); iter.hasNext();)      /*    for (Iterator iter = databases.iterator(); iter.hasNext();)
        {         {
Line 1167  public static class DataBase Line 1212  public static class DataBase
   Vector selects;    Vector selects;
   Vector layouts;    Vector layouts;
   Vector tables;    Vector tables;
   public DataBase(DBBean bean,Vector tables,Vector layouts,Vector selects,Vector creates)    Vector ids;
     final static int CONVERT_MODE = 1;
       final static int APPEND_MODE  = 2;
       final static int UPDATE_MODE  = 3;
     int mode = -1;
     
     public DataBase(DBBean bean,Vector tables,Vector layouts,Vector selects,Vector creates,Vector ids,int mode)
   {    {
     this.bean = bean;      this.bean = bean;
     this.tables = tables;      this.tables = tables;
     this.layouts = layouts;      this.layouts = layouts;
     this.selects = selects;      this.selects = selects;
     this.creates = creates;      this.creates = creates;
       this.ids     = ids;
       this.mode = mode;
   }    }
   public void exportToXML(BufferedWriter buffr) throws Exception    public void exportToXML(BufferedWriter buffr) throws Exception
    {     {
Line 1181  public static class DataBase Line 1234  public static class DataBase
      buffr.write("      <url>"+bean.url+"</url>\n");       buffr.write("      <url>"+bean.url+"</url>\n");
      buffr.write("      <user>"+bean.user+"</user>\n");       buffr.write("      <user>"+bean.user+"</user>\n");
      buffr.write("      <password>"+bean.passwd+"</password>\n");       buffr.write("      <password>"+bean.passwd+"</password>\n");
        String modeString ="";
       if (mode == CONVERT_MODE)
         modeString = "convert";
       else
         if (mode == APPEND_MODE)
           modeString = "append";
         else
           if (mode == UPDATE_MODE)
             modeString = "update";
   
        buffr.write("      <mode>"+ modeString+"</mode>\n");
      int index = 0;       int index = 0;
      while(index<tables.size())       while(index<tables.size())
      {       {
Line 1189  public static class DataBase Line 1252  public static class DataBase
        String layout=(String)layouts.get(index);         String layout=(String)layouts.get(index);
        String select=(String)selects.get(index);         String select=(String)selects.get(index);
        String create=(String)creates.get(index);         String create=(String)creates.get(index);
          String id=(String)ids.get(index);
         
        buffr.write("      <table name = \""+table+"\" layout = \""+layout+"\">\n");         buffr.write("      <table name = \""+table+"\" layout = \""+layout+"\" id = \""+id+"\" +>\n");
        buffr.write("         <select>"+ convertToEntities(select)+"</select>\n");         buffr.write("         <select>"+ convertToEntities(select)+"</select>\n");
        if(!create.equals(""))         if(!create.equals(""))
        buffr.write("         <create>"+create+"         </create>\n");          buffr.write("         <create>"+create+"         </create>\n"); 

Removed from v.1.4  
changed lines
  Added in v.1.10


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