From: SVN by r. <sv...@ca...> - 2008-08-19 20:32:59
|
Author: roy Date: 2008-08-19 22:32:51 +0200 (Tue, 19 Aug 2008) New Revision: 292 Modified: src/main/java/nl/improved/sqlclient/AbstractSQLShellWindow.java Log: some code cleanups Modified: src/main/java/nl/improved/sqlclient/AbstractSQLShellWindow.java =================================================================== --- src/main/java/nl/improved/sqlclient/AbstractSQLShellWindow.java 2008-08-19 20:30:37 UTC (rev 291) +++ src/main/java/nl/improved/sqlclient/AbstractSQLShellWindow.java 2008-08-19 20:32:51 UTC (rev 292) @@ -1629,10 +1629,28 @@ return false; } } + private abstract class ReadDumpCommand implements Command { + public static final String DATE_FORMAT = "yyyyMMddHHmmss"; + + boolean isBinary(int columnType) { + if (columnType == Types.BINARY || + columnType == Types.BLOB || + columnType == Types.CLOB || + columnType == Types.LONGNVARCHAR || + columnType == Types.LONGVARBINARY || + columnType == Types.LONGVARCHAR || + columnType == Types.NCLOB || + columnType == Types.OTHER) { + return true; + } + return false; + + } + } /** * Writes the result of a query into a dump file so that it can be read back. */ - private class DumpCommand implements Command { + private class DumpCommand extends ReadDumpCommand { private String fileName; @Override @@ -1672,7 +1690,7 @@ Connection c = DBConnector.getInstance().getConnection(); Statement stmt = c.createStatement(); ResultSet rs = stmt.executeQuery(query); - SimpleDateFormat formatter = new SimpleDateFormat("yyyyMMddHHmmss"); + SimpleDateFormat formatter = new SimpleDateFormat(DATE_FORMAT); while (rs.next()) { atts.clear(); hd.startElement("","","row",atts); @@ -1687,14 +1705,7 @@ String dateString = formatter.format(date); hd.characters(dateString.toCharArray(), 0, dateString.length()); } - } else if (metaData.getColumnType(col) == Types.BINARY || - metaData.getColumnType(col) == Types.BLOB || - metaData.getColumnType(col) == Types.CLOB || - metaData.getColumnType(col) == Types.LONGNVARCHAR || - metaData.getColumnType(col) == Types.LONGVARBINARY || - metaData.getColumnType(col) == Types.LONGVARCHAR || - metaData.getColumnType(col) == Types.NCLOB || - metaData.getColumnType(col) == Types.OTHER) { + } else if (isBinary(metaData.getColumnType(col))) { atts.addAttribute("","","type","","binary"); hd.startElement("","","col",atts); @@ -1786,7 +1797,7 @@ /** * Read the result of a dump file. */ - private class ReadCommand implements Command { + private class ReadCommand extends ReadDumpCommand { private String fileName; @Override @@ -1834,7 +1845,7 @@ query = query + values +")"; Connection c = DBConnector.getInstance().getConnection(); PreparedStatement pstmt = c.prepareStatement(query); - SimpleDateFormat formatter = new SimpleDateFormat("yyyyMMddHHmmss"); + SimpleDateFormat formatter = new SimpleDateFormat(DATE_FORMAT); for (int nodeNr = 0; nodeNr < nodeList.getLength(); nodeNr++) { Element row = (Element) nodeList.item(nodeNr); // row NodeList columns = row.getElementsByTagName("col"); |