-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathmain.py
67 lines (57 loc) · 2.03 KB
/
main.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
from fastapi import FastAPI
from fastapi_cache import FastAPICache
from fastapi_cache.decorator import cache
from fastapi_cache.backends.inmemory import InMemoryBackend
import uvicorn
app = FastAPI()
FastAPICache.init(InMemoryBackend())
cities = {}
@app.get("/")
def return_cities():
return {
"api_version": "1.0",
"server_version": "1.0.0",
"reference": "https://github.com/offenesdresden/ParkAPI",
"cities": {cities[city].get_id(): {
"active_support": False,
"attribution": None,
"source": "",
"url": "",
"coords": {"lat": 0, "lng": 0},
"name": city
} for city in cities}
}
@app.get("/{cityId}")
@cache(expire=120)
def return_city(cityId: str):
for city in cities:
if cities[city].get_id() == cityId:
cities[city].load_parking_lots()
return cities[city].to_dict()
return {"error": "City not found"}
from cities.city_kranj import CityKranj
from cities.city_trbovlje import CityTrbovlje
from cities.city_sevnica import CitySevnica
from cities.city_kostanjevica_na_krki import CityKostanjevicaNaKrki
from cities.city_sostanj import CitySostanj
from cities.city_radece import CityRadece
from cities.city_mirna_pec import CityMirnaPec
from cities.city_straza import CityStraza
from cities.city_trebnje import CityTrebnje
from cities.city_velenje import CityVelenje
from cities.city_celje import CityCelje
from cities.city_trzic import CityTrzic
if __name__ == "__main__":
cities['Kranj'] = CityKranj()
cities['Trbovlje'] = CityTrbovlje()
cities['Sevnica'] = CitySevnica()
cities['Kostanjevica Na Krki'] = CityKostanjevicaNaKrki()
cities['Sostanj'] = CitySostanj()
cities['Radeče'] = CityRadece()
cities['Mirna Peč'] = CityMirnaPec()
cities['Straža'] = CityStraza()
cities['Trebnje'] = CityTrebnje()
cities['Velenje'] = CityVelenje()
cities['Celje'] = CityCelje()
cities['Tržič'] = CityTrzic()
uvicorn.run(app, port=16000, host="0.0.0.0")