def _get_station_by_id(request, output): resource_id_split = request.resource.split('/') if resource_id_split[-1].isdigit(): station_id = int(resource_id_split[-1]) model = BySykkelModel.Source(BySykkelConfig.OnlineGBFS, BySykkelConfig.OnlineClientID) model.update(BySykkelModel.GPSLocation.parse(request.params.gps)) if (station_id in model.info.keys()): return model.info[station_id].format(output.station_format()) return output.error("Invalid station id:" + resource_id_split[-1])
def _get_all_stations(request, output): model = BySykkelModel.Source(BySykkelConfig.OnlineGBFS, BySykkelConfig.OnlineClientID) model.update(BySykkelModel.GPSLocation.parse(request.params.gps)) result = output.list_prefix() view = model.status if request.params.top != 0: view = model.status[0:request.params.top] for value in view: if value.bikes >= request.params.bikes: if value.docks >= request.params.docks: if (len(result) > len(output.list_prefix())): result += output.list_separator() result += value.format(output.station_format()) result += output.list_suffix() return result
def setUp(self): self.source = BySykkelModel.Source(BySykkelConfig.OfflineGBFS, "") updated = self.source.update(self.gps_loc)