Source code: diagapplet/CodeGen/ServerInfo.java
1
2 package diagapplet.CodeGen;
3
4
5 import java.util.*;
6
7
8 public class ServerInfo
9 {
10 public String Name=null;
11 public String Info=null;
12 public String Host=null;
13 public Vector bufferNames=null;
14 public int id = 0;
15 static public int count = 0;
16
17 public String toString()
18 {
19 String str = super.toString()+" ServerInfo: { Name="+Name+", Info="+Info+", Host = "+Host+", id="+id+", count="+count+", bufferNames = [";
20 if(null == bufferNames)
21 {
22 str += "null";
23 }
24 else
25 {
26 for(int i = 0; i < bufferNames.size() ; i++)
27 {
28 str += ((String) bufferNames.elementAt(i));
29 if(i < bufferNames.size() - 1)
30 {
31 str += ", ";
32 }
33 }
34 }
35 str += "] } ";
36 return str;
37 }
38
39 public ServerInfo(String _name, String _info)
40 {
41 count++;
42 id = count;
43 Name = _name;
44 Info = _info;
45 bufferNames = new Vector();
46 ParseInfo();
47 }
48
49 protected void ParseInfo()
50 {
51 try
52 {
53 StringTokenizer lineTokenizer = new StringTokenizer(Info, "\r\n;");
54 while(lineTokenizer.hasMoreTokens())
55 {
56 String line = lineTokenizer.nextToken();
57 if(line == null)
58 {
59 break;
60 }
61 if(line.length() < 2)
62 {
63 continue;
64 }
65 int eq_index = line.indexOf('=');
66 if(eq_index < 0 || eq_index >= line.length())
67 {
68 continue;
69 }
70 String var = line.substring(0,eq_index);
71 String val = line.substring(eq_index+1);
72 SetValue(var, val);
73 }
74 }
75 catch(Exception e)
76 {
77 e.printStackTrace();
78 }
79 }
80
81 protected void SetValue(String var, String val)
82 {
83 try
84 {
85 if(null == var || null == val)
86 {
87 return;
88 }
89 if(var.length() < 1 || val.length() < 1)
90 {
91 return;
92 }
93 char varc = var.charAt(0);
94 while(varc == ' ' || varc == '\t' || varc == '\r' || varc == '\n' || varc == '\b')
95 {
96 var = var.substring(1);
97 varc = var.charAt(0);
98 if(var.length() < 1)
99 {
100 return;
101 }
102 }
103 char valc = val.charAt(0);
104 while(valc == ' ' || valc == '\t' || valc == '\r' || valc == '\n' || valc == '\b' || valc == '"')
105 {
106 val = val.substring(1);
107 valc = val.charAt(0);
108 if(val.length() < 1)
109 {
110 return;
111 }
112 }
113 valc = val.charAt(val.length()-1);
114 while(valc == ' ' || valc == '\t' || valc == '\r' || valc == '\n' || valc == '\b' || valc == '"')
115 {
116 val = val.substring(0,val.length()-1);
117 valc = val.charAt(val.length()-1);
118 if(val.length() < 1)
119 {
120 return;
121 }
122 }
123 if(var.length() < 1 || val.length() < 1)
124 {
125 return;
126 }
127 var = var.toUpperCase();
128 if(var.startsWith("HOST"))
129 {
130 Host = val;
131 }
132 else if(var.startsWith("BUF"))
133 {
134 if(null == bufferNames)
135 {
136 bufferNames = new Vector();
137 }
138 bufferNames.addElement(val);
139 }
140 }
141 catch(Exception e)
142 {
143 e.printStackTrace();
144 }
145 }
146
147 }