investigating OOPSLA benchmarks further
[IRC.git] / Robust / src / Benchmarks / mlp / directto / mlp-java / MessageList.java
1 //import java.io.*;
2 //import java.util.*;
3
4 public class MessageList {
5   private Vector messages;
6     
7   public MessageList() { 
8     messages=new Vector();
9   }
10
11   public Message data() {
12     Message m = (Message) messages.elementAt(0);
13     return m;
14   }
15     
16   public Message next() {
17     Message m = (Message) messages.elementAt(0);
18     messages.removeElementAt(0);
19     return m;
20   }
21
22   public boolean hasNext() {
23     return messages.size() != 0;
24   }
25
26   //is true for DO_WORK
27   public boolean setMessage(String line) {      
28     if (line.equals(""))
29       return false;
30
31     System.out.println("I'm reading line "+line);       
32
33     // treating comments
34     if ((line.charAt(0)=='/')&&(line.charAt(1)=='/'))
35       return false;
36
37     StringTokenizer st=new StringTokenizer(line);
38     int time=Integer.parseInt(st.nextToken());
39     String type=st.nextToken(); 
40     Message newMessage=disjoint msgs new Message(time,type,st);
41     messages.addElement(newMessage);
42     if (type.equals("DO_WORK"))
43       return true;
44     
45     return false;
46   }
47   
48   public void executeAll(D2 d2) {
49     System.out.println("executeAll: we have "+messages.size()+" messages.");
50     while(hasNext())
51       next().executeMessage(d2);     
52
53     d2.getStatic().printInfo();
54     d2.getFixList().printInfo();
55     d2.getAircraftList().printInfo();   
56     d2.getFlightList().printInfo();
57     System.out.println("Messages executed\n\n\n\n\n");
58   }
59 }