stable mlp version
[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 D2 d2;
6   private Vector messages;
7     
8   public MessageList( D2 d2 ) { 
9     this.d2 = d2; 
10     messages=new Vector();
11   }
12
13   public Message data() {
14     Message m = (Message) messages.elementAt(0);
15     messages.removeElementAt(0);
16     return m;
17   }
18     
19   public Message next() {
20     return data();
21   }
22
23   public boolean hasNext() {
24     return messages.size() != 0;
25   }
26
27   //is true for DO_WORK
28   public boolean setMessage(String line) {      
29     if (line.equals(""))
30       return false;
31
32     //System.out.println("I'm reading line "+line);       
33
34     // treating comments
35     if ((line.charAt(0)=='/')&&(line.charAt(1)=='/'))
36       return false;
37
38     StringTokenizer st=new StringTokenizer(line);
39     int time=Integer.parseInt(st.nextToken());
40     String type=st.nextToken(); 
41     Message newMessage=new Message(d2,time,type,st);
42     messages.addElement(newMessage);
43     if (type.equals("DO_WORK"))
44       return true;
45     
46     return false;
47   }
48   
49   public void executeAll() {
50     //System.out.println("executeAll: we have "+messages.size()+" messages.");
51     while(hasNext())
52       next().executeMessage();     
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 }