Inhaltsverzeichnis
Die Art, wie und woher Kartenkacheln heruntergeladen und wie resp. wohin sie gecacht werden, als auch die unterstützten Anzeige-Optionen werden alle in einer einfachen Java-Properties-Datei festgelegt. Dies ist die Datei, welche von diesem FileHandler behandelt wird.
Die enthaltenen Properties sind gruppiert in generelle Einstellungen, welche zum Teil über das GUI manipuliert werden können, und in das Setup von Kartendiensten mit ihren jeweiligen Caching-Strategien.
Die Properties für die generellen Einstellungen haben alle einen "Setting." Präfix und diese werden für alle Setups verwendet. Dann gibt es noch eine kommaseparierte Liste von Setup-Namen im "SetupNames" Property, worauf das "SetupName" Property verweist, um das aktive Setup festzulegen. Die Konfiguration jedes Setups ist dann in den Properties mit dem Präfix "Setups.[setupName].".
In jeder dieser Gruppen für ein spezifisches Setup legt das "Provider" Property den Dienst fest, welcher für den Zugriff auf die Kacheln verwendet werden soll. Die möglichen Providertypen sind:
ArcGIS
BingMaps
CacheFile
CacheMemory
GoogleMaps
Offline
OpenStreetMap
YandexMaps
Die beiden Caching-Providertypen sind jedoch speziell: Sie haben beide jeweils ein "Provider" Unter-Property und unterstützen dadurch den Aufbau von Providerketten. Ein Beispiel wäre ein CacheMemory-Provider, der Kacheln im Arbeitsspeicher cacht, welche von einem CacheFile-Provider zunächst in einem lokalen Verzeichnis gesucht werden, bevor er sie ultimativ von einem der URL-basierten Provider (GoogleMaps, etc.) über den entsprechenden Internet-Dienst anfordert:
MapViewerGUI <= CacheMemory <= CacheFile <= GoogleMaps
Ein anderes Beispiel könnte die gleiche Caching-Kette sein, jedoch mit einem Offline-Provider am Ende der Kette. Dies könnte dann verwendet werden, um auf ein lokales Kachel-Repository zuzugreifen, ohne Netzwerkverkehr zu verursachen:
MapViewerGUI <= CacheMemory <= CacheFile <= Offline
Gibt es ein "Provider" Property ohne einen Setup Präfix, so hat dies Vorrang gegenüber allen konfigurierten Setups. Dies verhält sich dann, als wären keine Setup-Namen konfiguriert und entsprechend wird kein weiterer Präfix verwendet um die Provider Properties zu suchen.