25 lines
652 B
Python
25 lines
652 B
Python
from dataclasses import dataclass, field
|
|
from enum import StrEnum
|
|
|
|
|
|
@dataclass
|
|
class POI:
|
|
id: str
|
|
type: str
|
|
poi_type: str
|
|
lat: float
|
|
lon: float
|
|
tags: dict = field(default_factory=dict) # weil mutable defaults in Dataclasses eine bekannte Python-Falle sind
|
|
# (alle Instanzen würden dasselbe Dict teilen...)
|
|
|
|
|
|
# REMARK:
|
|
# Wann eine eigene Dataclass für tags?
|
|
# Nur wenn die tags strukturiert und vorhersehbar sind, was bei OSM-Daten nicht der Fall ist...
|
|
|
|
|
|
class FetchMode(StrEnum):
|
|
SERIAL = "seriell"
|
|
CONCURRENT = "concurrent"
|
|
LOCKED = "concurrent (locked)"
|