import java.util.*; import java.io.*; public class Database implements Serializable { TTtable TTtab; TAtable TAtab; RRtable RRtab; final int numtables = 3; public TableSeqListType[] TableSeqList; public int FindTblIdx(String keybuf) { int retval = -1; for( int i = 0; i < TableSeqList.length; i++ ) { if( keybuf.substring(0, Key.abbsize).compareTo(TableSeqList[i].getAbbrev()) == 0 ) { retval = i; break; } } return retval; } public String FindTblAbbr(int idx) { if( idx < 0 || idx > TableSeqList.length ) return null; return TableSeqList[idx].getAbbrev(); } public Database() { TTtab = new TTtable(this); TAtab = new TAtable(this); RRtab = new RRtable(this); TableSeqList = new TableSeqListType[numtables]; TableSeqList[0] = new TableSeqListType( TTtab.getAbbrev() ); TableSeqList[1] = new TableSeqListType( TAtab.getAbbrev() ); TableSeqList[2] = new TableSeqListType( RRtab.getAbbrev() ); } public static void main(String args[]) { Database theSchema = new Database(); TTtable theTable = theSchema.TTtab; TT row1 = new TT(); row1.setSVid("SV010001"); row1.setTTabb("EM"); row1.setTTname("empty"); row1.setDescr("/* EM - Empty table for testing only */"); theTable.insertRow(row1); TT row2 = new TT(); row2.setSVid("SV010001"); row2.setTTabb("ON"); row2.setTTname("onerow"); row2.setDescr("/* ON - table containing only one row for testing only */"); theTable.insertRow(row2); TT row3 = new TT(); row3.setSVid("SV010001"); row3.setTTabb("DE"); row3.setTTname("DEPT"); row3.setDescr("/* DE - University Department */"); theTable.insertRow(row3); TT row4 = new TT(); row4.setSVid("SV010001"); row4.setTTabb("CO"); row4.setTTname("course"); row4.setDescr("/* CO - Course information */"); theTable.insertRow(row4); TT row5 = new TT(); row5.setSVid("SV010001"); row5.setTTabb("PR"); row5.setTTname("prereq"); row5.setDescr("/* PQ - Prerequisite */"); theTable.insertRow(row5); try { BufferedWriter stdout = new BufferedWriter ( new OutputStreamWriter(System.out) ); BufferedWriter fileout = new BufferedWriter ( new FileWriter( "output.txt" ) ); theTable.dumpTable( stdout ); theTable.dumpTable( fileout ); } catch( IOException e ) { System.err.println( e.getMessage() ); } // for( TT curr = theTable.getFirstRow(); // curr != null; // curr = theTable.getNextRow(curr)) { // System.out.println(curr); // } } }