package uk.ac.leeds.ccg.andyt.web.SoGWebPages; import java.io.BufferedReader; import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; import java.io.InputStreamReader; import java.io.StreamTokenizer; import java.util.Calendar; public abstract class WebContentWriter { /** Creates a new instance of RegressionPlots */ public WebContentWriter() { } public void writeHTML( String baseURL, String directory, String filenamePrefix, String filenameSuffix ) throws IOException { FileOutputStream a_FileOutputStream = new FileOutputStream( new File( directory, filenamePrefix + filenameSuffix + ".xhtml2.0.html" ) ); byte[] lineSeparator = System.getProperty("line.separator").getBytes(); writeHTMLDTD( lineSeparator, a_FileOutputStream ); writeHTMLHead( lineSeparator, filenamePrefix, a_FileOutputStream ); writeHTMLBody( lineSeparator, baseURL, filenamePrefix, filenameSuffix, a_FileOutputStream ); a_FileOutputStream.flush(); a_FileOutputStream.close(); } public void writeHTMLBodyFooter( byte[] lineSeparator, String baseURL, String filenamePrefix, FileOutputStream a_FileOutputStream ) throws IOException { a_FileOutputStream.write( new String( "" ).getBytes() ); a_FileOutputStream.write( lineSeparator ); a_FileOutputStream.write( new String( "
" ).getBytes() ); a_FileOutputStream.write( lineSeparator ); a_FileOutputStream.write( new String( "" ).getBytes() ); a_FileOutputStream.write( lineSeparator ); a_FileOutputStream.write( new String( "
" ).getBytes() ); a_FileOutputStream.write( lineSeparator ); a_FileOutputStream.write( new String( "" ).getBytes() ); a_FileOutputStream.write( lineSeparator ); a_FileOutputStream.write( new String( "" ).getBytes() ); } public abstract void writeHTMLBodyMain( byte[] lineSeparator, String baseURL, String filenamePrefix, String filenameSuffix, FileOutputStream a_FileOutputStream ) throws IOException; public void writeHTMLBodyStart( byte[] lineSeparator, String baseURL, String filenamePrefix, String filenameSuffix, FileOutputStream a_FileOutputStream ) throws IOException { a_FileOutputStream.write( new String( "" ).getBytes() ); a_FileOutputStream.write( lineSeparator ); a_FileOutputStream.write( new String( "
" ).getBytes() ); a_FileOutputStream.write( lineSeparator ); } public void writeHTMLBody( byte[] lineSeparator, String baseURL, String filenamePrefix, String filenameSuffix, FileOutputStream a_FileOutputStream ) throws IOException { writeHTMLBodyStart( lineSeparator, baseURL, filenamePrefix, filenameSuffix, a_FileOutputStream ); writeHTMLBodyMain( lineSeparator, baseURL, filenamePrefix, filenameSuffix, a_FileOutputStream ); writeHTMLBodyFooter( lineSeparator, baseURL, filenamePrefix, a_FileOutputStream ); } public void writeHTMLHead( byte[] lineSeparator, String filenamePrefix, FileOutputStream a_FileOutputStream ) throws IOException { a_FileOutputStream.write( new String( "" ).getBytes() ); a_FileOutputStream.write( lineSeparator ); a_FileOutputStream.write( new String( "" ).getBytes() ); a_FileOutputStream.write( lineSeparator ); a_FileOutputStream.write( new String( "" ).getBytes() ); a_FileOutputStream.write( lineSeparator ); a_FileOutputStream.write( new String( "" ).getBytes() ); a_FileOutputStream.write( lineSeparator ); a_FileOutputStream.write( new String( "" ).getBytes() ); a_FileOutputStream.write( lineSeparator ); a_FileOutputStream.write( new String( "" ).getBytes() ); a_FileOutputStream.write( lineSeparator ); a_FileOutputStream.write( new String( "" ).getBytes() ); a_FileOutputStream.write( lineSeparator ); a_FileOutputStream.write( new String( "" ).getBytes() ); a_FileOutputStream.write( lineSeparator ); a_FileOutputStream.write( new String( "" ).getBytes() ); a_FileOutputStream.write( lineSeparator ); Calendar a_Calendar = Calendar.getInstance(); a_FileOutputStream.write( new String( "" ).getBytes() ); a_FileOutputStream.write( lineSeparator ); a_FileOutputStream.write( new String( "" ).getBytes() ); a_FileOutputStream.write( lineSeparator ); a_FileOutputStream.write( new String( "" ).getBytes() ); a_FileOutputStream.write( lineSeparator ); a_FileOutputStream.write( new String( "" ).getBytes() ); a_FileOutputStream.write( lineSeparator ); a_FileOutputStream.write( new String( "Andy Turner's xhtml2.0 MoSeS " + filenamePrefix + " Page @ School of Geography, University of Leeds" ).getBytes() ); a_FileOutputStream.write( lineSeparator ); a_FileOutputStream.write( new String( "" ).getBytes() ); a_FileOutputStream.write( lineSeparator ); a_FileOutputStream.write( new String( "" ).getBytes() ); a_FileOutputStream.write( lineSeparator ); a_FileOutputStream.write( new String( "" ).getBytes() ); a_FileOutputStream.write( lineSeparator ); a_FileOutputStream.write( new String( "" ).getBytes() ); a_FileOutputStream.write( lineSeparator ); a_FileOutputStream.write( new String( "" ).getBytes() ); a_FileOutputStream.write( lineSeparator ); } public void writeHTMLDTD( byte[] lineSeparator, FileOutputStream a_FileOutputStream ) throws IOException { a_FileOutputStream.write( new String( "" ).getBytes() ); a_FileOutputStream.write( lineSeparator ); a_FileOutputStream.write( new String( "" ).getBytes() ); a_FileOutputStream.write( lineSeparator ); a_FileOutputStream.write( new String( "" ).getBytes() ); a_FileOutputStream.write( lineSeparator ); a_FileOutputStream.write( new String( "" ).getBytes() ); a_FileOutputStream.write( lineSeparator ); } }