import { useEffect } from "react"; import { fetchGisStationsMeasurements } from "../services/api/fetchGisStationsMeasurements"; export const useUpdateGmaData = (map, setGisStationsMeasurements, mapGisStationsMeasurementsUrl, gmaMarkers, layers, oms) => { useEffect(() => { if (!map) return; // Sicherstellen, dass die Karte initialisiert ist const updateGmaData = async () => { try { const fetchOptions = { method: "GET", headers: { Connection: "close", }, }; // Aktualisiere die Messdaten await fetchGisStationsMeasurements(mapGisStationsMeasurementsUrl, setGisStationsMeasurements, fetchOptions); // Aktualisiere die Marker-Layer // useGmaMarkersLayer(map, gmaMarkers, GisStationsMeasurements, layers.MAP_LAYERS.GMA, oms); } catch (error) { console.error("Fehler beim Aktualisieren der GMA-Daten:", error); } }; // Initialer Datenabruf updateGmaData(); // Intervall für periodische Updates (optional einkommentieren) /* const intervalId = setInterval(() => { updateGmaData(); }, 5000); return () => clearInterval(intervalId); */ }, [map, gmaMarkers, layers.MAP_LAYERS.GMA, oms, mapGisStationsMeasurementsUrl, setGisStationsMeasurements]); };