private void writeHeader(Database db, int numberOfTables, int numberOfViews, boolean showIds, boolean hasRelationships, boolean hasOrphans, LineWriter html) throws IOException, SQLException {
private void writeHeader(Database db, int numberOfTables, int numberOfViews, boolean showIds, boolean hasRelationships, boolean hasOrphans, LineWriter html) throws IOException {
    private void writeHeader(Database db, int numberOfTables, int numberOfViews, boolean showIds, boolean hasRelationships, boolean hasOrphans, LineWriter html) throws IOException, SQLException {        writeHeader(db, null, null, hasRelationships, hasOrphans, html);        html.writeln("<table width='100%'>");        html.writeln(" <tr><td class='container'>");        writeGeneratedBy(db.getConnectTime(), html);        html.writeln(" </td></tr>");        html.writeln(" <tr>");        html.write("  <td class='container'>Database Type: ");        html.write(db.getDatabaseProduct());        html.writeln("  </td>");        html.writeln("  <td class='container' align='right' valign='top' rowspan='3'>");        if (sourceForgeLogoEnabled())            html.writeln("    <a href='http://sourceforge.net' target='_blank'><img src='http://sourceforge.net/sflogo.php?group_id=137197&amp;type=1' alt='SourceForge.net' border='0' height='31' width='88'></a><br>");        html.write("    <br/>");        writeFeedMe(html);        html.writeln("  </td>");        html.writeln(" </tr>");        html.writeln(" <tr>");        html.write("  <td class='container'><br/>");        html.write("<a href='insertionOrder.txt' title='Useful for loading data into a database'>Insertion Order</a>&nbsp;");        html.write("<a href='deletionOrder.txt' title='Useful for purging data from a database'>Deletion Order</a>");        html.write("&nbsp;(for database loading/purging scripts)");        html.writeln("</td>");        html.writeln(" </tr>");        html.writeln("</table>");        html.writeln("<div class='indent'>");        html.write("<p/><b>");        html.write(String.valueOf(numberOfTables));        html.write(" Tables");        if (numberOfViews > 0) {            html.write(" and ");            html.write(String.valueOf(numberOfViews));            html.write(" View");            if (numberOfViews != 1)                html.write("s");        }        html.writeln(":</b>");        html.writeln("<TABLE class='dataTable' border='1' rules='groups'>");        html.writeln("<colgroup>");        html.writeln("<colgroup>");        html.writeln("<colgroup>");        html.writeln("<colgroup>");        if (showIds)            html.writeln("<colgroup>");        html.writeln("<thead align='left'>");        html.writeln("<tr>");        html.writeln("  <th valign='bottom'>Table</th>");        if (showIds)            html.writeln("  <th align='center' valign='bottom'>ID</th>");        html.writeln("  <th align='right' valign='bottom'>Children</th>");        html.writeln("  <th align='right' valign='bottom'>Parents</th>");        html.writeln("  <th align='right' valign='bottom'>Rows</th>");        html.writeln("</tr>");        html.writeln("</thead>");        html.writeln("<tbody>");    }