137 |
bean.setArrival( fields.get(1).asText() ); |
bean.setArrival( fields.get(1).asText() ); |
138 |
bean.setDeparture( fields.get(2).asText() ); |
bean.setDeparture( fields.get(2).asText() ); |
139 |
|
|
140 |
|
boolean cancelled = fields.get(3).asText().equalsIgnoreCase("aflyst"); |
141 |
|
bean.setCancelled(cancelled); |
142 |
|
|
143 |
if (currentStation == true && currentStationSaved == false ) { |
if (currentStation == true && currentStationSaved == false ) { |
144 |
bean.setCurrent(currentStation); |
bean.setCurrent(currentStation); |
145 |
currentStationSaved = true; |
currentStationSaved = true; |
148 |
bean.setStationId( getStationId( station )); |
bean.setStationId( getStationId( station )); |
149 |
|
|
150 |
timetableList.add(bean); |
timetableList.add(bean); |
151 |
|
} |
152 |
|
|
153 |
|
//TODO: There is an off-by-one error in this cancelled parser thingie |
154 |
|
final String cancelledString = "Aflyst"; |
155 |
|
for (int i=0;i<timetableList.size(); i++) { //handle cancelled labels |
156 |
|
final int lastIdx = (timetableList.size() - 1); |
157 |
|
|
158 |
|
TimetableBean current = timetableList.get(i); |
159 |
|
if (current.isCancelled()) { |
160 |
|
if (i == 0) { |
161 |
|
current.setDeparture(cancelledString); |
162 |
|
} else if (i == lastIdx) { |
163 |
|
current.setArrival(cancelledString); |
164 |
|
} else if (i>0 && i<lastIdx) { |
165 |
|
TimetableBean next = timetableList.get(i+1); |
166 |
|
TimetableBean prev = timetableList.get(i-1); |
167 |
|
|
168 |
|
if (next.isCancelled()) |
169 |
|
current.setDeparture(cancelledString); |
170 |
|
if (prev.isCancelled()) |
171 |
|
current.setArrival(cancelledString); |
172 |
|
} |
173 |
|
} |
174 |
} |
} |
175 |
|
|
176 |
} else { |
} else { |