1
2 package jsdsi.sexp;
3
4 import java.io.ByteArrayInputStream;
5 import java.io.ByteArrayOutputStream;
6 import java.io.EOFException;
7 import java.io.FileInputStream;
8 import java.io.ObjectInputStream;
9 import java.io.ObjectOutputStream;
10
11 import jsdsi.Obj;
12
13 /***
14 * Parses S-expressions into SPKI/SDSI objects.
15 *
16 * @author Sameer Ajmani
17 * @version $Revision: 1.1.6.1 $ $Date: 2005/11/08 03:12:52 $
18 */
19 public class Parser {
20 public static void main(String[] args) throws Exception {
21 if (args.length < 1) {
22 System.err.println("usage: java Parser input-file");
23 return;
24 }
25 ObjInputStream is = new ObjInputStream(new FileInputStream(args[0]));
26 ObjOutputStream os = new ObjOutputStream(System.out);
27
28 int i = 0;
29 try {
30 while (true) {
31 Obj o = is.readObj();
32 //+debug
33 ByteArrayOutputStream bos = new ByteArrayOutputStream();
34 ObjectOutputStream oos = new ObjectOutputStream(bos);
35 Sexp s = o.toSexp();
36 oos.writeObject(s);
37 oos.flush();
38 s =
39 (Sexp) (new ObjectInputStream(new ByteArrayInputStream(bos
40 .toByteArray())))
41 .readObject();
42 //-debug
43 os.writeReadable(o, 0, 76, 0);
44 os.write('\n');
45 i++;
46 }
47 } catch (SexpParseException e) {
48 System.err.println("sexp #" + i);
49 throw e;
50 } catch (EOFException e) {
51 os.flush();
52 System.err.println("done");
53 }
54 }
55 }
This page was automatically generated by Maven