Spaces:
Sleeping
Sleeping
from abc import ABC, abstractmethod | |
from typing import Dict, Any, Optional | |
class BaseAPISource(ABC): | |
"""Classe de base abstraite pour toutes les sources d'API externes.""" | |
def __init__(self, base_url: str, timeout: int = 30): | |
self.base_url = base_url.rstrip('/') | |
self.timeout = timeout | |
async def get_parcel_from_lat_lon(self, latitude: float, longitude: float) -> Dict[str, Any]: | |
""" | |
Récupère les informations de parcelle à partir des coordonnées GPS. | |
Args: | |
latitude: Latitude en degrés décimaux | |
longitude: Longitude en degrés décimaux | |
Returns: | |
Dict contenant les données de la parcelle | |
""" | |
pass | |
def _build_url(self, endpoint: str) -> str: | |
"""Construit l'URL complète à partir du base_url et de l'endpoint.""" | |
return f"{self.base_url}/{endpoint.lstrip('/')}" |