1 |
package dk.thoerup.android.traininfo.common; |
2 |
|
3 |
import java.io.Serializable; |
4 |
import java.util.ArrayList; |
5 |
import java.util.List; |
6 |
|
7 |
|
8 |
import org.simpleframework.xml.Element; |
9 |
import org.simpleframework.xml.ElementList; |
10 |
import org.simpleframework.xml.Root; |
11 |
|
12 |
@Root(name="stations", strict=false) |
13 |
public class StationBean implements Serializable { |
14 |
|
15 |
|
16 |
@ElementList(inline=true, required=false) |
17 |
public List<StationEntry> entries = new ArrayList<StationEntry>(); |
18 |
|
19 |
@Root(name="station", strict=false) |
20 |
public static class StationEntry implements Serializable { |
21 |
|
22 |
@Element |
23 |
private int id; |
24 |
|
25 |
@Element |
26 |
private String name; |
27 |
|
28 |
@Element |
29 |
private double latitude; |
30 |
|
31 |
@Element |
32 |
private double longitude; |
33 |
|
34 |
@Element(name="regional") |
35 |
private boolean isRegional = false; |
36 |
private String regional = null; |
37 |
|
38 |
@Element(name="strain") |
39 |
private boolean isStrain = false; |
40 |
private String strain = null; |
41 |
|
42 |
@Element(name="metro") |
43 |
private boolean isMetro = false; |
44 |
private String metro = null; |
45 |
|
46 |
@Element |
47 |
private String address; |
48 |
|
49 |
@Element |
50 |
private int calcdist; |
51 |
|
52 |
@Element(required=false) |
53 |
private String aliases[]; |
54 |
|
55 |
|
56 |
public int getId() { |
57 |
return id; |
58 |
} |
59 |
public void setId(int id) { |
60 |
this.id = id; |
61 |
} |
62 |
public String getName() { |
63 |
return name; |
64 |
} |
65 |
public void setName(String name) { |
66 |
this.name = name; |
67 |
} |
68 |
public double getLatitude() { |
69 |
return latitude; |
70 |
} |
71 |
public void setLatitude(double latitude) { |
72 |
this.latitude = latitude; |
73 |
} |
74 |
public double getLongitude() { |
75 |
return longitude; |
76 |
} |
77 |
public void setLongitude(double longitude) { |
78 |
this.longitude = longitude; |
79 |
} |
80 |
public String getRegional() { |
81 |
return regional; |
82 |
} |
83 |
public void setRegional(String regional) { |
84 |
this.regional = regional; |
85 |
} |
86 |
|
87 |
public boolean isRegional() { |
88 |
return isRegional; |
89 |
} |
90 |
|
91 |
public void setIsRegional(boolean isRegional) { |
92 |
this.isRegional = isRegional; |
93 |
} |
94 |
|
95 |
public String getStrain() { |
96 |
return strain; |
97 |
} |
98 |
public void setStrain(String strain) { |
99 |
this.strain = strain; |
100 |
} |
101 |
|
102 |
public boolean isStrain() { |
103 |
return isStrain; |
104 |
} |
105 |
|
106 |
public void setIsStrain(boolean isStrain) { |
107 |
this.isStrain = isStrain; |
108 |
} |
109 |
|
110 |
|
111 |
public String getMetro() { |
112 |
return metro; |
113 |
} |
114 |
public void setMetro(String metro) { |
115 |
this.metro = metro; |
116 |
} |
117 |
|
118 |
public boolean isMetro() { |
119 |
return isMetro; |
120 |
} |
121 |
|
122 |
public void setIsMetro(boolean isMetro) { |
123 |
this.isMetro = isMetro; |
124 |
} |
125 |
|
126 |
|
127 |
public String getAddress() { |
128 |
return address; |
129 |
} |
130 |
public void setAddress(String address) { |
131 |
this.address = address; |
132 |
} |
133 |
public int getCalcdist() { |
134 |
return calcdist; |
135 |
} |
136 |
public void setCalcdist(int calcdist) { |
137 |
this.calcdist = calcdist; |
138 |
} |
139 |
|
140 |
public void setAliases(String aliases[]) { |
141 |
this.aliases = aliases; |
142 |
} |
143 |
|
144 |
public String[] getAliases() { |
145 |
return aliases; |
146 |
} |
147 |
|
148 |
|
149 |
////////////////////////////////////////// |
150 |
|
151 |
public String toCSV() { |
152 |
StringBuilder sb = new StringBuilder(); |
153 |
|
154 |
sb.append(id).append(";"); |
155 |
sb.append(name).append(";"); |
156 |
sb.append(latitude).append(";"); |
157 |
sb.append(longitude).append(";"); |
158 |
sb.append(calcdist).append(";"); |
159 |
sb.append(address).append(";"); |
160 |
sb.append(isRegional).append(";"); |
161 |
sb.append(isStrain).append(";"); |
162 |
sb.append(isMetro).append(";"); |
163 |
|
164 |
return sb.toString(); |
165 |
} |
166 |
|
167 |
public static StationEntry fromCSV(String csv) { |
168 |
String parts[] = csv.split(";"); |
169 |
|
170 |
StationEntry st = new StationEntry(); |
171 |
|
172 |
st.id = Integer.parseInt( parts[0] ); |
173 |
st.name = parts[1]; |
174 |
st.latitude = Double.parseDouble(parts[2]); |
175 |
st.longitude = Double.parseDouble(parts[3]); |
176 |
st.calcdist = Integer.parseInt(parts[4]); |
177 |
st.address = parts[5]; |
178 |
st.isRegional = Boolean.parseBoolean(parts[6]); |
179 |
st.isStrain = Boolean.parseBoolean(parts[7]); |
180 |
st.isMetro = Boolean.parseBoolean(parts[8]); |
181 |
|
182 |
return st; |
183 |
|
184 |
} |
185 |
|
186 |
} |
187 |
|
188 |
} |