--- FM2SQL/src/Convert.java 2005/02/07 13:01:58 1.2 +++ FM2SQL/src/Convert.java 2005/02/16 13:00:48 1.3 @@ -52,7 +52,7 @@ class Convert * Helper class for index creation * * @author rogo - * + * */ public static class IndexList extends Vector { @@ -127,12 +127,13 @@ class Convert System.setOut(stream); System.setErr(stream); } - readXMLFile(args[0]); + StringBuffer sb = readXMLFile(args[0]); + parseXMLConfig(sb); if (!(new File(args[0]).exists())) System.exit(0); 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, Vector ids, int mode, String delimiter) throws Exception @@ -202,7 +203,7 @@ class Convert query = "select * from " + bean.getQC() + names.get(tbIndex).toString() + bean.getQC(); String layout = (layouts.isEmpty()) ? "" : layouts.get(tbIndex).toString(); query = (selects != null) ? selects.get(tbIndex).toString() : query; - //if vectors[1].get(i) != null) + // if vectors[1].get(i) != null) if (layout != "") { query = addLayoutToQuery(names, query, tbIndex, layout); @@ -258,7 +259,7 @@ class Convert command.append("UPDATE "); command.append(beanDest.getQC()); command.append(destTableName); - //command.append(convertText((String) names.get(tbIndex))); + // command.append(convertText((String) names.get(tbIndex))); command.append(beanDest.getQC()); command.append(" SET "); @@ -274,7 +275,7 @@ class Convert while ((row = bean.getNextRow()) != null) { j++; - //print rows + // print rows Object obj = null; for (int k = 0; k < row.size(); ++k) { @@ -491,7 +492,7 @@ class Convert for (int i = 0; i < columnNames.size() - 1; ++i) { type = bean.metaData.getColumnTypeName(i + 1); - // System.out.println(i+" "+result[1].get(i)+" + // System.out.println(i+" "+result[1].get(i)+" // "+type); type = (type.equals("NUMBER")) ? "INT4" : type; type = (type.equals("CONTAINER")) ? "TEXT" : type; @@ -589,7 +590,7 @@ class Convert endIndex = k + deltaID; } System.out.println(endIndex); - //all data written ? if not write last chunk of data + // all data written ? if not write last chunk of data if (endIndex == vec.size() - 1) System.out.println("fits"); else @@ -753,7 +754,7 @@ class Convert if (alterMe.charAt(j) == ' ') { alterMe.setCharAt(j, '_'); - // if(j= 0 || xmlFile.indexOf("http://") >= 0) { @@ -1397,7 +1219,6 @@ class Convert stream = new FileInputStream(xmlFile); InputStreamReader isr = new InputStreamReader(stream, "UTF-8"); BufferedReader buffr = new BufferedReader(isr); - StringBuffer sb = new StringBuffer(); int c = 0; while ((c = buffr.read()) != -1) { @@ -1405,19 +1226,31 @@ class Convert sb.append(ch); // System.out.print((char)c); } - parseXMLConfig(sb); } catch (Exception e) { e.printStackTrace(); + } finally + { + + try + { + stream.close(); + } + catch (IOException e1) + { + // TODO Auto-generated catch block + e1.printStackTrace(); + } } + return sb; } /** - * Helper class for Conversion etc. Contains data needed for the conversion + * Helper class for Conversion etc. Contains data needed for the conversion * * @author rogo - * + * */ public static class ConversionProperties @@ -1443,7 +1276,7 @@ class Convert * Helper class for XML-File parsing Holds the parsed data * * @author rogo - * + * */ public static class DataBase { @@ -1625,8 +1458,8 @@ class Convert String query = null; try { - //bean.setConnection("jdbc:fmpro:http://141.14.237.74:8050"); - //bean.setConnection("jdbc:postgresql://erebos/test","postgres","rogo"); + // bean.setConnection("jdbc:fmpro:http://141.14.237.74:8050"); + // bean.setConnection("jdbc:postgresql://erebos/test","postgres","rogo"); bean.setConnection(source); if (names == null) names = bean.getTableNames(); @@ -1649,7 +1482,7 @@ class Convert query = "select * from " + bean.getQC() + names.get(tbIndex).toString() + bean.getQC(); String layout = (layouts.isEmpty()) ? "" : layouts.get(tbIndex).toString(); query = (selects != null) ? selects.get(tbIndex).toString() : query; - //if vectors[1].get(i) != null) + // if vectors[1].get(i) != null) if (layout != "") { layout = " layout " + bean.getQC() + layout + bean.getQC(); @@ -1690,7 +1523,7 @@ class Convert // for id kram Vector vec = null; Vector vecDest = null; - // tempo + // tempo beanDest.setConnection(destination); int rowCount = (idField != "") ? myIds.size() : bean.getRowCount(query); String tempID = bean.getQC() + idField + bean.getQC(); @@ -1729,7 +1562,7 @@ class Convert // System.out.println("ID LIST SIZE " + // Math.round((double) myIds.size() / (double) // numIntervalls) + " " + myIdsDest.size()); - /// @TODO complete delete task remove query show lines + // / @TODO complete delete task remove query show lines // to be deleted let user choose if he wants that System.out.println("number of lines to be deleted " + linesToDelete.size()); deltaID = (int) Math.round((double) myIds.size() / (double) numIntervalls); @@ -1766,7 +1599,7 @@ class Convert ++j; if (j == linesToDelete.size()) break; - //print rows + // print rows pstm.setString(1, linesToDelete.get(j).toString()); System.out.println(pstm.toString()); pstm.execute(); @@ -1780,7 +1613,7 @@ class Convert else tempQuery = query + " where " + tempID + ">'" + vec.lastElement() + "'"; - } //to outer while + } // to outer while } // to idfield if } // table loop @@ -1853,7 +1686,7 @@ class Convert query = "select * from " + bean.getQC() + names.get(tbIndex).toString() + bean.getQC(); String layout = (layouts.isEmpty()) ? "" : layouts.get(tbIndex).toString(); query = (selects != null) ? selects.get(tbIndex).toString() : query; - //if vectors[1].get(i) != null) + // if vectors[1].get(i) != null) if (!layout.equals("")) { query = addLayoutToQuery(names, query, tbIndex, layout); @@ -1891,7 +1724,7 @@ class Convert // for id kram Vector vec = null; Vector vecDest = null; - // tempo + // tempo beanDest.setConnection(destination); int rowCount = (idField != "") ? myIds.size() : bean.getRowCount(query); String tempID = bean.getQC() + idField + bean.getQC(); @@ -1924,7 +1757,7 @@ class Convert myIds = bean.getIDVector(ids.get(tbIndex).toString(), (String) names.get(tbIndex), tempQuery, 0); myIdsDest = beanDest.getIDVector(convertText(idField), destTableName, tempQueryDest, 0); - //System.out.println("status of remove + // System.out.println("status of remove // "+myIds.remove("b015892")); System.out.println("ids found for " + idField + " " + !myIds.isEmpty()); if (myIds.isEmpty()) @@ -1953,10 +1786,10 @@ class Convert PreparedStatement insPst = beanDest.getConnection().prepareStatement(insCommand.toString()); PreparedStatement updPst = beanDest.getConnection().prepareStatement(updCommand.toString()); delPSt = beanDest.getConnection().prepareStatement(delCommand.toString()); - // delPSt.setString(1,"b015892"); - // delPSt.execute(); - // if (true) - // return; + // delPSt.setString(1,"b015892"); + // delPSt.execute(); + // if (true) + // return; if (vec.size() <= numIntervalls) { endIndex = 0; @@ -1984,7 +1817,7 @@ class Convert endIndex = k + deltaID; } System.out.println(endIndex); - //all data written ? if not write last chunk of data + // all data written ? if not write last chunk of data if (endIndex == vec.size() - 1) System.out.println("fits"); else @@ -1998,7 +1831,7 @@ class Convert System.out.println(tempQuery); if (dialog != null) dialog.title.setText("Reading table data ..."); - // bean.makeQuery(tempQuery, 0); + // bean.makeQuery(tempQuery, 0); if (dialog != null) dialog.title.setText("Writing table data ..."); performSynchronize(idField, vec, tempQuery, linesToDelete, linesToAppend, insPst, updPst, delPSt, deltaID, delimiter, dialog); @@ -2030,9 +1863,9 @@ class Convert if (destTables.contains(indexName)) { stm.execute("DROP INDEX " + destTableName + "_" + indexField); - // continue; + // continue; } - // stm.execute("DROP INDEX + // stm.execute("DROP INDEX // "+destTableName+"_"+indexField); String type = beanDest.getColumnType(indexField).toLowerCase(); @@ -2044,7 +1877,7 @@ class Convert { if (beanDest.url.indexOf("mysql") >= 0) { - //System.out.println("CREATE INDEX " + + // System.out.println("CREATE INDEX " + // indexName + " ON " + destTableName + " (" + // indexField + "(10))"); // TODO problem if index exist !!! @@ -2068,7 +1901,7 @@ class Convert } } - // CREATE UNIQUE INDEX title_idx ON films (title); + // CREATE UNIQUE INDEX title_idx ON films (title); for (Iterator iter = linesToDelete.iterator(); iter.hasNext();) { String id = (String) iter.next(); @@ -2121,7 +1954,7 @@ class Convert Vector[] vectors = bean.getQueryData(tempQuery, deltaID); int count = 0, size = vectors[0].size(); int idIndex = vectors[1].indexOf(idField); - //System.out.println(idIndex + " " + vectors[1] + " " + idField); + // System.out.println(idIndex + " " + vectors[1] + " " + idField); // todo arraylist code has to be added if (dialog != null) dialog.title.setText("Synchronize with new data"); @@ -2161,8 +1994,8 @@ class Convert updPst.setNull(l + 1, Types.NULL); } updPst.setString(line.size() + 1, line.get(idIndex).toString()); - //updPst.addBatch(); - //updPst.execute(); + // updPst.addBatch(); + // updPst.execute(); } if (dialog != null) { @@ -2171,7 +2004,7 @@ class Convert count++; } } - //updPst.executeBatch(); + // updPst.executeBatch(); } // to method /** @@ -3735,7 +3568,7 @@ class Convert StringBuffer command = new StringBuffer(); command.append("INSERT INTO "); command.append(beanDest.getQC()); - command.append(destTableName); //convertText((String) + command.append(destTableName); // convertText((String) // names.get(tbIndex))); command.append(beanDest.getQC()); command.append(" ("); @@ -3780,7 +3613,7 @@ class Convert command.append("DELETE FROM"); command.append(beanDest.getQC()); command.append(destTableName); - //command.append(convertText((String) names.get(tbIndex))); + // command.append(convertText((String) names.get(tbIndex))); command.append(beanDest.getQC()); command.append("WHERE " + idField + " = ?"); return command; @@ -3794,7 +3627,7 @@ class Convert bean.getConnection(); ResultSet resultSet = null; - String lastResult = "P227634.11";//"P227625.79554";//"P227625.77391";//"P116034.970998"; + String lastResult = "P227634.11";// "P227625.79554";//"P227625.77391";//"P116034.970998"; String myQuery = "select " + bean.getQC() + idField + bean.getQC() + ",serial " + " from " + bean.getQC() + table + bean.getQC(); System.out.println("Query is now " + myQuery); JDialog statusDialog = new JDialog(); @@ -3841,7 +3674,7 @@ class Convert } System.exit(0); - //****** end Test ****** + // ****** end Test ****** } } \ No newline at end of file