private void _resolveOverflowStart(int index) { assert _stations != null; assert index >= 0; assert index < _stations.size(); Station station = _stations.get(index); station.setOverflowStart(true); if (station.hasNext() && station.getNext().isDisabled()) { // If next stop is disabled, so is the overflow station.setDisabled(true); } station.setPrevious(null); }
private void _resolveStandard() { if (_stations.size() > 1) { Iterator<Station> iterator = _stations.iterator(); Station previous = null; Station current = iterator.next(); Station next = iterator.next(); _updateStation(current, previous, next); while (iterator.hasNext()) { previous = current; current = next; next = iterator.next(); _updateStation(current, previous, next); } next.setPrevious(current); } }
private void _updateStation(Station current, Station previous, Station next) { current.setPrevious(previous); current.setNext(next); }