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