3 * Main class of Tagger application
\r
5 * @author Daniel Jackson
\r
6 * @version 0, 07/02/01
\r
12 //import java.util.*;
\r
14 public class Tagger {
\r
16 // holds mapping of token types to actions
\r
20 * The main method of the Tagger application.
\r
21 * @param args The command line arguments, described in usage method
\r
23 public static void main (String[] args) {
\r
26 String base_name = args[0];
\r
27 String source_file_name = base_name + ".txt";
\r
28 String output_file_name = base_name + ".tag.txt";
\r
29 String index_file_name = base_name + ".index.txt";
\r
30 FileInputStream input_stream;
\r
31 FileOutputStream output_stream;
\r
32 FileOutputStream index_stream;
\r
35 input_stream = new FileInputStream(source_file_name);
\r
36 output_stream = new FileOutputStream(output_file_name);
\r
37 index_stream = new FileOutputStream(index_file_name);
\r
39 // for now, hardwire to Quark
\r
40 Generator generator = new QuarkGenerator (output_stream);
\r
42 PropertyMap style_map = new PropertyMap ();
\r
43 Engine engine = new StandardEngine (generator, style_map, index_stream);
\r
45 //consume_source (engine, style_map, input_stream);
\r
47 output_stream.close ();
\r
50 public static void consume_source (Engine engine,
\r
51 PropertyMap style_map,
\r
52 FileInputStream source_reader) {
\r
53 HashSet para_styles = style_map.get_items ();
\r
54 SourceParser p = new SourceParser (source_reader, para_styles);
\r
56 while (p.has_more_tokens ()) {
\r
57 token = p.get_token ();
\r
58 String s = token.toString();
\r
60 System.out.println( "token: [null]" );
\r
62 System.out.println( "token: ["+s+"]" );
\r
64 engine.consume_token (token);
\r
66 // consume end of stream token explicitly
\r
67 // depends on get_token returning ENDOFSTREAM token when no more tokens
\r
68 token = p.get_token ();
\r
69 engine.consume_token (token);
\r
72 static void check_usage (String args []) {
\r
73 if (args.length == 0) {
\r
74 System.out.println ("one argument required, should be name of source file, excluding .txt extension");
\r